CANoe快速入門(mén)2021優(yōu)秀文檔_第1頁(yè)
CANoe快速入門(mén)2021優(yōu)秀文檔_第2頁(yè)
CANoe快速入門(mén)2021優(yōu)秀文檔_第3頁(yè)
CANoe快速入門(mén)2021優(yōu)秀文檔_第4頁(yè)
CANoe快速入門(mén)2021優(yōu)秀文檔_第5頁(yè)
已閱讀5頁(yè),還剩187頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

CANoe概述CAN總線(xiàn)開(kāi)發(fā)工具測(cè)試分析仿真記錄CANoe概述CAN總線(xiàn)開(kāi)發(fā)工具CANoe在總線(xiàn)開(kāi)發(fā)中的作用(1)Phase1simul.nodensimul.node2Simulatedbus…simul.node1ωKl15Virtualtotalsystem…CANoe在總線(xiàn)開(kāi)發(fā)中的作用(1)Phase1simul.CANoe在總線(xiàn)開(kāi)發(fā)中的作用(2)Phase2simul.node2simulatedrest-of-bus…realnode1ωKl15simul.nodenVirtualsubystemRealsubsystem…phys.busCANoe在總線(xiàn)開(kāi)發(fā)中的作用(2)Phase2simul.CANoe在總線(xiàn)開(kāi)發(fā)中的作用(3)Phase3realnode2…realnode1ωKl15Realtotalsystemrealnoden…PhysicalbusAnalysis(inreal-time)CANoe在總線(xiàn)開(kāi)發(fā)中的作用(3)Phase3real…r硬件接口卡&“狗”CANcardXLCANcaseXL收發(fā)器CANcab(CANpiggy)251,1041,1054…LINcab(LINpiggy)7259CAN卡硬件接口卡&“狗”CAN卡CANoe組成功能強(qiáng)大、操作簡(jiǎn)單CANoe數(shù)據(jù)庫(kù)支持CANdb++Editor可編程CAPL虛擬儀表PanelEditor&PanelDesignerCANoe組成功能強(qiáng)大、操作簡(jiǎn)單CANoe工程環(huán)境CANoe工程環(huán)境多總線(xiàn)軟件硬件控制面板VectorHardwareLicense->Overview多總線(xiàn)軟件設(shè)置(1)硬件CAN卡類(lèi)型(編號(hào))收發(fā)器類(lèi)型應(yīng)用程序通道應(yīng)用程序License信息設(shè)置(1)硬件設(shè)置(2)CANoe通道設(shè)置Configuration->OptionsConfigurationSettings->ChannelUsage設(shè)置(2)CANoe靈活=復(fù)雜HWchannelsChannel1 Channel2Channel1Channel2PiggyBack1PiggyBack2CANcardXL#1CANcaseXLCANcardXL#2HardwareCANalyzer1CANalyzer2...CANoe1CANoe2CANoe1forLIN...AppchannelsApplication靈活=復(fù)雜HWchannelsChannel1 Ch從復(fù)雜到簡(jiǎn)單CANoe波特率設(shè)置Configuration->HardwareConfiguration從復(fù)雜到簡(jiǎn)單CANoe基本術(shù)語(yǔ)——報(bào)文(消息)與信號(hào)報(bào)文:enginedata(ID100)ID100B0B1B2CRC信號(hào)發(fā)動(dòng)機(jī)溫度(第二字節(jié),0-6位)未用(第二字節(jié),第七位)發(fā)動(dòng)機(jī)轉(zhuǎn)速(第一,二字節(jié))轉(zhuǎn)換規(guī)則發(fā)動(dòng)機(jī)轉(zhuǎn)速:rpm=1*Bitvalue(0xFF代表錯(cuò)誤)發(fā)動(dòng)機(jī)溫度:oC=2*Bitvalue–50(0x7F代表錯(cuò)誤)基本術(shù)語(yǔ)——報(bào)文(消息)與信號(hào)報(bào)文:enginedata基本術(shù)語(yǔ)——環(huán)境變量與系統(tǒng)變量環(huán)境變量節(jié)點(diǎn)的I/O信號(hào)可用于面板或真實(shí)I/O系統(tǒng)變量節(jié)點(diǎn)內(nèi)部參數(shù)或需要觀(guān)測(cè)的某個(gè)數(shù)值例如:系統(tǒng)變量1=報(bào)文1.信號(hào)1-報(bào)文2.信號(hào)2基本術(shù)語(yǔ)——環(huán)境變量與系統(tǒng)變量環(huán)境變量歡迎進(jìn)入CANoe的世界CANoeCANdb++EditorCAPLPanelEditor&PanelDesigner歡迎進(jìn)入CANoe的世界CANoe歡迎進(jìn)入CANoe的世界CANoe8大窗口TraceWindowBusStatisticsWindowStatisticsWindowDataWindowGraphicWindowWriteWindowSimulationSetupMeasurementSetup歡迎進(jìn)入CANoe的世界CANoeCANoe窗口介紹(1)TraceWindow報(bào)文ID和報(bào)文名稱(chēng)(數(shù)據(jù)庫(kù))信號(hào)(數(shù)據(jù)庫(kù))時(shí)間(相對(duì)值或絕對(duì)值)通道DLCDir(Tx或Rx)更多內(nèi)容見(jiàn)右鍵點(diǎn)擊窗口空白處->Configuration->ColumnsCANoe窗口介紹(1)TraceWindow蒙太奇(1)在CANoe中添加數(shù)據(jù)庫(kù)View->SimulatioinSetup蒙太奇(1)在CANoe中添加數(shù)據(jù)庫(kù)蒙太奇(2)符號(hào)化顯示與十進(jìn)制/十六進(jìn)制切換Globalswitches:Hex/DecandNumeric/Symbolictoggles蒙太奇(2)符號(hào)化顯示與十進(jìn)制/十六進(jìn)制切換GlobalsCANoe窗口介紹(1)清空Trace窗口暫停Trace窗口時(shí)間顯示切換報(bào)文顯示切換CANoe窗口介紹(1)清空Trace窗口暫停Trace窗口CANoe窗口介紹(2)DataWindow數(shù)據(jù)庫(kù)!信號(hào)名稱(chēng)信號(hào)值(Value)信號(hào)單位原始值(RawValue)Bar圖CANoe窗口介紹(2)DataWindowCANoe窗口介紹(2)DataWindow添加信號(hào)右鍵單擊空白處AddSignals選擇需要的信號(hào)CANoe窗口介紹(2)DataWindowCANoe窗口介紹(3)GraphicsWindows數(shù)據(jù)庫(kù)!顯示信號(hào)曲線(xiàn)不同的顏色和線(xiàn)形右鍵單擊空白處選擇Configuration放大、縮小、平移…CANoe窗口介紹(3)GraphicsWindowsCANoe窗口介紹(3)GraphicsWindows添加信號(hào)右鍵單擊空白處AddSignals選擇需要的信號(hào)CANoe窗口介紹(3)GraphicsWindowsCANoe窗口介紹(4)StatisticsWindow顯示報(bào)文出現(xiàn)頻率顯示錯(cuò)誤幀出現(xiàn)頻率統(tǒng)計(jì)報(bào)告右鍵單擊空白處ConfigurationActive生成統(tǒng)計(jì)報(bào)告(WriteWindow)MessagefrequencyIDCANoe窗口介紹(4)StatisticsWindowMCANoe窗口介紹(5)BusStatisticsWindow總線(xiàn)負(fù)載數(shù)據(jù)幀錯(cuò)誤幀CAN卡控制器狀態(tài)CANoe窗口介紹(5)BusStatisticsWinCANoe窗口介紹(6)WriteWindowCAN卡控制器狀態(tài)License信息統(tǒng)計(jì)報(bào)告CAPL輸出窗口Printf=WriteCANoe窗口介紹(6)WriteWindow蒙太奇(3)DesktopCreateNewDesktopRenameDesktop蒙太奇(3)Desktop蒙太奇(4)固定窗口蒙太奇(4)固定窗口CANoe窗口介紹(7)MeasurementSetupView->MeasurementSetup每個(gè)模塊對(duì)應(yīng)一個(gè)窗口增加新模塊(窗口)插入功能塊數(shù)據(jù)記錄CANoe窗口介紹(7)MeasurementSetupCANoe窗口介紹(7)新增模塊(窗口)CANoe窗口介紹(7)新增模塊(窗口)CANoe窗口介紹(7)插入功能塊CAPL節(jié)點(diǎn)發(fā)生器模塊回放模塊觸發(fā)模塊過(guò)濾器模塊CANoe窗口介紹(7)插入功能塊CANoe窗口介紹(7)過(guò)濾器模塊通道過(guò)濾(ChannelFilter)報(bào)文過(guò)濾(Filter)變量過(guò)濾(Variables)CANoe窗口介紹(7)過(guò)濾器模塊CANoe窗口介紹(7)數(shù)據(jù)記錄默認(rèn)狀態(tài)關(guān)閉多種記錄文件類(lèi)型多種記錄配置方式CANoe窗口介紹(7)數(shù)據(jù)記錄CANoe窗口介紹(7)記錄文件右鍵點(diǎn)擊文件圖標(biāo)->LoggingCANoe窗口介紹(7)記錄文件CANoe窗口介紹(7)記錄配置方式雙擊Logging模塊全部記錄單次記錄觸發(fā)記錄CANoe窗口介紹(7)記錄配置方式蒙太奇(5)

