初版BL程序一些细节整理(碎碎念)

一.串口的中断触发

一般我们都是使用TXE或者RXNE来触发中断,其实还有完整传输结束的TC标志位和接收完成的IDLE标志位

这两个标志位有些不同,RXNE标志位只需要读取寄存器就会自行清除,但是这两个需要读取两个,拿IDLE举例子

这里需要这么写,才能清理标志位

二.关于DMA提前人为中断

如果手动disable了DMA,那么TCIF标志位会立马挂起

但是如果不清除该标志位,DMA就无法启动

所以我们再配置好DMA后,启动前,要清理标志位,1,2两种清理方式,任意一种都行

相关推荐
切糕师学AI27 分钟前
节拍定时器是什么?
单片机·嵌入式硬件
切糕师学AI1 小时前
影子栈指针是什么?
嵌入式硬件·计算机体系结构
网易独家音乐人Mike Zhou1 小时前
【无人机】MavLink通讯协议的回调解析函数及状态机
单片机·mcu·物联网·嵌入式·无人机·iot
小何~~3 小时前
基于 STM32 和 MPU6050 的三轴倾斜角度传感器设计与实现
stm32·单片机·嵌入式硬件·mpu6050·倾斜角度传感器
君鼎4 小时前
音视频——I2S 协议详解
嵌入式硬件·音视频
情意绵绵6745 小时前
VAS1086Q 奇力科技线性芯片车规用品LED驱动芯片
单片机·嵌入式硬件·汽车·硬件架构·硬件工程
小柯博客11 小时前
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(十二)
c语言·stm32·单片机·嵌入式硬件·php·嵌入式
SY师弟13 小时前
51单片机基础部分——独立按键检测
单片机·嵌入式硬件·51单片机
Mapleay14 小时前
FMC STM32H7 SDRAM
stm32·单片机·嵌入式硬件