首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >标准如何通过EXT赢得仲裁的公共汽车接入?

标准如何通过EXT赢得仲裁的公共汽车接入?
EN

Stack Overflow用户
提问于 2022-06-15 05:17:07
回答 1查看 37关注 0票数 0

我读了一些文档,它们都说Std可以比Ext具有更高的优先级,因为在EXT CAN中SRR位总是隐性的,当它们有相同的ID时,但据我理解它取决于。

https://copperhilltech.com/blog/controller-area-network-can-bus-tutorial-extended-can-protocol/

为了简化,假设我们在同一总线上同时发送消息ID 0x1(Std CAN)和0x1(Ext )。可将Std的仲裁字段与Ext比较如下:

Std CAN: 0 0 0 1 (粗体位为RTR)

Ext CAN: 0 0 0 1 1 0 0 0

在第11位,发送Std的节点发送1(隐性比特),发送Ext CAN的节点发送0(占优位),因此Ext可以获得总线访问,发送Std的节点可以切换到侦听模式,之后不发送任何消息,因此无法到达SRR和IDE比特,从而确定消息为Ext CAN或Std CAN。

我以上的理解正确吗?

提前谢谢你,

EN

回答 1

Stack Overflow用户

发布于 2022-06-15 11:16:52

是的,具有RTR集的29位帧比没有RTR的11位帧具有更高的优先级,因为标识符的前11位是相同的。所以说标准帧比扩展帧具有更高的优先级是一种简化。

RTR帧总体上有点古怪,因为它们在DLC区域中也可能有不同的长度,即使在帧中根本没有数据。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72626224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档