DBC中的Intel和Motorola字节序
https://mp.weixin.qq.com/s/v1yJm1hK4lauuiy1ujY0gw
本文目录:
一.Intel字节序
1. 信号布局:小端主机
2. 消息发送:小端主机
3. 消息接收:大端主机
4. 整体图示
二. Motorola字节序
1. 信号布局:大端主机
2. 消息发送:大端主机
3. 消息接收:小端主机
4. 整体图示
三. 总结
附录. CAN帧的发送顺序
以下正文:
CAN消息数据DBC文件中定义的信号,有Intel和Motorola两种字节序。
一.Intel字节序
定义了一个消息,包含6个信号,都是Intel字节序:
其中:
a. Signal_1/Signal_2为8位,Signal_3/Signal_4为3位,Signal_5/Signal_6为5位;
b.各信号按顺序紧凑排列;
这个消息的Layout为:
其中:
a. Intel字节序为小端字节序,LSB在低地址,MSB在高地址:
- Signal_1的LSB在字节0的bit0,MSB在字节0的bit7。
- Signal_2的LSB在字节1的bit0,MSB在字节1的bit7。
- Signal_3的LSB在字节2的bit0,MSB在字节2的bit2。
- Signal_4的LSB在字节2的bit3,MSB在字节2的bit5。
- Signal_5的LSB在字节2的bit6,MSB在字节3的bit2。
- Signal_6的LSB在字节3的bit3,MSB在字节3的bit7。
b. Signal_5横跨2个字节,从图中看,分别处在两个字节的两端。
1. 信号布局:小端主机
在小端主机中,各信号的排列方式如下:
https://mp.weixin.qq.com/s/v1yJm1hK4lauuiy1ujY0gw