初版BL程序一些细节整理(碎碎念)
一.串口的中断触发
一般我们都是使用TXE或者RXNE来触发中断,其实还有完整传输结束的TC标志位和接收完成的IDLE标志位
这两个标志位有些不同,RXNE标志位只需要读取寄存器就会自行清除,但是这两个需要读取两个,拿IDLE举例子
这里需要这么写,才能清理标志位
二.关于DMA提前人为中断
如果手动disable了DMA,那么TCIF标志位会立马挂起
但是如果不清除该标志位,DMA就无法启动
所以我们再配置好DMA后,启动前,要清理标志位,1,2两种清理方式,任意一种都行