結論:無論用的Motorola,還是Intel格式,只在單個信號跨字節時解析才有區別。
先看下Vector的CANoe中dbc編輯器是如何呈現報文的:

從圖中可以看出,每行表示一個字節的8個位,從右到左依次是bit0, bit1...bit7. 一共有8行,從上到下依次是byte0, byte1...byte7.這也正是每幀CAN報文數據能容納的最多數據——8個byte,共64個bit(bit位序從byte0到byte7依次遞增排序)。
關於CAN報文,用的Motorola,還是Intel格式,只在單個信號跨字節時解析才有區別。
舉例:
(1)配置CAN報文信號為Motorola格式


報文中相應信號用上述Motorola格式解析出來的結果如下:

(2)配置CAN報文信號為Intel格式


報文中相應信號用上述Intel格式解析出來的結果如下:

對比:
a)跨字節信號ins_p和Treserved:兩種格式解析結果不同。按照byte0, byte1...的先后順序,Motorola格式大字節在前,小字節在后,如ins_p解析為0x3884。而Intel格式小字節在前,大字節在后,如ins_p解析為0x438。(此處的大字節指的是高位bit所在的字節,小字節指的是低位bit所在的字節)
b)非跨字節信號VolAD:兩種格式解析的結果相同,都是0xC0,也即192。
注:
a)需要明確:8個byte的順序不變,每個byte中8個bit的順序不變,如圖1所示。
b)從圖3和圖6的箭頭方向可以看出每個信號不同格式下bit的排布順序。其中紅色箭頭指向首尾bit,白色箭頭指向跨字節的銜接bit。紅色箭頭的首為LSB(Least Significant Bit),尾為MSB(the Most Significant Bit)。