logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

USB学习(1):USB基础之接口类型、协议标准、引脚分布、架构、时序和数据格式

连接计算机外围设备最简单的方法是通过USB(通用串行总线USB是即插即用接口,可以将扫描仪、打印机、数码相机、闪存驱动器等计算机外围设备连接到计算机上。本篇文章就来介绍一下USB的一些基础知识。

文章图片
#学习
ARM基础(4):L1 Cache之I-Cache和D-cache详解

在上一篇文章中,我介绍了MPU,我们知道MPU允许按区域修改一级Cache的属性,这个Cache一般为L1 Cache,它位于CPU的内部,用来加快指令和数据的访问速度。同时,CPU在处理共享数据时需要确保CPU和主存之间的数据一致性。这篇文章就来详细介绍一下L1 Cache的概念和用法。

文章图片
#缓存
时序图基础知识

这篇文章简单地介绍了一下时序图的基础知识,但如果我们现在打开一个芯片手册中的时序图,我们会发现还是读不懂,因为实际比这些复杂多了,我们就需要理解手册中每一个时序参数的含义,然后再来分析时序图。

文章图片
#硬件工程
BLE学习(2):广播包报文格式详解

为了能够充分理解蓝牙的广播,我们先了解一下BLE架构的GAP()层。在一个BLE设备中GAP可以实现:发现蓝牙设备和广播报文并连接、广播并接受连接、发送广播报文、发现蓝牙设备和广播报文但不连接(仅扫描)。对于连接模式而言,两个设备之间可以双向传输数据;对于一个正在广播中的设备而言,无法接收数据(但有一个例外:可以回复报文)。

#网络协议
ARM基础(6):内存屏障指令之DMB、DSB和ISB详解

本文详细说明了DMB、DSB和ISB三个指令的含义和使用时机。但大多数简单处理器不会对内存传输进行重新排序,因此,体系结构的需求和处理器的实现需求是不同的。例如,大多数应用程序可以在现有的Cortex-M处理器上正确运行,而无需使用任何内存屏障指令。

文章图片
#arm开发
LVGL学习(1):中文字体的转换和汉字显示

在使用LVGL的过程中,我们难免需要显示汉字,所以这篇文章就来介绍一下如何转换中文汉字并成功显示到LVGL中。

文章图片
#ui
AES加密(1):AES基础知识和计算过程

AES加密算法(也称为Rijndael算法)是一种对称分块密码算法,以块为单位对数据进行加密,一个块的大小为128位。而AES的密钥则可以为128、192和256位。不同的密钥长度对应着不同的加密轮数:128位为10轮、192位为12轮、256位为14轮。AES基于替代-置换网络,也称为SP网络。它由一系列链接操作组成,包括将输入替换为特定的输出(替代)以及涉及位排序(置换)的其他操作。SP网络:

文章图片
#安全#算法
LVGL学习(5):物理按键切换焦点之焦点保存和恢复

本文实现了页面中焦点的保存和恢复,了解了LVGL中对于对象及焦点的保存。而在我写博客的过程中,又想到一个方案:在每一个界面创建时都创建一个group,并设置为默认组,然后在删除界面时删除这个group。最后我们需要在每次创建或切换界面的同时,调用来修改输入设备所对应的group。这种方式似乎比我上面实现的方式要更简洁高效。所以啊,办法都是想出来的,遇到了问题还是可以全方位地思考一下所有可能的解决方

#ui
单片机(STM32,GD32,NXP等)中BootLoader的严谨实现详解

Bootloader的主要任务是引导加载并运行应用程序,我们的软件升级逻辑也一般在BootLoader中实现。本文将详细介绍BootLoader在单片机中的实现,包括STM32、GD32、NXP Kinetis等等的所有单片机,因为无论是什么样的芯片,它实现的逻辑都是一样的。

文章图片
#单片机#stm32
GPIO模式详解:推挽/开漏/浮空/上拉/下拉/施密特(迟滞)输入

一个GPIO引脚主要有两个缓冲区,即输入和输出。输入和输出由使能引脚ENABLE控制:每个输入/输出缓冲区都有一个PMOS和NMOS晶体管以及一个非门。

文章图片
#单片机#嵌入式硬件
暂无文章信息