數(shù)據(jù)記錄的目的是為了離線(xiàn)分析Mode->ToOffline蒙太奇(5)數(shù)據(jù)記錄的目的是為了離線(xiàn)分析CANoe窗口介紹(8)SimulationSetupView->SimulationSetup發(fā)生器交互式發(fā)生器CAPL節(jié)點(diǎn)CANoe窗口介紹(8)SimulationSetupCANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)交互式發(fā)生器模塊CANoe窗口介紹(8)交互式發(fā)生器模塊歡迎進(jìn)入CAPL的世界CAPL

(CANAccessProgrammingLanguage)類(lèi)C語(yǔ)言仿真單個(gè)節(jié)點(diǎn)和整個(gè)網(wǎng)絡(luò)外部環(huán)境測(cè)試面向事件的編程語(yǔ)言總線(xiàn)事件鍵盤(pán)事件時(shí)間事件歡迎進(jìn)入CAPL的世界CAPL(CANAccessPrCAPLBrowser標(biāo)題欄菜單條工具條瀏覽樹(shù)窗格編譯信息窗格狀態(tài)條全局變量編輯窗格CAPL程序編輯窗格CAPLBrowser標(biāo)題欄菜單條工具條瀏覽樹(shù)窗格編譯信息CAPL事件事件類(lèi)型事件名程序執(zhí)行條件事件過(guò)程語(yǔ)法結(jié)構(gòu)*系統(tǒng)事件PreStartCANoe初始化時(shí)執(zhí)行onpreStart{…}Start測(cè)量開(kāi)始時(shí)執(zhí)行onstart{…}StopMeasuremet測(cè)量結(jié)束時(shí)執(zhí)行onstopMeasurement{…}CAN控制器事件BusOff硬件檢測(cè)到BusOff時(shí)執(zhí)行onbusOff{…}ErrorActive硬件檢測(cè)到ErrorActive時(shí)執(zhí)行onerrorActive{…}ErrorPassive硬件檢測(cè)到ErrorPassive時(shí)執(zhí)行onerrorPassive{…}WarningLimit硬件檢測(cè)到WarningLimit時(shí)執(zhí)行onwarningLimit{…}CAN消息事件自定義接收到指定的消息時(shí)執(zhí)行onmessageMessage

{…}時(shí)間事件自定義定時(shí)時(shí)間朝過(guò)時(shí)執(zhí)行ontimerTimer

{…}鍵盤(pán)事件自定義鍵值指定的鍵被下時(shí)執(zhí)行onkeyKey

{…}錯(cuò)誤幀事件ErrorFrame硬件每次檢測(cè)到錯(cuò)誤幀時(shí)執(zhí)行onerrorFrame{…}環(huán)境變量事件自定義指定的環(huán)境變量值改變時(shí)執(zhí)行onenvVarEnvVar{…}CAPL事件事件類(lèi)型事件名程序執(zhí)行條件事件過(guò)程語(yǔ)法結(jié)構(gòu)*系CAPL基本語(yǔ)法類(lèi)C語(yǔ)言,語(yǔ)法與C語(yǔ)言基本相同注釋// 放置在需要注釋的語(yǔ)句之前,注釋單行/* 注釋起始符,其后的內(nèi)容被注釋*/ 注釋結(jié)束符,結(jié)束由‘/*’開(kāi)始的注釋分號(hào)

程序結(jié)束標(biāo)識(shí)大括號(hào)

函數(shù)體counter=counter+1;if(counter==256){counter=0;stop();}CAPL基本語(yǔ)法類(lèi)C語(yǔ)言,語(yǔ)法與C語(yǔ)言基本相同counter消息事件onmessage123//對(duì)消息123(dec)反應(yīng)onmessage0x123//對(duì)消息123(hex)反應(yīng)onmessageMotorData//對(duì)消息MotorData(符號(hào)名字)反應(yīng)onmessageCAN1.123//對(duì)CAN通道1收到消息123反應(yīng)onmessage*//對(duì)所有消息反應(yīng)onmessage100-200//對(duì)100-200間消息反應(yīng)消息事件onmessage123鍵盤(pán)事件onkey‘a(chǎn)’ //按‘a(chǎn)’鍵反應(yīng)onkey‘’ //按空格鍵反應(yīng)onkey0x20 //按空格鍵反應(yīng)onkeyF1 //按F1鍵反應(yīng)onkeyCtrl-F12 //按Ctrl+F12鍵反應(yīng)onkeyPageUP //按PageUp鍵反應(yīng)onkeyHome //按Home鍵反應(yīng)onkey* //按所有鍵反應(yīng)鍵盤(pán)事件onkey‘a(chǎn)’ //按‘a(chǎn)’鍵反應(yīng)時(shí)間事件定時(shí)器聲明msTimermyTimer;//將myTimer申明ms為單位的變量timermyTimer; //將myTimer申明s為單位的變量定時(shí)器函數(shù)setTimer(myTimer,20); //將定時(shí)值設(shè)定為20ms,并啟動(dòng)cancelTimer(myTimer); //停止定時(shí)器myTimer定時(shí)器事件ontimermyTimer //對(duì)myTimer設(shè)定的時(shí)間到反應(yīng)時(shí)間事件定時(shí)器聲明環(huán)境變量事件環(huán)境變量函數(shù)getValue() //獲取環(huán)境變量的值putValue() //設(shè)置環(huán)境變量的值環(huán)境變量事件onenvVarXXX環(huán)境變量事件環(huán)境變量函數(shù)數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型名稱(chēng)注釋無(wú)符號(hào)整型byte1個(gè)字節(jié)word2個(gè)字節(jié)dword4個(gè)字節(jié)有符號(hào)整型int2個(gè)字節(jié)long4個(gè)字節(jié)浮點(diǎn)型float8個(gè)字節(jié)double8個(gè)字節(jié)CAN報(bào)文message定時(shí)器timer秒msTimer毫秒單個(gè)字符char1個(gè)字節(jié)數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型名稱(chēng)注釋無(wú)符號(hào)整型byte1個(gè)字節(jié)word2數(shù)據(jù)定義全局變量和局部變量變量定義inti;message0x123HiRain;messageMotorDataVector;數(shù)據(jù)定義全局變量和局部變量完整的CAPL程序三個(gè)部分變量各種事件自定義函數(shù)onstart

{… //過(guò)程指令塊

}onmessagexxx{… //過(guò)程指令塊

}onkey‘1’{… //過(guò)程指令塊

}My_function_1(Para_1,Para_2,…){… //函數(shù)體}…My_function_n(Para_1,Para_2,…){… //函數(shù)體}variables{… //申明全局變量

}完整的CAPL程序三個(gè)部分onstartMy_functCAPL輸出文本W(wǎng)riteWindowwrite函數(shù)inth=100;charch=‘a(chǎn)’;chars100[8]=“hundred”;write(“Hundredasanumber:%d,%x”,h,h);write(“Hundredasastring:%s”,s100);write(“Thesquarerootoftwois%6.4g”,sqrt(2.0));CAPL輸出文本W(wǎng)riteWindowinth=100;消息處理常用語(yǔ)句if(this.id==100){…}msg.can=2;msg.dlc=8;dwordt;t=this.time;if(this.dir!=RX){return;}this.CarSpeed=200;消息處理常用語(yǔ)句if(this.id==100){…}關(guān)鍵字thisthis代表觸發(fā)事件的對(duì)象onmessage100{

bytebyte_0; byte_0=this.byte(0); ...}onenvVarSwitch{ intval; val=getvalue(this); ...}關(guān)鍵字thisthis代表觸發(fā)事件的對(duì)象onmessage報(bào)文處理onmessage0x64{

if(this.byte(2)==0xFF)

write(“Thirdbyteofthemessageisinvalid”);}onmessageMotorData{

if(this.temperature.phys>=150)

write(“Warning:criticaltemperature”);}報(bào)文處理onmessage0x64鍵盤(pán)處理onkey‘a(chǎn)’{

messageMotorDatamMoDa;mMoDa.temperature.phys=60;mMoDa.speed.phys=4300;

output(mMoDa);}onkey‘b’{

message100m100={dlc=1};m100.byte(0)=0x0B;

output(m100);}鍵盤(pán)處理onkey‘a(chǎn)’{定時(shí)器處理Variables {

message0x555msg1={dlc=1};

msTimertimer1; }onstart { setTimer(timer1,100); }ontimertimer1 { setTimer(timer1,100);

msg1.byte(0)=msg1.byte(0)+1;

output(msg1); }定時(shí)器處理Variables 環(huán)境變量處理onenvVarevSwitch{

message

MotorDatamsg;

msg.bsSwitch=getValue(this);

output(msg);}環(huán)境變量處理onenvVarevSwitch練習(xí)1當(dāng)CANoe啟動(dòng)時(shí),向WriteWindow輸出一句話(huà),例如“Hellotheworld!”練習(xí)1當(dāng)CANoe啟動(dòng)時(shí),向WriteWindow輸出一句練習(xí)2利用發(fā)生器模塊周期性發(fā)送某一報(bào)文,例如每隔200ms發(fā)送一條EngineData報(bào)文。每當(dāng)按下a鍵,在WriteWindow窗口輸出一句話(huà),例如“XXXEngineDatamessageshavesent.”注:XXX為已經(jīng)發(fā)送的EngineData報(bào)文數(shù)量。練習(xí)2利用發(fā)生器模塊周期性發(fā)送某一報(bào)文,例如每隔200ms發(fā)練習(xí)3不用發(fā)生器模塊實(shí)現(xiàn)Enginedata報(bào)文的周期性發(fā)送。每當(dāng)按下a鍵時(shí),EngineData里面EngSpeed信號(hào)值為2000;當(dāng)按下b鍵盤(pán)時(shí),EngineData里面EngSpeed信號(hào)值為4000;如果EngineData里面EngSpeed信號(hào)為4000,則發(fā)送ABSData報(bào)文,同時(shí)在WriteWindow輸出“Warning!”當(dāng)按下c鍵時(shí),停止EngineData報(bào)文發(fā)送。練習(xí)3不用發(fā)生器模塊實(shí)現(xiàn)Enginedata報(bào)文的周期性發(fā)送歡迎進(jìn)入CANdb++Editor的世界DBC文件編輯工具啟動(dòng)CANoeFile->OpenCANdbEditor點(diǎn)擊歡迎進(jìn)入CANdb++Editor的世界DBC文件編輯工具創(chuàng)建一個(gè)新的CAN數(shù)據(jù)庫(kù)File->CreateDatabase…選擇模板,鼠標(biāo)雙擊或按[OK]按鈕指定數(shù)據(jù)庫(kù)文件類(lèi)型、文件名及保存目錄按[Save]按鈕。一個(gè)新數(shù)據(jù)庫(kù)創(chuàng)建完成創(chuàng)建一個(gè)新的CAN數(shù)據(jù)庫(kù)File->CreateDatab創(chuàng)建對(duì)象(信號(hào)、報(bào)文、節(jié)點(diǎn)、環(huán)境變量和ECU)在Overview窗口左邊

選擇所需創(chuàng)建對(duì)象的類(lèi)型右鍵點(diǎn)擊對(duì)象類(lèi)型,

在快捷菜單中選擇New…使用配置對(duì)話(huà)框設(shè)置

所創(chuàng)建對(duì)象的系統(tǒng)參數(shù)值點(diǎn)擊[確定]按鈕,

一個(gè)新對(duì)象便創(chuàng)建完畢創(chuàng)建對(duì)象(信號(hào)、報(bào)文、節(jié)點(diǎn)、環(huán)境變量和ECU)在Overvi復(fù)制已有對(duì)象Copy-Paste選擇已有對(duì)象Ctrl+c選擇對(duì)象類(lèi)型Ctrl+v復(fù)制已有對(duì)象Copy-Paste修改/編輯已有對(duì)象直接雙擊修改/編輯已有對(duì)象直接雙擊對(duì)象鏈接(1/2)信號(hào)與報(bào)文之間的連接發(fā)送報(bào)文與節(jié)點(diǎn)之間的連接鼠標(biāo)拖拽或Copy-Insert對(duì)象鏈接(1/2)信號(hào)與報(bào)文之間的連接對(duì)象鏈接(2/2)接收?qǐng)?bào)文與節(jié)點(diǎn)之間的連接通過(guò)信號(hào)間接定義雙擊節(jié)點(diǎn),

