欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

AT32F415 USART1、2、3,DMA收发,详细代码注解

程序员文章站 2024-02-22 11:34:05
...

AT32F415 USART1、2、3,DMA收发

1、串口1,2,3的收发原理都是一样的, 所以配置上都可以一起来,不同的地方再用指针引用。
2、程序基本流程串口配置,DMA配置,接收时用空闲中断,发送时用发送中断来关闭DMA.
(打开DMA后,串口的收发完成中断会对接到DMA的传输完成中断)
3、串口缓存和DMA缓存用两个独立,防止接收时有冲突。
4、接收时看空闲中断信号,有信号说明接收完了,把数据拿出来,DMA读数清零来重新接收,状态改为接收完成
5、发送时要手动开启DMA传输,传输完成后会产生串口中断,有中断后就关闭DMA

配置

串口配置

//串口编号
typedef enum {
	serial=0,
	Bluetooth,
	IrDA,
	serialCount,
}serialNum_e;
//统一缓冲格式:状态,