CAN报文的Intel和Motorola格式详解
创作时间:
作者:
@小白创作中心
CAN报文的Intel和Motorola格式详解
引用
CSDN
1.
https://blog.csdn.net/traveller93/article/details/139567267
在汽车电子和嵌入式系统领域,控制器局域网络(CAN)是一种广泛使用的串行通信协议。在CAN通信中,报文的编码格式主要分为Intel和Motorola两种模式。这两种模式在处理多字节数据时存在显著差异,特别是在信号跨越字节边界时。本文将详细介绍这两种编码格式的特点,并通过具体案例说明它们在实际应用中的区别。
一、背景说明
在CAN通信矩阵定义时,报文编码格式有Intel和Motorola两种。当信号不跨字节时,两种编码字节排序方式一致。但在跨字节时,Intel采用小端模式,即最低有效位(lsb)在低字节,最高有效位(msb)在高字节;而Motorola采用大端模式,lsb在高字节,msb在低字节。在实际应用中,商用车扩展帧CAN报文更多使用Intel模式,而乘用车标准帧CAN和CAN FD报文则更多使用Motorola模式。
二、编码案例
2.1 报文Bit和Byte顺序
在讨论具体案例之前,先明确报文的位(Bit)和字节(Byte)顺序:
- Bit顺序:Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
- Byte顺序:Byte0 Byte1 Byte2 Byte3 Byte4 Byte5 Byte6 Byte7
2.2 Intel格式报文及Layout
以Intel排列格式定义Msg0x123报文,包含两个信号:刹车状态和车速。
- 刹车状态从第三字节的第24位开始,占据24、25位,低位lsb在第24位,高位msb在第25位。
- 车速从第26位开始,长度为两字节,占据第三字节的6位,整个第四字节以及第五字节的2位。
2.3 Motorola格式报文及Layout
同样以Motorola排列格式定义Msg0x123报文,包含相同的两个信号:刹车状态和车速,为了便于对比,将两个信号的起始位设定一致。
- 刹车状态因为位于同一字节,所以没有变化,从第三字节的第24位开始,占据24、25位,低位lsb在第24位,高位msb在第25位。
- 车速发生较大改变,从第26位开始,长度为两字节,占据第三字节的6位,整个第二字节以及第一个字节的2位。
三、总结
在设计CAN通信矩阵时,应避免Intel和Motorola格式的混用。根据行业惯例,商用车倾向于使用扩展帧的Intel格式编码,而乘用车则更多采用标准帧和CAN FD的Motorola格式编码。在进行报文解析时,需要特别注意两种格式的差异:Intel格式需要将后面的位调到前面进行解析,而Motorola格式则可以直接组合解析。
热门推荐
规范考勤打卡通知包含哪些内容?
摆摊式创业 “会摆摊就会做生意”
"太子"福登:低迷背后,探寻天才中场的迷失与重启之路
DHCP与DNS的配置详解
阿波菲斯:关于毁神星的一切
小心致癌物!我家的保鲜膜可以加热吗?挑选注意6点→
六级听力突破:高效策略与听力技巧全解析
古代“一两银子”的价值:你的工资相当于清朝的多少银两?
【悦读】元•王冕《墨梅》赏析
如何将 USB 端口添加到笔记本电脑或 PC [4 种方法]
手机网络重置后无法连接?7个实用解决方案帮你快速恢复网络
马步芳的儿子想要纳妾,父亲却不满意,提出了两个严苛的要求
至少7个不同高岩浆区!美国黄石超级火山有变,出现内部转移
保障性住房的申请条件是什么?如何顺利申请到保障性住房?
杜甫《江南逢李龟年》原文及翻译赏析
从蓝桥杯看排序算法的应用和创新
群论中的证明和习题解答
吹口气就能查胃病?揭秘检验科的13C呼气试验!
窝窝头怎么做才松松软软?好方法值得看!
湿疹一直纠缠不清怎么办,做好这些很关键
如何扩大朋友圈找到女朋友?从这6方面入手
扎心了,原来女生真的更容易失眠!这几个方法帮你睡个好觉
营业执照名字要与店铺名字一致吗
中建一局建设发展公司荣获“全国五一劳动奖状”
罗湖重大应用基础型科研平台实现“零的突破” 中欧创新医药与健康研究中心揭牌
冬天的电动车,为什么充电这么难?
中国农业可持续发展:从土壤碳汇到节水灌溉的绿色转型
当前火爆“生猪代养”模式的真相
产品安全问题: 奥地利学派对“法律经济学”
电动车停放管理规定有哪些