使用DMA+USART接收无固定长度的串行数据

[复制链接]
18475|52
mxh0506 发表于 2011-7-3 20:47 | 显示全部楼层
确实是个好方案
但是诚如#13L所说, 响应不够及时. 尤其在数据长度变化范围很大的情况下.
SampsonKong 发表于 2012-3-23 15:05 | 显示全部楼层
putron09 发表于 2012-3-31 14:47 | 显示全部楼层
疯狂的顶!
putron09 发表于 2012-3-31 14:48 | 显示全部楼层
谢谢楼主的分享
hexuguang 发表于 2012-4-8 22:57 | 显示全部楼层
脱裤子放屁!
SampsonKong 发表于 2012-4-10 16:50 | 显示全部楼层
学习下
秋天落叶 发表于 2012-4-10 18:31 | 显示全部楼层
很好用的代码,多谢分享
qjb129 发表于 2012-5-24 23:40 | 显示全部楼层
谢谢楼主分享,正在学习这个
airwill 发表于 2012-5-25 10:46 | 显示全部楼层
这么多人附和哪?
我觉得这个方案有缺陷
1. 用 DMA 是多余的, 接收和定时中断就足够了. 这条还不算缺陷
2. 接收超时功能, 由于协议的数据长度不确定, 设定超时的最长时间却是固定的, 这显然不合理! 导致的结果是一方面总线利用率低下(因为超时不可能太短, 数据包之间又要分割) 长数据包有可能被错误的分割成两个包, 导致通信失败!
所以这个方案还不能作为通信方案参考.
EAMCU 发表于 2012-5-25 11:54 | 显示全部楼层
29# airwill

请问你有没有比较好的方案?
采用IDLE中断来判断?
airwill 发表于 2012-5-25 12:10 | 显示全部楼层
比较好的方案?
还是看根据要求怎么确定一个合适的通信协议吧.
pkat 发表于 2012-5-25 15:23 | 显示全部楼层
不错的源代码,多谢分享
txcy 发表于 2012-5-25 15:48 | 显示全部楼层
LZ这资料相当给力啊,多谢共享
pattywu 发表于 2012-5-25 18:01 | 显示全部楼层
远远比不过DMA+USART的空闲中断。
pattywu 发表于 2012-5-25 18:02 | 显示全部楼层
使用定时器来搞自适应波特率还差不多。
gxgclg 发表于 2012-5-25 23:10 | 显示全部楼层
很好的方案
行不改名 发表于 2012-5-26 12:19 | 显示全部楼层
这个必须要顶
qiu0305 发表于 2012-11-22 11:43 | 显示全部楼层
可以发给我一份吗?
xyxujinlong 发表于 2013-3-21 11:57 | 显示全部楼层
顶一下,正在搞这个
Adams5001 发表于 2013-5-30 22:47 | 显示全部楼层
学习学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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