完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
目前在做高频数据采集分析,使用串口设备驱动(使用rs485),开启DMA+空闲中断,接收不定长数据,接收方式一对多,(即一个485接收4个设备的数据发送)。 发送频率较快(触发式发送);数据最长的一帧有300对字节,最少37字节,DMA模式为循环模式,缓冲buf,自己理解的是DMA的buf就是serial.c中的fifo buf, buf的size设置为2048;问题: 数据接收存在粘包现象,一包数据包含两包; 大数据包出现断包现象,从未收到完整包; 自己查看认为:串口设备驱动中的fifo不是环形buf,调用rt_serial_read();并没有把buf中的字节取出,buf依旧一直存,直到长度为DMA的设置size,标记初始为0, 从头来过;个人认为fifo目前的设计问题太大,接收数据不为整数倍的长度就很容易出现问题。 |
|
相关推荐
1个回答
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【Vision Board创客营连载体验】RA8D1-Vision Board上OSPI-Flash实践
778 浏览 0 评论
I.MX6ULL-飞凌 ElfBoard ELF1板卡- 应用层更改引脚复用的方法
3466 浏览 0 评论
1479 浏览 0 评论
【英飞凌PSoC 6 RTT开发板试用】串口测试标准输入输出重定向
1147 浏览 0 评论
5084 浏览 0 评论
57017 浏览 21 评论
【参与有奖】激扬代码,千元现金!RT-Thread主题征文大赛
57202 浏览 88 评论
野火 ISO STM32资料合集(程序、原理图、项目初高级篇)
18363 浏览 47 评论
281114 浏览 76 评论
51672 浏览 31 评论
16070 浏览 53 评论
13316 浏览 50 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-5-17 23:03 , Processed in 0.599881 second(s), Total 67, Slave 51 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号