CAN数据手册有几点不是很懂

2019-10-15 07:45发布

RC5GB@J[}MMA_I(SHI35.png

O4JG)LB{WY8FF)BE{GI(ECB.png

1:数据手册说发送失败有仲裁引起的,但是仲裁是在预定以前,更不用说是在发送的过程中了,为什么会有这个错误?
2:发送失败是什么意思???怎么一个失败法????过程能否说一下,还有失败的话,之前的数据又会怎么样???
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
shikihane
1楼-- · 2019-10-15 13:14
CAN总线是多主机的总线,发生仲裁说明有两个以上主机同时要求通讯了,而总线在某一个时间段里,只能是一个主机使用,所以会发生仲裁,有仲裁就有可能失败。
慕名兰
2楼-- · 2019-10-15 15:19
 精彩回答 2  元偷偷看……
myxiaoniao
3楼-- · 2019-10-15 19:35
预订的话根本都还没发呢,预订代表can核心已经准备要发这个邮件,等待总线空闲就发
仲裁是指邮件在发送时候进行的,看看仲裁方法就一清二楚了

发送失败相当于你给人寄信,投递到邮局最后邮局给你退回来了

can总线是复杂总线,已经不是spi,usart这种无管理的总线了,它当然可以给你提供很多信息,建议熟悉can的原理,回头就容易理解多了
shikihane
4楼-- · 2019-10-16 00:09
慕名兰 发表于 2017-1-12 12:38
那发送失败是什么意思?是报文没发送的意思吗?

竞争失败了,当然发送失败了,总线先给比自己等级高的设备用了。等到老大用完了,再轮到自己。
慕名兰
5楼-- · 2019-10-16 04:38
myxiaoniao 发表于 2017-1-12 12:57
预订的话根本都还没发呢,预订代表can核心已经准备要发这个邮件,等待总线空闲就发
仲裁是指邮件在发送时 ...

你的意思是:空置->挂号->预定->发送->空置,这一过程就是发送,而总裁在里面,所以说发送错误包括总裁错误,是吗?
jxhzht1990
6楼-- · 2019-10-16 10:00
换种说法就是假如同一个时间两个CAN帧发出去了,在发送到仲裁帧的时候,帧id小的那个形成了使能的电平,大的那个还是静默的电平,这时帧id大的那个就被动的接受了自己需要排队的指令,因为总线被别人占用了。要是一直被挤掉不让发就形成仲裁错误

一周热门 更多>