完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
RTT串口DMA驱动开启了接收完成中断、半满中断、空闲中断,串口接收模式为循环接收。这里串口接收缓存假定为10字节,半满为5字节。 问题 第一包数据接收正常,第二包数据会因为触发半满中断被分成两段。 大家是怎么规避第二包数据分包的呢?先不考虑定时器组包。我最终的目的是能实现收到一组长度小于等于n的连续数据。 我有个思路是当空闲中断产生时读完数据立即把串口缓存和fifo重置一下,这样就能有效避免分包了,不过有个不确定的风险:重置过程会暂时关闭接收,这个时间比较短不确定会不会影响新数据的接收 |
|
相关推荐
4个回答
|
|
我是用了一个packer软件包,分包无所谓,他会自动帮你组包,还自带校验
|
|
|
|
嗯嗯,我看下这个软件包的实现过程
|
|
|
|
这个软件包需要对数据增加一些协议,我处理的数据是无任何规律的数据
|
|
|
|
串口数据是字节流数据,通过空闲、超时等手段来判断一包数据是不可靠的。可靠的方式是一包数据增加帧头、帧尾,通过解析头尾来获取一包数据。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
795 浏览 0 评论
4743 浏览 0 评论
如何使用python调起UDE STK5.2进行下载自动化下载呢?
2605 浏览 0 评论
开启全新AI时代 智能嵌入式系统快速发展——“第六届国产嵌入式操作系统技术与产业发展论坛”圆满结束
2949 浏览 0 评论
获奖公布!2024 RT-Thread全球巡回线下培训火热来袭!报名提问有奖!
31683 浏览 11 评论
73073 浏览 21 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 11:14 , Processed in 0.761009 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号