選擇MappedRxSig.頁(yè)簽點(diǎn)擊Add…,選擇接收信號(hào)

點(diǎn)擊OK點(diǎn)擊確定對(duì)象鏈接(2/2)接收?qǐng)?bào)文與節(jié)點(diǎn)之間的連接通信矩陣View->CommunicationMatrix…顯示信號(hào)、消息、及網(wǎng)絡(luò)節(jié)點(diǎn)的關(guān)系以信號(hào)為行,網(wǎng)絡(luò)節(jié)點(diǎn)為列消息名顯示于表中,對(duì)應(yīng)了包含的信號(hào)與發(fā)送/接收的節(jié)點(diǎn)通信矩陣View->CommunicationMatrix數(shù)值表(1/2)新建數(shù)值表View->ValueTables右鍵點(diǎn)擊空白處,

選擇New…在對(duì)話(huà)框中輸入數(shù)值,

點(diǎn)擊確定新的數(shù)值表創(chuàng)建完成數(shù)值表(1/2)新建數(shù)值表數(shù)值表(2/2)分配數(shù)值表數(shù)值表可以分配給信號(hào)或環(huán)境變量數(shù)值表(2/2)分配數(shù)值表屬性列表VectorToolChainAttributesGeneralManufacturerInteractionLayerGenMsgCycleTimeTransportProtocolandDiagnosticsDiagRequest,DiaResponseNetworkManagementNmBaseAddress,NmStationAdressToolspecificBusType屬性列表VectorToolChainAttribut新建屬性View->AttributeDefinitions右鍵點(diǎn)擊空白處,

