CAN總線在商用車上數據采集的實現
3 系統的軟件設計
本系統軟件由數據采集發(fā)送單元軟件和數據接收顯示單元軟件兩大部分組成。數據采集發(fā)送單元軟件負責對商用車信號進行采集、處理并發(fā)送;數據接收.顯示單元負責對以上數據進行接受,并顯示輸出系統的主程序框圖、數據接收顯示單元軟件框圖和數據采集發(fā)送單元軟件框圖如圖6-8所示。
圖6 系統主程序框圖
圖7 接收單元框圖
商用車信號采集電路程序編寫可分為:
1) CAN總線通訊節(jié)點的初始化程序;
2) CAN總線數據采集發(fā)送單元程序;
3) CAN總線數據接收顯示單元程序。
CAN總線的初始化十分重要,這里給出CAN初始化程序。下面就以Keil C51為平臺,系統介紹如何用C51語言對SJA1000 CAN總線控制器進行初始化。
以上就是SJA1000初始化的全部程序,其中AT89C52.H是為89C52主控制器專門編寫的庫函數,它在Keil軟件中是現成的,只要用#inelude語句包括進來即可;int rins.h是為今后調用空函數-nop-()作準備,它里面包括了一個類似于匯編語言的NOP語句;其中還須注意的就是在主函數中一般都有一個while(1)語句,表示不斷地做循環(huán),否則在程序編譯時會提示出錯。
評論