前言
使用Vector公司的Davinci Configurator工具導入Can DBC文件自動配置BSW模塊本來是一件很絲滑(Vector的工具確實更好用…)的工作,但是從客戶那里拿到的DBC文件格式存在各種問題,導致Davinci工具也報各種錯誤,由于以前沒有Davinci的使用經(jīng)驗,解決問題的過程也比較痛苦,這里把遇到的DBC文件格式錯誤導致Davinci報錯問題記錄一下。
正文
1.周期幀報文
問題:對于周期發(fā)送報文,Com模塊的ComIpdus中生成的ComTxMode配置信息應該是Tx Mode: PERIOD,且只有周期報文發(fā)送的時間參數(shù),但是實際生成Tx Mode: MIXED,且自動生成了事件幀報文發(fā)送的實際參數(shù)。

DBC問題:對于周期報文,周期報文的屬性參數(shù)GenMsgSendType應該為Cyclic,且報文下的每一個Siganl的GenSigSendType都應該為Cyclic,實際是有問題這幀報文下有一個Signal的屬性是不是Cyclic。

Note: 周期報文的周期屬性參數(shù)一定要是Cyclic,不能是Circular或者Period(Davinci會當成NoMsgSendType來處理)。
正確修改DBC后:

2.事件幀報文
問題:對于事件觸發(fā)發(fā)送報文,Com模塊的ComIpdus中生成的ComTxMode配置信息應該是Tx Mode: DIRECT,且只有事件報文發(fā)送的時間參數(shù),但是實際生成Tx Mode: MIXED,且自動生成了周期報文發(fā)送的實際參數(shù)。

DBC問題:對于事件幀報文,報文的屬性參數(shù)GenMsgSendType應該為OnChange/NoMsgSendType,且報文下的每一個Siganl的GenSigSendType都應該為OnWriteWithRepetition/OnChange/xxx,實際是有問題這幀報文的GenMsgSendType配置為Cyclic。

正確修改DBC后:

3.網(wǎng)絡管理報文
問題:網(wǎng)絡管理發(fā)送報文的NM屬性已經(jīng)配置了,但是Davinci工程沒有自動生成CanNm/NM相關的配置容器和參數(shù)?

DBC的問題:ECU的全局參數(shù)中沒有配置NM的NmAsrNode參數(shù)。

4.診斷報文
診斷報文只要配置好:
DiagRequest:物理尋址接收報文配置屬性
DiagResponse:物理尋址發(fā)送報文配置屬性
DiagState:功能尋址接收報文配置屬性

5. DBC文件屬性配置
問題:對于普通收發(fā)的應用報文,Davinci會給這一幀報文生成Com<->PduR<->CanIf的協(xié)議棧信息,但是實際沒有生成Com到CanIf的PduR路由信息。

DBC的問題:對于普通收發(fā)的應用報文,應該配置GenMsgILSupport參數(shù)為Yes。

正確修改DBC后:

小知識:有時候發(fā)現(xiàn)一些DBC的報文缺少某些必需的配置屬性,怎么給DBC添加一個配置屬性?



小技巧:有時候我們發(fā)現(xiàn)兩個DBC報文的屬性差異很大,想以一個DBC為基準,修改另一個DBC的配置屬性和基準DBC的配置屬性完全一樣,除了一個一個配置屬性去增刪查改外,還有什么更簡單的辦法?

審核編輯:湯梓紅
-
模塊
+關注
關注
7文章
2837瀏覽量
53300 -
文件格式
+關注
關注
0文章
21瀏覽量
15376 -
DBC
+關注
關注
2文章
65瀏覽量
8400 -
davinci
+關注
關注
0文章
33瀏覽量
12746 -
Vector
+關注
關注
3文章
99瀏覽量
10035
原文標題:DBC文件格式錯誤導致Davinci Configurator報錯問題總結
文章出處:【微信號:汽車電子嵌入式,微信公眾號:汽車電子嵌入式】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
適用于IPTV大并發(fā)應用的文件格式
LabVIEW數(shù)據(jù)文件格式的視頻教程
LabVIEW網(wǎng)絡講壇第四季:講述TDMS文件格式的內(nèi)部結構
STM32--hex文件格式
WAV文件格式詳解
DBC文件格式錯誤導致Davinci Configurator報錯問題總結
評論