can 数据接收问题?主要是can单帧和多帧并存,求解析完整接收到can的方法或者思路

2019-07-20 05:59发布

描述:项目中can 多帧数据接收时该如何处理的问题?在该项目的现场控制中会存在单帧、多帧两种形式的can数据,并且其中can数据传输频繁,在多帧传输的过程中一旦传输优先级较高的单帧会使多帧容易出现丢帧情况。另外,发送一个多帧数据(最多8帧数据)。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
19条回答
rui9527
1楼-- · 2019-07-21 09:39
陈皮皮 发表于 2018-9-14 08:37
多帧CAN,没用过,感觉可以从协议中去优化解决中途插入其他单帧数据的问题,而且你说的丢帧是真的丢帧了还 ...

高优先级单帧插入
陈皮皮
2楼-- · 2019-07-21 10:46
 精彩回答 2  元偷偷看……
rui9527
3楼-- · 2019-07-21 15:40
陈皮皮 发表于 2018-9-14 08:47
可不可以尝试一下,根据多帧标识符识别,单独开辟一个缓存,在中断中直接缓存指定的多帧数据,其他单帧数 ...

可以的,我就是这样处理的,就是最后处理can多帧数据时卡住了,所以在调试
陈皮皮
4楼-- · 2019-07-21 16:04
rui9527 发表于 2018-9-14 08:54
可以的,我就是这样处理的,就是最后处理can多帧数据时卡住了,所以在调试

接收如果没问题,就看你怎么解析了,比如数据包中有没有数据长度等信息,因为你的多帧数据帧数不定(1-8帧)
rui9527
5楼-- · 2019-07-21 20:52
 精彩回答 2  元偷偷看……
ufbycd
6楼-- · 2019-07-22 00:22
本帖最后由 ufbycd 于 2018-9-14 11:21 编辑
rui9527 发表于 2018-9-14 10:20
嗯,就是解析这里卡住了,因为多帧帧数不定,另外,接收的出现丢了一帧,数据被破坏,那就要丢弃这个坏帧 ...

发送方在传输帧被冲突后没有自动重发?那你这发送方都没有遵循CAN总线规范吧。在发送方上解决问题才能治本。

一周热门 更多>