CAN总线理解中的几个要点

1.多个节点连接,只要有一个为显性电平,总线就为显性电平,只有所有节点输出隐形电平时,才为隐性电平,这个就是总线电平的"线与"关系。

2.仲裁机制(硬件自动):CAN总线控制器在发送数据的同时会监控总线上的电平状态(多个节点同时发送信息时,总线电平是什么电平未知),如果发送的电平和总线表现出的电平不同,则停止发送并做其他处理:如果该位位于仲裁段,则退出总线竞争,如果位于其他段,则产生错误事件。这就是仲裁机制

3.应答段ACK由1个应答间隙位和1个应答界定位组成,发送器发送信息时 在应答间隙位上发送的是隐性电平,接收器在接受时在帧起始到CRC段都没错误的情况下,同时在ACK段的应答间隙位发送一个显性电平,线与结果为显性电平,则表示至少有一个接收器正确接收到了消息,如果是隐性电平则表示消息响应故障(发送器检查消息是否存在应答位显性电平,如果没有就重发消息)。

4.两种过滤模式(列表模式与掩码模式),自行配置,可以过滤掉非自身ID的消息,避免处理不了大量数据导致的死机、或者中断响应导致的死机;

5.远程帧分为6个段,也分为标准帧和扩展帧,且RTR位为1(隐性电平),数据帧的RTR是0(显性电平)接收器通过发送远程帧,可以启动其他节点发送它们各自的数据。远程帧和数据帧非常类似,只是远程帧没有数据域。

6.参考书籍:周立功的《现场总线CANopen设计与应用》  北航出版社

参考链接:

https://blog.csdn.net/kgcjie/article/details/78238180

https://blog.csdn.net/kgcjie/article/details/78237719

https://blog.csdn.net/wofreeo/article/details/82288950

https://www.cnblogs.com/spoorer/p/6649303.html

https://blog.csdn.net/wofreeo/article/details/89154853

https://blog.csdn.net/u012252959/article/details/49427625

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章