基于SAE J1939協(xié)議的車輛網(wǎng)絡(luò)集成方法
液晶顯示器的功能有:在指定位置顯示8×16英文字符,在指定位置畫線,在指定位置顯示預(yù)置位圖,在指定位置按指定方式自動顯示日期時間、讀取年月日、讀取時分秒、設(shè)置日期時間、顯示/關(guān)閉光標(biāo)、打開/關(guān)閉背光。當(dāng)進(jìn)行不同程度的報警時,通過蜂鳴器發(fā)出的緩和或尖銳兩種不同的聲音進(jìn)行提示。
4 車輛網(wǎng)絡(luò)軟件設(shè)計
4.1 信息交互ECU
信息交互ECU選用Freescale公司S12X系列中的MC;9S12XDP512作為主芯片,使用了嵌入式操作系統(tǒng)uC/()S-II。S12X的從CPU――中斷協(xié)處理器XGate,處理μC/OS-II時鐘節(jié)拍中斷并作任務(wù)切換,提高了系統(tǒng)的實時性,減輕了主CPU的負(fù)荷。XGate還用于處理與液晶顯示器串口通信、與PC串口通信、查詢鍵盤的有效輸入,并管理報警蜂鳴器。
信息交互ECU在μC/0S-II下創(chuàng)建了5個任務(wù):系統(tǒng)初始任務(wù)、指示燈任務(wù)、儀表數(shù)據(jù)任務(wù)、鍵盤相關(guān)任務(wù)、J1939處理任務(wù)。系統(tǒng)初始任務(wù)打開RTI中斷,上電自檢,打開日期時間顯示;指示燈任務(wù)周期性地顯示信號指示燈及紅色信號指示燈報警提示,顯示診斷指示燈及DMl來源,處理報警事件;儀表數(shù)據(jù)任務(wù)周期性地按選定模式顯示儀表及小儀表報警提示,顯示組成員數(shù)據(jù)及組報警提示,顯示環(huán)溫/氣壓及單/全里程,并處理報警事件;鍵盤相關(guān)任務(wù)在有效輸入下根據(jù)按鍵及菜單進(jìn)行分頁顯示切換、系統(tǒng)設(shè)置修改等;JI939處理任務(wù)周期性地遍歷兩個端口的協(xié)議棧進(jìn)行報文收發(fā)、報文轉(zhuǎn)發(fā)和提取應(yīng)答等。
4.2 其余自制ECU
其余自制ECU選用Freescale公司S12系列中的M(29S12DGl28作為ECU主芯片。上電初始化后,在無限循環(huán)下先遍歷協(xié)議棧,對請求報文進(jìn)行響應(yīng),然后采集數(shù)據(jù)更新報文。程序采集傳感器信息,周期性地更新應(yīng)用層報文。程序根據(jù)采集的信號、數(shù)據(jù)生成DTC,周期性地更新應(yīng)用層診斷報文,根據(jù)DTC數(shù)目決定是否發(fā)送及是否用傳輸協(xié)議。程序半固定數(shù)據(jù)如DTC信息、里程信息等均保存在EEPROM中,每次上電導(dǎo)入,發(fā)生變化后實時更新。
結(jié) 語
通過對具備SAE J1939 CAN接口的ECU產(chǎn)品CAN總線功能進(jìn)行分析,自定義若干ECU,集成實現(xiàn)基于SAE J1939協(xié)議的車輛網(wǎng)絡(luò)。在實驗室對比CAN卡、上車對比儀表板進(jìn)行試驗研究的結(jié)果表明,所集成的車輛網(wǎng)絡(luò)工作穩(wěn)定、信息量豐富、能實時反映故障診斷信息,解決了車輛儀表盤信息量較少和故障診斷實時性不足的問題。
雙核單片機(jī)的從CPU可提高μC/OS-II的實時性,降低了主CPU的負(fù)荷。
此外,SAEJ1939協(xié)議的完備通信策略和成熟的通信機(jī)制,使得協(xié)議完全可以在修改應(yīng)用層和應(yīng)用層診斷相關(guān)定義之后,推廣應(yīng)用到其他工業(yè)環(huán)境類似的CAN通信領(lǐng)域,如列車控制、工廠控制等。
評論