[STM32G0] 用DMA发USART怎么有时候卡住不发?

[复制链接]
499|18
 楼主| 公羊子丹 发表于 2025-4-24 07:17 | 显示全部楼层 |阅读模式
用的是循环缓冲区,理论上应该不卡啊,是不是哪里没清中断标志?
Clyde011 发表于 2025-4-24 07:24 | 显示全部楼层
DMA是不是不小心被别的外设占用了?
 楼主| 公羊子丹 发表于 2025-4-24 07:25 | 显示全部楼层
我也遇到过,后来发现是TC标志没清。
周半梅 发表于 2025-4-24 07:26 | 显示全部楼层
是不是和NVIC优先级也有点关系?
帛灿灿 发表于 2025-4-24 07:27 | 显示全部楼层
有没有用到缓存?是不是cache没同步?
童雨竹 发表于 2025-4-24 07:28 | 显示全部楼层
看看是不是DMA没关掉自动循环。
万图 发表于 2025-4-24 07:28 | 显示全部楼层
尝试用中断方式有没有一样的问题?
Wordsworth 发表于 2025-4-24 07:29 | 显示全部楼层
能贴下初始化那块代码看看吗?
Bblythe 发表于 2025-4-24 07:30 | 显示全部楼层
我这边加了超时判断就好一些了。
Pulitzer 发表于 2025-4-24 07:31 | 显示全部楼层
感觉串口状态位有时候不稳定。
Uriah 发表于 2025-4-24 07:32 | 显示全部楼层
是不是串口溢出的时候卡住了?
probedog 发表于 2025-4-24 11:32 | 显示全部楼层
DMA 配置有问题?
classroom 发表于 2025-4-24 11:36 | 显示全部楼层
多个外设同时使用同一个 DMA 通道导致冲突。?
laocuo1142 发表于 2025-4-24 12:00 | 显示全部楼层
配置为循环模式时,DMA 会不断重复传输,导致新数据无法发送。
powerantone 发表于 2025-4-24 15:00 | 显示全部楼层
USART 配置有误?
stormwind123 发表于 2025-4-24 19:00 | 显示全部楼层
在 DMA 传输完成中断中,如果未重新配置 DMA 或 USART,导致后续传输失败。
cr315 发表于 2025-4-24 19:30 | 显示全部楼层
避免在中断服务程序中直接操作 USART 寄存器。
两只袜子 发表于 2025-4-24 20:00 | 显示全部楼层
外设时钟未正确配置或者引脚复用功能未正确设置?
jcky001 发表于 2025-4-24 21:00 | 显示全部楼层
检查硬件配置。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

184

主题

6229

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部