Skip to content

Prry/stm32-uart-dma

Repository files navigation

STM32高速串口通信DMA收发实现


测试平台

平台 主频 BSP库 串口
STM32F030C8T6 48MHz 标准库 UART1、UART2
STM32F103ZET6 72MHz 标准库 UART1、UART2
STM32H743XIH6 400MHz HAL/LL库 UART5
STM32F407VCT6 168MHz HAL/LL库 UART1

实现功能

  • 收/发环形缓冲区
  • 不定长度接收处理
  • 高速(1.5Mbps)通信不丢数据

关键实现

DMA发送模式

  • 线程循环查询发送环形缓冲区数据,然后启动MDA传输

  • DMA传输完成中断,连续发送

  • 定时器中断周期发送


DMA接收模式

  • DMA缓存半满中断(如CPU硬件支持,可使用DMA双缓存机制)
  • DMA缓存传输完成中断
  • 串口空闲中断实现

其他

更详细的描述过程参考文章一个严谨的STM32串口DMA发送&接收(1.5Mbps波特率)机制

About

STM32串口DMA模式发送&接收实现,高速串口通信(1.5Mbps)不丢数据

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy