CAN報文 Intel 格式與Motorola 格式的區別

當一個信號的數據長度不超過 1 個字節(8 位)時,Intel 與 Motorola 兩種格式的編碼結果沒有什麼不同,完全一樣。當信號的數據長度超過 1 個字節(8 位)時,兩者的編碼結果出現 了明顯的不同。 

 

1.    信號的高位,即最能表達信號特性的因子,比如:車速信號 500km/h 按照給定的公 式,轉換成十六進制數爲 0x6A5,因爲 6 代表的數量級最大(162),那麼其中 6 就 是其信號的高位。

2.    信號的低位,即最不能表達信號特性的因子,比如:車速信號 500km/h 按照給定的公式,轉換成十六進制數爲 0x6A5,因爲 5 代表的數量級最小(160),那麼其中 5 就是其信號的低位。

3.    信號的起始位,一般來講,主機廠在定義整車  CAN 總線通信矩陣時,其每一個信 號都從其最低位開始填寫,這樣也符合使用習慣。所以信號的起始位就是信號的最低位。這也與 CANoe 中 CANdb++的定義Startbit 含義一致。 

 

Intel 格式

 

當一個信號的數據長度超過1 個字節(8 位)或者數據長度不超過一個字節但是採用跨字節方式實現時,該信號的高位(S_msb)將被放在高字節(MSB)的高位,信號的低位(S_lsb)將被放在低字節(LSB)的低位。這樣,信號的起始位就是低字節的低位

 

 

Motorola 格式

當一個信號的數據長度超過 1 個字節(8 位)或者數據長度不超過一個字節但是採用跨字節方式實現時,該信號的高位(S_msb)將被放在低字節(MSB)的高位,信號的低位(S_lsb)將被放在高字節(LSB)的低位。這樣,信號的起始位就是高字節的低位.

 

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