<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
"); //-->

博客專(zhuān)欄

EEPW首頁(yè) > 博客 > CANoe創(chuàng )建CAN DataBase(DBC文件)

CANoe創(chuàng )建CAN DataBase(DBC文件)

發(fā)布人:美男子玩編程 時(shí)間:2024-09-19 來(lái)源:工程師 發(fā)布文章

常用的創(chuàng )建和編輯CAN DataBase(DBC文件)有兩種方法,一種是下載CANdb++,Vector免費的工具;另一種就是使用CANoe創(chuàng )建,不過(guò)需要付費購買(mǎi)軟硬件。兩種方法創(chuàng )建DBC文件的方式都是一樣的。


本篇博文講解如何使用CANoe軟件創(chuàng )建和編輯DBC文件。


1


新建DBC文件

打開(kāi)CANoe,進(jìn)入Tools菜單欄,點(diǎn)擊CANdb++Editor打開(kāi)DBC編輯軟件。


圖片


在DBC編輯器中,點(diǎn)擊File -> Create DataBase,選擇合適的DBC模板,并選擇一個(gè)文件夾作為DBC文件的保存路徑。


圖片


我一般選擇CANoeTemplate或者CAN Template。


圖片


新建成功效果如下:


圖片


2


新建節點(diǎn)

在Network nodes處右擊,選擇New新建一個(gè)節點(diǎn)(ECU),為其命名,例如ECU01和ECU02等。


圖片


圖片


節點(diǎn)創(chuàng )建好后,界面如下所示:


圖片


3


創(chuàng )建CAN報文

在Messages處右擊,選擇New新建一個(gè)報文。


圖片


圖片


  • 在Name處輸入本條CAN message的名稱(chēng),注意(不得使用中文,不得以數字開(kāi)頭)。

  • 在Type處選擇CAN Standard或者CAN Extended。

  • 在ID處填入此CAN報文的CAN ID。

  • DLC處寫(xiě)入此報文的長(cháng)度(單位是字節)。


CAN報文創(chuàng )建成功如下所示:


圖片

根據需要可以創(chuàng )建多個(gè)報文。


4


創(chuàng )建CAN報文的信號

在Signals處右擊,選擇New新建一個(gè)信號。


圖片


圖片


  • 在Name處鍵入此信號的名稱(chēng)。

  • Length處填入此信號的長(cháng)度(單位為Bit)。

  • Byte Order(字節序)選擇以Intel型填充還是以Motorola型填充。

  • Intel型 :小端字節序,字節內部bit排序從高位開(kāi)始。

  • Motorola型:大端字節序,字節內部bit排序從低位開(kāi)始。

  • ValueType:值的類(lèi)型,有符號整數和無(wú)符號整數以及浮點(diǎn)數類(lèi)型。

  • Factor:比例因子,表示數值需要乘以這個(gè)因子進(jìn)行轉換。

  • Offset:偏移量,表示數值需要加上這個(gè)偏移量進(jìn)行轉換。

  • Minimum:參數的最小值。

  • Maximum:參數的最大值。

  • Calculate minimum and maximum:點(diǎn)擊這個(gè)按鈕可以計算最小值和最大值。

  • Value Table:值表的名稱(chēng),當前為空,表示沒(méi)有關(guān)聯(lián)的值表。


這些參數共同定義了一個(gè)8位有符號整數的LED信號參數,包括其長(cháng)度、字節順序、數據類(lèi)型、初始值、比例因子、偏移量、最小值和最大值。


CAN報文信號創(chuàng )建成功如下所示:


圖片

根據需要可以創(chuàng )建多個(gè)信號。


6


將報文和信號關(guān)聯(lián)

雙擊報文,進(jìn)入報文界面,切換到Signals欄,點(diǎn)擊Add將信號添加到報文中。


圖片


如果CAN報文DLC設置得比添加進(jìn)去的信號所占的字節數多,就會(huì )彈出這個(gè)窗口,點(diǎn)擊否(N)即可,如果點(diǎn)擊是(Y),系統會(huì )修改這條CAN報文的長(cháng)度為剛剛添加進(jìn)去的信號所占的字節數。


圖片


添加完成后如下圖所示,右邊會(huì )列出這個(gè)報文里所有的信號,以及信號所占的字節和起始位。


圖片


如果設置信號在CAN報文中的起始位和位置,雙擊信號,在Startbit處修改起始位。


圖片


也可以在這條CAN報文的Layout中通過(guò)鼠標拖動(dòng)修改信號所處的位置。


雙擊左側CAN報文,在彈出的窗口中點(diǎn)擊Layout,鼠標按住方框中標記的信號拖動(dòng)即可改變信號所在的位置。


圖片


6


設置CAN報文發(fā)送者和接收者

雙擊節點(diǎn)ECU1,在Mapped RX Sig中添加需要接收的報文中的信號,在Tx message中添加該節點(diǎn)發(fā)送的報文。


圖片


圖片


圖片


此時(shí)我們展開(kāi)左側,可以看到ECU1節點(diǎn)已經(jīng)有了對應的發(fā)送和接收報文以及信號。


圖片


以上就是如何在CANoe中新建和使用CAN DataBase(DBC文件)的基本步驟。通過(guò)這些步驟,你可以創(chuàng )建一個(gè)簡(jiǎn)略版的CAN DBC。 


*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。



關(guān)鍵詞: CANoe

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>