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