
【STM32】标准库USART DMA收发数据 串口空闲仿printf发送 双缓冲
5星
- 浏览量: 0
- 大小:None
- 文件类型:ZIP
简介:
本教程详解了如何使用STM32标准库实现USART与DMA的数据传输,并介绍了串口空闲时类似printf的发送方式及双缓冲技术。
采用STM32F429IGT6单片机与Keil MDK 5.32版本进行开发。使用SysTick系统滴答定时器实现延时功能,并通过配置LED_R、LED_G、LED_B分别连接到PH10, PH11, PH12引脚来控制它们的状态。
USART1的设置为:波特率设为115200,无校验位和一位停止位。PA9作为TX端口,而PA10则用作RX端口,并启用了TC(传输完成)中断与IDLE(空闲状态)中断功能,在串口中断触发时进行数据处理。
为了实现类似printf的发送方式及DMA式的数据收发机制,当USART1接收到有效字符后会通过其空闲中断来重新设置DMA剩余传输数量寄存器中的值以确保下次接收操作从缓冲区的第一个字节开始,并且更新了目标存储位置。此外还加入了CRC校验功能,具体使用的是CRC-32(Ethernet)多项式:0x4C11DB7。
在KEIL5的下载配置中包括了FLASH和SRAM的相关设置。
全部评论 (0)
还没有任何评论哟~


