[APM32F4] 【APM32F402R Micro-EVB】05:DMA与空闲中断完成数据的收发

[复制链接]
765|38
cashrwood 发表于 2025-9-6 20:28 | 显示全部楼层
工业级嵌入式通信的推荐做法              
 楼主| 聪聪哥哥 发表于 2025-9-7 13:49 | 显示全部楼层
cashrwood 发表于 2025-9-6 20:28
工业级嵌入式通信的推荐做法

对对,现在我使用的串口与外设的交互,都是使用这种方法。
sanfuzi 发表于 2025-9-8 11:17 | 显示全部楼层
编写中断服务例程时, 注意代码的简洁性和效率
记忆花园 发表于 2025-9-8 19:49 | 显示全部楼层
要是跑协议,长度一般也都是已知的了。
空闲中断可以做为一种二次保证来应用,谢谢楼主分享了
 楼主| 聪聪哥哥 发表于 2025-9-8 20:56 | 显示全部楼层
记忆花园 发表于 2025-9-8 19:49
要是跑协议,长度一般也都是已知的了。
空闲中断可以做为一种二次保证来应用,谢谢楼主分享了 ...

谢谢您的阅读,只是当时没有完善太好,稍后完善一下分享出来
zerorobert 发表于 2025-9-9 18:52 | 显示全部楼层
DMA允许数据在内存和外设之间直接传输,而不需要APM32F402R 的干预,从而提高了效率。
和谐智者 发表于 2025-9-9 23:27 | 显示全部楼层
楼主 在初始化阶段,第17行的等待TXC清零是为什么啊
 楼主| 聪聪哥哥 发表于 2025-9-10 10:14 | 显示全部楼层
和谐智者 发表于 2025-9-9 23:27
楼主 在初始化阶段,第17行的等待TXC清零是为什么啊

为了保证发送的时候可以将数据发送出去
jimmhu 发表于 2025-9-10 10:59 | 显示全部楼层
空闲中断通过检测串口总线空闲状态触发数据处理,无需依赖固定帧尾,简化不定长数据接收逻辑
1988020566 发表于 2025-9-10 12:54 | 显示全部楼层
支持不定长帧              
 楼主| 聪聪哥哥 发表于 2025-9-10 14:41 | 显示全部楼层

支持的 
maqianqu 发表于 2025-9-10 14:44 | 显示全部楼层
结合DMA与空闲中断实现Modbus、自定义协议的高效数据交互
cemaj 发表于 2025-9-10 18:04 | 显示全部楼层
仅凭IDLEIE触发可能导致误判
 楼主| 聪聪哥哥 发表于 2025-9-10 20:38 | 显示全部楼层
cemaj 发表于 2025-9-10 18:04
仅凭IDLEIE触发可能导致误判

嗯嗯 仅仅使用空闲中断触发状态位,后期会对接受的数据进行处理,
pmp 发表于 2025-9-10 22:02 | 显示全部楼层
在一个缓冲区被处理时,另一个可继续接收新数据,消除处理延迟
 楼主| 聪聪哥哥 发表于 2025-9-11 07:42 | 显示全部楼层
pmp 发表于 2025-9-10 22:02
在一个缓冲区被处理时,另一个可继续接收新数据,消除处理延迟

您说的应该是环形队列吧、
永恒回声 发表于 2025-9-12 20:58 | 显示全部楼层
感觉数据量一般的情况下,还是DMA实现的方便。系统性能也高
 楼主| 聪聪哥哥 发表于 2025-9-13 08:07 | 显示全部楼层
永恒回声 发表于 2025-9-12 20:58
感觉数据量一般的情况下,还是DMA实现的方便。系统性能也高

数据量高的话 也得用DMA接收啊
作业粉碎机 发表于 2025-9-30 20:11 | 显示全部楼层
我之前一直对DMA的使用有所疑惑,现在清晰多了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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