[STM32F0] 我用USART DMA收数据,结果收不满就不动了

[复制链接]
 楼主| Uriah 发表于 2025-6-3 07:20 | 显示全部楼层 |阅读模式
串口数据量不定,用DMA方式接收,结果收一半的时候程序就像卡住一样。
Clyde011 发表于 2025-6-3 07:24 | 显示全部楼层
建议试试双缓冲,效率更高。
公羊子丹 发表于 2025-6-3 07:24 | 显示全部楼层
DMA得用空闲中断来判断结束。
周半梅 发表于 2025-6-3 07:25 | 显示全部楼层
你收的是定长还是变长数据?
帛灿灿 发表于 2025-6-3 07:26 | 显示全部楼层
看看NDTR寄存器有没有动。
童雨竹 发表于 2025-6-3 07:27 | 显示全部楼层
空闲中断 + 标志位是我常用的。
万图 发表于 2025-6-3 07:28 | 显示全部楼层
我以前没开接收使能也是空等。
Wordsworth 发表于 2025-6-3 07:28 | 显示全部楼层
看下是不是串口波特率设错了。
Bblythe 发表于 2025-6-3 07:29 | 显示全部楼层
DMA结束中断有没有写处理?
Pulitzer 发表于 2025-6-3 07:30 | 显示全部楼层
DMA通道别和别的外设冲突。
 楼主| Uriah 发表于 2025-6-3 07:31 | 显示全部楼层
看NDTR剩多少可以估算收到几字节。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

139

主题

5850

帖子

1

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