新闻  |   论坛  |   博客  |   在线研讨会
详解CAN总线:CAN总线通信优先级机制
美男子玩编程 | 2022-10-27 14:09:07    阅读:2697   发布文章

在详解CAN总线:CAN总线报文格式—数据帧文章中,讲解到仲裁段。仲裁段用于写明需要发送到目的CAN节点的地址、确定发送的帧类型(当前发送的是数据帧还是遥控帧),并确定发送的帧格式是标准帧还是扩展帧。


本篇文章将讲解仲裁段的另一个重要功能:通信优先级。


在CAN总线空闲态,最先开始发送消息的单元获得发送权。多个单元同时开始发送时,各发送单元从仲裁段的第一位开始进行仲裁,连续输出显性电平最多的单元可继续发送。所以,帧ID值越小,优先级越高。


仲裁的过程如下图所示:


图片

图片

1


数据帧和遥控帧的优先级

具有相同 ID 的数据帧和遥控帧在总线上竞争时,数据帧优先级高,因为数据帧仲裁段的最后一位(RTR)为显性位具有优先权,可继续发送。


数据帧和遥控帧的仲裁过程如下图所示:


图片

2


标准格式和扩展格式的优先级

标准格式 ID 与具有相同 ID 的遥控帧或者扩展格式的数据帧在总线上竞争时,标准格式的 RTR 位为显性位优先级更高,优先发送。


标准格式和扩展格式的仲裁过程如下图所示:


图片


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客