# stm32f0-uart-dma **Repository Path**: ianmgithub/stm32f0-uart-dma ## Basic Information - **Project Name**: stm32f0-uart-dma - **Description**: STM32串口DMA模式发送&接收实现,高速串口通信(1.5Mbps)不丢数据 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 4 - **Created**: 2021-11-15 - **Last Updated**: 2024-10-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # STM32高速串口通信DMA收发实现
## 测试平台 * STM32F030C8T6 * UART1/UART2 * DMA1 Channel2—Channel5 * ST标准库 * 主频48MHz(外部12MHz晶振)
## 实现功能 * 收/发环形缓冲区 * 不定长度接收处理 * 高速(1.5Mbps)通信不丢数据
## 关键实现 ### DMA发送模式 * 线程循环查询发送环形缓冲区数据,然后启动MDA传输 * DMA传输完成中断,连续发送 * 定时器中断周期发送
### DMA接收模式 * DMA缓存半满中断(如CPU硬件支持,可使用DMA双缓存机制) * DMA缓存传输完成中断 * 串口空闲中断实现
## 其他 更详细的描述过程参考文章[一个严谨的STM32串口DMA发送&接收(1.5Mbps波特率)机制](https://blog.csdn.net/qq_20553613/article/details/108367512)