完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
在启用串口DMA接收的协议帧的时候发现接收粘包或者接收不全现象。发送端100ms发送帧头0D帧尾0A的30字节数据,接收端使用串口空闲中断DMA方式收数据:1、接收端可能会收到0A 0D 开头的30字节数据,也就是上一帧的帧尾粘连到当前帧变成了帧头;2、接收端会收到上一帧更多粘连的当前帧;3、收30字节时会出现两次串口空闲中断,也就是第一次16字节第二次14字节(出现较少),在空闲中断服务函数中加上20msdelay粘包现象会有改善。
不知道是不是CH32F103的DMA有bug,望释疑。 |
|
相关推荐
1个回答
|
|
您好,附件为一个串口空闲中断DMA收发例程,其中,也是使用DMA并在空闲中断接收,按照你的配置,每100ms发送接收数据,并没有出现你所说问题,如下图。你可以对比一下例程看看程序哪个地方配置是否有所不同
|
|
|
|
只有小组成员才能发言,加入小组>>
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
2616 浏览 2 评论
2145 浏览 1 评论
ch554g的板子准备烧录程序,用串口总是显示等待设备连接是为啥
1021浏览 14评论
请问ch32v307用ch-link调试或者读写有什么特殊操作方法吗?
919浏览 13评论
Windows系统下如何确定COM口为CH340/CH341设备?
2257浏览 12评论
695浏览 12评论
CH32V307以太网接近满速后,几秒或几十秒后就死机怎么解决?
1987浏览 11评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-5-14 11:11 , Processed in 1.022206 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号