關於dbc最全的文章在這里:https://blog.csdn.net/u010808702/article/details/104152745
最新的DBCView的使用方法在(一):https://blog.csdn.net/u010808702/article/details/104202164
最新的DBCView的使用方法在(二):https://blog.csdn.net/u010808702/article/details/104214107
免費的DBC和EXCEL相互轉換方法:https://blog.csdn.net/u010808702/article/details/104249739
DBC是vector公司定義的can網絡通信文件格式,vector的規范《DBC File Format Document》從下面鏈接獲得
百度網盤:https://pan.baidu.com/s/1GUvfEHv1NQbJ2bL2e7ZL5w
提取碼:d622
一、DBC文件介紹(讓大家了解DBC是什么)
DBC文件是由德國維克多公司發布的,它被用來描述單一CAN網絡中各邏輯節點信息,依據該文件可以開發出來監視和分析CAN網絡中所有邏輯節點的運行狀態,也可以是有針對性的ECU通信應用軟件。
DBC是一種文件格式,.dbc文件是一個ASCII格式的文件,其.dbc擴展名可用於定義CAN網絡。
二、DBC解析(DBCView)
下面,讓我們帶着工具DBCView進一步了解DBC文件的格式。
1)DBC是描述CAN網絡節點間的數據通訊的文件:
DBC文件中開頭會描述此dbc文件中有多少個節點,例如下面一行:
BU_: Labcar_Receive ABAG ABS EPS GW
這里會少一個默認的vector_xxx節點,在DBCView中會有比較好的拓撲圖來顯示:
例如下面的3.dbc文件,包括了6個節點連接在CAN網絡上
2)dbc文件中會為每個節點定義發送消息,接收消息
緊接着節點之后,dbc文件中會描述節點間MSG傳送,例如下面這樣:
BO_ 1546 DIAG_Rsp_ABS: 8 ABS
其中BO表示此行描述的是一個MSG,1546是MSG的CANID,DIAG_Rsp_ABS是MSG的名字,8是MSG的size(8個字節), ABS是該MSG由ABS節點發送從來。
在DBCView中,左邊樹狀列表圖會表示CANBUS上所有節點,展開節點,就是該節點的所有發送MSG。
BO_ 1546 DIAG_Rsp_ABS: 8 ABS
SG_ Byte2 : 8|8@1+ (1,0) [0|255] "" Labcar_Receive,GW
在BO_下面,會定義該MSG中包含的所有Signal,例如上面SG_ Byte2 : 8|8@1+ (1,0) [0|255] "" Labcar_Receive,GW
DIAG_Rsp_ABS MSG中有一個Signal,名字叫Byte2,名字后面“8|8@1+ (1,0) [0|255] "" ”是Signal的細節,后面再介紹。
Labcar_Receive,GW 是表示改Signal會被Labcar_Receive 和 GW接收,對於Labcar_Receive 和GW來說,也就是他會接收到來自
ABS的DIAG_Rsp_ABS消息,在DBCView中,節點的接收消息會在右邊顯示。
例如下圖所示:3.dbc文件中ABS節點有3個發送MSG,同時從GW節點接收3個MSG。
在DBCView中,用鼠標點擊某個MSG,Signal,Node會高亮顯示消息的發送和接收路徑,如下圖,點擊了ABS消息后,藍色線是ABS
節點的所有接收消息。
3)DBC解析---MSG內部Signal排版
在3.dbc文件中,mBrake_1消息內部的signal 如下圖所示,包括signal的位置,長度,格式等
4)DBC解析---MSG的attribute
DBC文件除了規定MSG的layout外,還可以定義它的Attribute,具體Attribute的使用,會和OSEK COM規范相關
5)DBC解析---Signal的細節介紹
Signal包括它的大小、位置、值的意義、單位等基本信息。
Signal的Attribute包括了它的Name、default、type等等 如下圖所示:3.dbc文件中Signal的基本信息和Attribute
6)DBCView工具的其他特性
以樹狀圖顯示CANBUS上所有的Node、Message和Signal。 選中總線上某個Node、MSG或者Signal,和這個相關的內容就會用線連接起來。讓您一目了然!
7)DBCView的其他特點:
DBCView是共享軟件,需要掃碼才能使用。
新版免費了。