選擇New…在對(duì)話(huà)框中輸入相關(guān)參數(shù),

點(diǎn)擊確定新的屬性創(chuàng)建完成新建屬性View->AttributeDefinition對(duì)象屬性修改雙擊對(duì)象對(duì)象屬性修改雙擊對(duì)象一致性檢查File->ConsistencyCheck一致性檢查File->ConsistencyCheck數(shù)據(jù)導(dǎo)出選擇需要導(dǎo)出的對(duì)象信號(hào),報(bào)文,節(jié)點(diǎn),ECU或網(wǎng)絡(luò)File->Export->ExportListofObjects數(shù)據(jù)導(dǎo)出選擇需要導(dǎo)出的對(duì)象創(chuàng)建面板/虛擬儀表PanelEditor傳統(tǒng)的面板編輯器File->OpenPanelEditorPanelDesigner新的面板編輯器File->OpenPanelDesigner創(chuàng)建面板/虛擬儀表PanelEditorPanelEditor面板區(qū)控件區(qū)PanelEditor面板區(qū)控件區(qū)面板設(shè)置Options->Windowsetting定義面板名稱(chēng)面板尺寸背景顏色透明色控件的缺省字體和顏色Options->Changegrid網(wǎng)格大小網(wǎng)格可視面板設(shè)置Options->Windowsetting控件列表圖標(biāo)名稱(chēng)控件列表圖標(biāo)名稱(chēng)文本與位圖文本位圖文本與位圖文本位圖開(kāi)關(guān)與多態(tài)位圖開(kāi)關(guān)多態(tài)位圖開(kāi)關(guān)與多態(tài)位圖開(kāi)關(guān)多態(tài)位圖其它常見(jiàn)的控件十六進(jìn)制滑動(dòng)條儀表輸入/輸出顯示其它常見(jiàn)的控件十六進(jìn)制滑動(dòng)條儀表輸入/輸出顯示面板使用保存面板File->Save使用面板(CANoe)Configuration->PanelConfiguration添加面板顯示面板面板使用保存面板添加面板顯示面板PanelDesigner控件窗口控件屬性工作區(qū)對(duì)象窗口PanelDesigner控件窗口控件屬性工作區(qū)對(duì)象窗口設(shè)置Settings->ControlsProperties設(shè)置控件的字體、顏色和字號(hào)Settings->SymbolExplorer設(shè)置信號(hào)、環(huán)境變量和系統(tǒng)變量對(duì)應(yīng)的默認(rèn)控件設(shè)置Settings->ControlsPropertie對(duì)象窗口顯示信號(hào)、環(huán)境變量和系統(tǒng)變量直接拖拽變量到工作區(qū)生成控件對(duì)象窗口顯示信號(hào)、環(huán)境變量和系統(tǒng)變量工作區(qū)創(chuàng)建面板支持同時(shí)編輯多個(gè)面板工作區(qū)創(chuàng)建面板控件窗口顯示控件雙擊在工作區(qū)產(chǎn)生控件控件窗口顯示控件控件屬性窗口顯示選中控件的相關(guān)設(shè)置點(diǎn)擊某項(xiàng)設(shè)置后會(huì)在下方出現(xiàn)相關(guān)說(shuō)明控件屬性窗口顯示選中控件的相關(guān)設(shè)置練習(xí)1I/O接口應(yīng)用程序總線(xiàn)接口I/O接口應(yīng)用程序總線(xiàn)接口影響練習(xí)1I/O接口I/O接口影響練習(xí)2練習(xí)2小提示MeasurementSetup窗口和SimulationSetup窗口是CANoe的主要窗口,進(jìn)行數(shù)據(jù)流規(guī)劃幾乎窗口中的所有對(duì)象均可通過(guò)點(diǎn)擊鼠標(biāo)右鍵來(lái)訪(fǎng)問(wèn)交互菜單所有數(shù)據(jù)傳輸?shù)皆u(píng)估模塊時(shí),均會(huì)在對(duì)應(yīng)窗口以各自的方式進(jìn)行顯示,記錄模塊除外配置文件可以保存CANoe中的所有設(shè)置;可以使用已有的配置文件作為新任務(wù)的基礎(chǔ),進(jìn)行簡(jiǎn)單的修改形成新的配置,提高效率小提示MeasurementSetup窗口和Simulat82.一定要充分利用生活中的閑暇時(shí)光,不要讓任何一個(gè)發(fā)展自我的機(jī)會(huì)溜走。20.火把倒下,火焰依然向上。43.啃老是無(wú)奈的,你需要改變,父母給你時(shí)間,但不能等你一輩子,一定要進(jìn)取。44.一個(gè)人失敗的最大原因,就是對(duì)于自己的能力永遠(yuǎn)不敢充分信任,甚至認(rèn)為自己必將失??!69.如果咱們做與不做都會(huì)有人笑,如果做不好與做得好還會(huì)有人笑,那么咱們索性就做得更好,來(lái)給人笑吧!45.人生至善,就是對(duì)生活樂(lè)觀(guān),對(duì)工作愉快,對(duì)事業(yè)興奮。86.一路上的行走,你是會(huì)遇上很多的人。也許是陪你走一站的,也許只是一個(gè)過(guò)客,于是生命中留下了許多逗號(hào),一段經(jīng)歷一個(gè)逗號(hào),一段感情一個(gè)逗號(hào),一段付出一個(gè)逗號(hào),無(wú)數(shù)個(gè)逗號(hào)的等待,也都只是為最終那個(gè)句號(hào)。42.活著必定要經(jīng)歷一些挫折,而我們依然堅(jiān)強(qiáng)戰(zhàn)勝每一次挫折,只要我們還活著,就值得慶幸!61.成功失敗無(wú)所謂,拍拍灰只要你還知道自己是誰(shuí)。34.積極者相信只有推動(dòng)自己才能推動(dòng)世界,只要推動(dòng)自己就能推動(dòng)世界。43.沒(méi)有退路時(shí)潛能就發(fā)揮出來(lái)了。35.也許有些人很可惡,有些人很卑鄙。而當(dāng)我設(shè)身為他想象的時(shí)候,我才知道:他比我還可憐。所以請(qǐng)?jiān)徦心阋?jiàn)過(guò)的人,好人或者壞人。28.每個(gè)人心里都有一段傷痕,時(shí)間才是最好的療劑。44.一個(gè)人失敗的最大原因,就是對(duì)于自己的能力永遠(yuǎn)不敢充分信任,甚至認(rèn)為自己必將失?。?1.只要能收獲甜蜜,荊棘叢中也會(huì)有蜜蜂忙碌的身影。67.任何問(wèn)題都有解決的辦法,無(wú)法可想的事是沒(méi)有的?!獝?ài)迪生10.生活學(xué)會(huì)簡(jiǎn)單,做事大凡認(rèn)真,思想糾于復(fù)雜,人才能在有限的人性光芒面前坐看命運(yùn)的誤差。82.一定要充分利用生活中的閑暇時(shí)光,不要讓任何一個(gè)發(fā)展自我96CANoe概述CAN總線(xiàn)開(kāi)發(fā)工具測(cè)試分析仿真記錄CANoe概述CAN總線(xiàn)開(kāi)發(fā)工具CANoe在總線(xiàn)開(kāi)發(fā)中的作用(1)Phase1simul.nodensimul.node2Simulatedbus…simul.node1ωKl15Virtualtotalsystem…CANoe在總線(xiàn)開(kāi)發(fā)中的作用(1)Phase1simul.CANoe在總線(xiàn)開(kāi)發(fā)中的作用(2)Phase2simul.node2simulatedrest-of-bus…realnode1ωKl15simul.nodenVirtualsubystemRealsubsystem…phys.busCANoe在總線(xiàn)開(kāi)發(fā)中的作用(2)Phase2simul.CANoe在總線(xiàn)開(kāi)發(fā)中的作用(3)Phase3realnode2…realnode1ωKl15Realtotalsystemrealnoden…PhysicalbusAnalysis(inreal-time)CANoe在總線(xiàn)開(kāi)發(fā)中的作用(3)Phase3real…r硬件接口卡&“狗”CANcardXLCANcaseXL收發(fā)器CANcab(CANpiggy)251,1041,1054…LINcab(LINpiggy)7259CAN卡硬件接口卡&“狗”CAN卡CANoe組成功能強(qiáng)大、操作簡(jiǎn)單CANoe數(shù)據(jù)庫(kù)支持CANdb++Editor可編程CAPL虛擬儀表PanelEditor&PanelDesignerCANoe組成功能強(qiáng)大、操作簡(jiǎn)單CANoe工程環(huán)境CANoe工程環(huán)境多總線(xiàn)軟件硬件控制面板VectorHardwareLicense->Overview多總線(xiàn)軟件設(shè)置(1)硬件CAN卡類(lèi)型(編號(hào))收發(fā)器類(lèi)型應(yīng)用程序通道應(yīng)用程序License信息設(shè)置(1)硬件設(shè)置(2)CANoe通道設(shè)置Configuration->OptionsConfigurationSettings->ChannelUsage設(shè)置(2)CANoe靈活=復(fù)雜HWchannelsChannel1 Channel2Channel1Channel2PiggyBack1PiggyBack2CANcardXL#1CANcaseXLCANcardXL#2HardwareCANalyzer1CANalyzer2...CANoe1CANoe2CANoe1forLIN...AppchannelsApplication靈活=復(fù)雜HWchannelsChannel1 Ch從復(fù)雜到簡(jiǎn)單CANoe波特率設(shè)置Configuration->HardwareConfiguration從復(fù)雜到簡(jiǎn)單CANoe基本術(shù)語(yǔ)——報(bào)文(消息)與信號(hào)報(bào)文:enginedata(ID100)ID100B0B1B2CRC信號(hào)發(fā)動(dòng)機(jī)溫度(第二字節(jié),0-6位)未用(第二字節(jié),第七位)發(fā)動(dòng)機(jī)轉(zhuǎn)速(第一,二字節(jié))轉(zhuǎn)換規(guī)則發(fā)動(dòng)機(jī)轉(zhuǎn)速:rpm=1*Bitvalue(0xFF代表錯(cuò)誤)發(fā)動(dòng)機(jī)溫度:oC=2*Bitvalue–50(0x7F代表錯(cuò)誤)基本術(shù)語(yǔ)——報(bào)文(消息)與信號(hào)報(bào)文:enginedata基本術(shù)語(yǔ)——環(huán)境變量與系統(tǒng)變量環(huán)境變量節(jié)點(diǎn)的I/O信號(hào)可用于面板或真實(shí)I/O系統(tǒng)變量節(jié)點(diǎn)內(nèi)部參數(shù)或需要觀(guān)測(cè)的某個(gè)數(shù)值例如:系統(tǒng)變量1=報(bào)文1.信號(hào)1-報(bào)文2.信號(hào)2基本術(shù)語(yǔ)——環(huán)境變量與系統(tǒng)變量環(huán)境變量歡迎進(jìn)入CANoe的世界CANoeCANdb++EditorCAPLPanelEditor&PanelDesigner歡迎進(jìn)入CANoe的世界CANoe歡迎進(jìn)入CANoe的世界CANoe8大窗口TraceWindowBusStatisticsWindowStatisticsWindowDataWindowGraphicWindowWriteWindowSimulationSetupMeasurementSetup歡迎進(jìn)入CANoe的世界CANoeCANoe窗口介紹(1)TraceWindow報(bào)文ID和報(bào)文名稱(chēng)(數(shù)據(jù)庫(kù))信號(hào)(數(shù)據(jù)庫(kù))時(shí)間(相對(duì)值或絕對(duì)值)通道DLCDir(Tx或Rx)更多內(nèi)容見(jiàn)右鍵點(diǎn)擊窗口空白處->Configuration->ColumnsCANoe窗口介紹(1)TraceWindow蒙太奇(1)在CANoe中添加數(shù)據(jù)庫(kù)View->SimulatioinSetup蒙太奇(1)在CANoe中添加數(shù)據(jù)庫(kù)蒙太奇(2)符號(hào)化顯示與十進(jìn)制/十六進(jìn)制切換Globalswitches:Hex/DecandNumeric/Symbolictoggles蒙太奇(2)符號(hào)化顯示與十進(jìn)制/十六進(jìn)制切換GlobalsCANoe窗口介紹(1)清空Trace窗口暫停Trace窗口時(shí)間顯示切換報(bào)文顯示切換CANoe窗口介紹(1)清空Trace窗口暫停Trace窗口CANoe窗口介紹(2)DataWindow數(shù)據(jù)庫(kù)!信號(hào)名稱(chēng)信號(hào)值(Value)信號(hào)單位原始值(RawValue)Bar圖CANoe窗口介紹(2)DataWindowCANoe窗口介紹(2)DataWindow添加信號(hào)右鍵單擊空白處AddSignals選擇需要的信號(hào)CANoe窗口介紹(2)DataWindowCANoe窗口介紹(3)GraphicsWindows數(shù)據(jù)庫(kù)!顯示信號(hào)曲線(xiàn)不同的顏色和線(xiàn)形右鍵單擊空白處選擇Configuration放大、縮小、平移…CANoe窗口介紹(3)GraphicsWindowsCANoe窗口介紹(3)GraphicsWindows添加信號(hào)右鍵單擊空白處AddSignals選擇需要的信號(hào)CANoe窗口介紹(3)GraphicsWindowsCANoe窗口介紹(4)StatisticsWindow顯示報(bào)文出現(xiàn)頻率顯示錯(cuò)誤幀出現(xiàn)頻率統(tǒng)計(jì)報(bào)告右鍵單擊空白處ConfigurationActive生成統(tǒng)計(jì)報(bào)告(WriteWindow)MessagefrequencyIDCANoe窗口介紹(4)StatisticsWindowMCANoe窗口介紹(5)BusStatisticsWindow總線(xiàn)負(fù)載數(shù)據(jù)幀錯(cuò)誤幀CAN卡控制器狀態(tài)CANoe窗口介紹(5)BusStatisticsWinCANoe窗口介紹(6)WriteWindowCAN卡控制器狀態(tài)License信息統(tǒng)計(jì)報(bào)告CAPL輸出窗口Printf=WriteCANoe窗口介紹(6)WriteWindow蒙太奇(3)DesktopCreateNewDesktopRenameDesktop蒙太奇(3)Desktop蒙太奇(4)固定窗口蒙太奇(4)固定窗口CANoe窗口介紹(7)MeasurementSetupView->MeasurementSetup每個(gè)模塊對(duì)應(yīng)一個(gè)窗口增加新模塊(窗口)插入功能塊數(shù)據(jù)記錄CANoe窗口介紹(7)MeasurementSetupCANoe窗口介紹(7)新增模塊(窗口)CANoe窗口介紹(7)新增模塊(窗口)CANoe窗口介紹(7)插入功能塊CAPL節(jié)點(diǎn)發(fā)生器模塊回放模塊觸發(fā)模塊過(guò)濾器模塊CANoe窗口介紹(7)插入功能塊CANoe窗口介紹(7)過(guò)濾器模塊通道過(guò)濾(ChannelFilter)報(bào)文過(guò)濾(Filter)變量過(guò)濾(Variables)CANoe窗口介紹(7)過(guò)濾器模塊CANoe窗口介紹(7)數(shù)據(jù)記錄默認(rèn)狀態(tài)關(guān)閉多種記錄文件類(lèi)型多種記錄配置方式CANoe窗口介紹(7)數(shù)據(jù)記錄CANoe窗口介紹(7)記錄文件右鍵點(diǎn)擊文件圖標(biāo)->LoggingCANoe窗口介紹(7)記錄文件CANoe窗口介紹(7)記錄配置方式雙擊Logging模塊全部記錄單次記錄觸發(fā)記錄CANoe窗口介紹(7)記錄配置方式蒙太奇(5)

數(shù)據(jù)記錄的目的是為了離線(xiàn)分析Mode->ToOffline蒙太奇(5)數(shù)據(jù)記錄的目的是為了離線(xiàn)分析CANoe窗口介紹(8)SimulationSetupView->SimulationSetup發(fā)生器交互式發(fā)生器CAPL節(jié)點(diǎn)CANoe窗口介紹(8)SimulationSetupCANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)發(fā)生器模塊CANoe窗口介紹(8)交互式發(fā)生器模塊CANoe窗口介紹(8)交互式發(fā)生器模塊歡迎進(jìn)入CAPL的世界CAPL

(CANAccessProgrammingLanguage)類(lèi)C語(yǔ)言仿真單個(gè)節(jié)點(diǎn)和整個(gè)網(wǎng)絡(luò)外部環(huán)境測(cè)試面向事件的編程語(yǔ)言總線(xiàn)事件鍵盤(pán)事件時(shí)間事件歡迎進(jìn)入CAPL的世界CAPL(CANAccessPrCAPLBrowser標(biāo)題欄菜單條工具條瀏覽樹(shù)窗格編譯信息窗格狀態(tài)條全局變量編輯窗格CAPL程序編輯窗格CAPLBrowser標(biāo)題欄菜單條工具條瀏覽樹(shù)窗格編譯信息CAPL事件事件類(lèi)型事件名程序執(zhí)行條件事件過(guò)程語(yǔ)法結(jié)構(gòu)*系統(tǒng)事件PreStartCANoe初始化時(shí)執(zhí)行onpreStart{…}Start測(cè)量開(kāi)始時(shí)執(zhí)行onstart{…}StopMeasuremet測(cè)量結(jié)束時(shí)執(zhí)行onstopMeasurement{…}CAN控制器事件BusOff硬件檢測(cè)到BusOff時(shí)執(zhí)行onbusOff{…}ErrorActive硬件檢測(cè)到ErrorActive時(shí)執(zhí)行onerrorActive{…}ErrorPassive硬件檢測(cè)到ErrorPassive時(shí)執(zhí)行onerrorPassive{…}WarningLimit硬件檢測(cè)到WarningLimit時(shí)執(zhí)行onwarningLimit{…}CAN消息事件自定義接收到指定的消息時(shí)執(zhí)行onmessageMessage

{…}時(shí)間事件自定義定時(shí)時(shí)間朝過(guò)時(shí)執(zhí)行ontimerTimer

{…}鍵盤(pán)事件自定義鍵值指定的鍵被下時(shí)執(zhí)行onkeyKey

{…}錯(cuò)誤幀事件ErrorFrame硬件每次檢測(cè)到錯(cuò)誤幀時(shí)執(zhí)行onerrorFrame{…}環(huán)境變量事件自定義指定的環(huán)境變量值改變時(shí)執(zhí)行onenvVarEnvVar{…}CAPL事件事件類(lèi)型事件名程序執(zhí)行條件事件過(guò)程語(yǔ)法結(jié)構(gòu)*系CAPL基本語(yǔ)法類(lèi)C語(yǔ)言,語(yǔ)法與C語(yǔ)言基本相同注釋// 放置在需要注釋的語(yǔ)句之前,注釋單行/* 注釋起始符,其后的內(nèi)容被注釋*/ 注釋結(jié)束符,結(jié)束由‘/*’開(kāi)始的注釋分號(hào)

程序結(jié)束標(biāo)識(shí)大括號(hào)

函數(shù)體counter=counter+1;if(counter==256){counter=0;stop();}CAPL基本語(yǔ)法類(lèi)C語(yǔ)言,語(yǔ)法與C語(yǔ)言基本相同counter消息事件onmessage123//對(duì)消息123(dec)反應(yīng)onmessage0x123//對(duì)消息123(hex)反應(yīng)onmessageMotorData//對(duì)消息MotorData(符號(hào)名字)反應(yīng)onmessageCAN1.123//對(duì)CAN通道1收到消息123反應(yīng)onmessage*//對(duì)所有消息反應(yīng)onmessage100-200//對(duì)100-200間消息反應(yīng)消息事件onmessage123鍵盤(pán)事件onkey‘a(chǎn)’ //按‘a(chǎn)’鍵反應(yīng)onkey‘’ //按空格鍵反應(yīng)onkey0x20 //按空格鍵反應(yīng)onkeyF1 //按F1鍵反應(yīng)onkeyCtrl-F12 //按Ctrl+F12鍵反應(yīng)onkeyPageUP //按PageUp鍵反應(yīng)onkeyHome //按Home鍵反應(yīng)onkey* //按所有鍵反應(yīng)鍵盤(pán)事件onkey‘a(chǎn)’ //按‘a(chǎn)’鍵反應(yīng)時(shí)間事件定時(shí)器聲明msTimermyTimer;//將myTimer申明ms為單位的變量timermyTimer; //將myTimer申明s為單位的變量定時(shí)器函數(shù)setTimer(myTimer,20); //將定時(shí)值設(shè)定為20ms,并啟動(dòng)cancelTimer(myTimer); //停止定時(shí)器myTimer定時(shí)器事件ontimermyTimer //對(duì)myTimer設(shè)定的時(shí)間到反應(yīng)時(shí)間事件定時(shí)器聲明環(huán)境變量事件環(huán)境變量函數(shù)getValue() //獲取環(huán)境變量的值putValue() //設(shè)置環(huán)境變量的值環(huán)境變量事件onenvVarXXX環(huán)境變量事件環(huán)境變量函數(shù)數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型名稱(chēng)注釋無(wú)符號(hào)整型byte1個(gè)字節(jié)word2個(gè)字節(jié)dword4個(gè)字節(jié)有符號(hào)整型int2個(gè)字節(jié)long4個(gè)字節(jié)浮點(diǎn)型float8個(gè)字節(jié)double8個(gè)字節(jié)CAN報(bào)文message定時(shí)器timer秒msTimer毫秒單個(gè)字符char1個(gè)字節(jié)數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型名稱(chēng)注釋無(wú)符號(hào)整型byte1個(gè)字節(jié)word2數(shù)據(jù)定義全局變量和局部變量變量定義inti;message0x123HiRain;messageMotorDataVector;數(shù)據(jù)定義全局變量和局部變量完整的CAPL程序三個(gè)部分變量各種事件自定義函數(shù)onstart

{… //過(guò)程指令塊

}onmessagexxx{… //過(guò)程指令塊

}onkey‘1’{… //過(guò)程指令塊

}My_function_1(Para_1,Para_2,…){… //函數(shù)體}…My_function_n(Para_1,Para_2,…){… //函數(shù)體}variables{… //申明全局變量

}完整的CAPL程序三個(gè)部分onstartMy_functCAPL輸出文本W(wǎng)riteWindowwrite函數(shù)inth=100;charch=‘a(chǎn)’;chars100[8]=“hundred”;write(“Hundredasanumber:%d,%x”,h,h);write(“Hundredasastring:%s”,s100);write(“Thesquarerootoftwois%6.4g”,sqrt(2.0));CAPL輸出文本W(wǎng)riteWindowinth=100;消息處理常用語(yǔ)句if(this.id==100){…}msg.can=2;msg.dlc=8;dwordt;t=this.time;if(this.dir!=RX){return;}this.CarSpeed=200;消息處理常用語(yǔ)句if(this.id==100){…}關(guān)鍵字thisthis代表觸發(fā)事件的對(duì)象onmessage100{

bytebyte_0; byte_0=this.byte(0); ...}onenvVarSwitch{ intval; val=getvalue(this); ...}關(guān)鍵字thisthis代表觸發(fā)事件的對(duì)象onmessage報(bào)文處理onmessage0x64{

if(this.byte(2)==0xFF)

write(“Thirdbyteofthemessageisinvalid”);}onmessageMotorData{

if(this.temperature.phys>=150)

write(“Warning:criticaltemperature”);}報(bào)文處理onmessage0x64鍵盤(pán)處理onkey‘a(chǎn)’{

messageMotorDatamMoDa;mMoDa.temperature.phys=60;mMoDa.speed.phys=4300;

output(mMoDa);}onkey‘b’{

message100m100={dlc=1};m100.byte(0)=0x0B;

output(m100);}鍵盤(pán)處理onkey‘a(chǎn)’{定時(shí)器處理Variables {

message0x555msg1={dlc=1};

msTimertimer1; }onstart { setTimer(timer1,100); }ontimertimer1 { setTimer(timer1,100);

msg1.byte(0)=msg1.byte(0)+1;

output(msg1); }定時(shí)器處理Variables 環(huán)境變量處理onenvVarevSwitch{

message

MotorDatamsg;

msg.bsSwitch=getValue(this);

output(msg);}環(huán)境變量處理onenvVarevSwitch練習(xí)1當(dāng)CANoe啟動(dòng)時(shí),向WriteWindow輸出一句話(huà),例如“Hellotheworld!”練習(xí)1當(dāng)CANoe啟動(dòng)時(shí),向WriteWindow輸出一句練習(xí)2利用發(fā)生器模塊周期性發(fā)送某一報(bào)文,例如每隔200ms發(fā)送一條EngineData報(bào)文。每當(dāng)按下a鍵,在WriteWindow窗口輸出一句話(huà),例如“XXXEngineDatamessageshavesent.”注:XXX為已經(jīng)發(fā)送的EngineData報(bào)文數(shù)量。練習(xí)2利用發(fā)生器模塊周期性發(fā)送某一報(bào)文,例如每隔200ms發(fā)練習(xí)3不用發(fā)生器模塊實(shí)現(xiàn)Enginedata報(bào)文的周期性發(fā)送。每當(dāng)按下a鍵時(shí),EngineData里面EngSpeed信號(hào)值為2000;當(dāng)按下b鍵盤(pán)時(shí),EngineData里面EngSpeed信號(hào)值為4000;如果EngineData里面EngSpeed信號(hào)為4000,則發(fā)送ABSData報(bào)文,同時(shí)在WriteWindow輸出“Warning!”當(dāng)按下c鍵時(shí),停止EngineData報(bào)文發(fā)送。練習(xí)3不用發(fā)生器模塊實(shí)現(xiàn)Enginedata報(bào)文的周期性發(fā)送歡迎進(jìn)入CANdb++Editor的世界DBC文件編輯工具啟動(dòng)CANoeFile->OpenCANdbEditor點(diǎn)擊歡迎進(jìn)入CANdb++Editor的世界DBC文件編輯工具創(chuàng)建一個(gè)新的CAN數(shù)據(jù)庫(kù)File->CreateDatabase…選擇模板,鼠標(biāo)雙擊或按[OK]按鈕指定數(shù)據(jù)庫(kù)文件類(lèi)型、文件名及保存目錄按[Save]按鈕。一個(gè)新數(shù)據(jù)庫(kù)創(chuàng)建完成創(chuàng)建一個(gè)新的CAN數(shù)據(jù)庫(kù)File->CreateDatab創(chuàng)建對(duì)象(信號(hào)、報(bào)文、節(jié)點(diǎn)、環(huán)境變量和ECU)在Overview窗口左邊

選擇所需創(chuàng)建對(duì)象的類(lèi)型右鍵點(diǎn)擊對(duì)象類(lèi)型,

在快捷菜單中選擇New…使用配置對(duì)話(huà)框設(shè)置

所創(chuàng)建對(duì)象的系統(tǒng)參數(shù)值點(diǎn)擊[確定]按鈕,

一個(gè)新對(duì)象便創(chuàng)建完畢創(chuàng)建對(duì)象(信號(hào)、報(bào)文、節(jié)點(diǎn)、環(huán)境變量和ECU)在Overvi復(fù)制已有對(duì)象Copy-Paste選擇已有對(duì)象Ctrl+c選擇對(duì)象類(lèi)型Ctrl+v復(fù)制已有對(duì)象Copy-Paste修改/編輯已有對(duì)象直接雙擊修改/編輯已有對(duì)象直接雙擊對(duì)象鏈接(1/2)信號(hào)與報(bào)文之間的連接發(fā)送報(bào)文與節(jié)點(diǎn)之間的連接鼠標(biāo)拖拽或Copy-Insert對(duì)象鏈接(1/2)信號(hào)與報(bào)文之間的連接對(duì)象鏈接(2/2)接收?qǐng)?bào)文與節(jié)點(diǎn)之間的連接通過(guò)信號(hào)間接定義雙擊節(jié)點(diǎn),

選擇MappedRxSig.頁(yè)簽點(diǎn)擊Add…,選擇接收信號(hào)

點(diǎn)擊OK點(diǎn)擊確定對(duì)象鏈接(2/2)接收?qǐng)?bào)文與節(jié)點(diǎn)之間的連接通信矩陣View->CommunicationMatrix…顯示信號(hào)、消息、及網(wǎng)絡(luò)節(jié)點(diǎn)的關(guān)系以信號(hào)為行,網(wǎng)絡(luò)節(jié)點(diǎn)為列消息名顯示于表中,對(duì)應(yīng)了包含的信號(hào)與發(fā)送/接收的節(jié)點(diǎn)通信矩陣View->CommunicationMatrix數(shù)值表(1/2)新建數(shù)值表View->ValueTables右鍵點(diǎn)擊空白處,

選擇New…在對(duì)話(huà)框中輸入數(shù)值,

點(diǎn)擊確定新的數(shù)值表創(chuàng)建完成數(shù)值表(1/2)新建數(shù)值表

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論