新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于CAN總線的汽車儀表軟件實現方案

基于CAN總線的汽車儀表軟件實現方案

作者: 時間:2013-02-17 來源:網絡 收藏


3.2 系統(tǒng)硬件結構及所用器件

由液晶顯示器、PC-CAN接口卡、單片機、CAN控制器(SJA1000)、發(fā)送/接收驅動器(PCA82C250)、和各數據采集系統(tǒng)組成。

專用液晶顯示屏用來顯示轉速、機油壓力、水溫、燃油消耗等;PC機用來處理上的數據并通過軟件顯示于顯示屏上;PC-CAN接口卡完成PC機與CAN之間的通信;自行設計的ECU完成從各傳感器采集數據,通過CAN收發(fā)器連于上。其中的PC-CAN接口卡通過RS232接口或UAB與PC機相連,PC-CAN接口卡再通過總線與自行設計的ECU相連。在實際中PC-CAN接口卡與車輛CAN總線相連,可采集大量數據信息,從而隨時可通過軟件編程把這些信息在顯示屏上動態(tài)顯示出來。

3.3 系統(tǒng)的硬件設計

PC-CAN接口卡選用CAN232智能CAN接口卡,它適合CAN-bus的小流量數據傳輸應用,最高可達500幀/秒的數據傳輸速率,提供廣泛和強大的軟件支持。支持在VC++、C++Builder、Delphi和VB等開發(fā)環(huán)境下進行設計。該接口卡為用戶提供了編程需要的三個文件:CAN232dll.DLL,CAN232dll.LIB,ExportHead.H。

CAN協(xié)議控制器選用SJA1000,它是Philips公司生產的適合汽車環(huán)境的獨立CAN控制器,支持CAN2.0B協(xié)議。CAN發(fā)送/接收驅動器選用Philip公司的PCA82C250,它是CAN控制器和物理傳輸線路之間的接口,它可以用高達1Mbits/s的位速率在兩條有差動電壓的總線電纜上傳輸數據。

3.4 系統(tǒng)軟件設計

CAN2.0的分層結構是按ISO/OSI模型對CAN結構的描述。數據鏈路層又分為邏輯鏈路層(LLC,Logical Link Control)和媒體訪問控制(MAC,Medium Access Control)兩個層。LLC層完成下列功能:為數據發(fā)送以及以及遠層數據請求傳送服務;判斷是否接受接收到的數據;提供恢復管理和超載處理。

MAC層主要定義了傳輸協(xié)議,包括信息幀格式、仲裁方式、應答信號、錯誤檢測、錯誤信令和故障限制等。

物理層實現節(jié)點間的物理信號的傳送,主要定義網絡的電氣特性。CAN網絡中可以采用多種不同的物理層協(xié)議。

本研究用VC編程語言實現數據的顯示。PC—CAN接口卡自帶三個文件CAN232dll.DLL,CAN232dll.LIB,ExportHead.H,其中ExportHead.H描述了動態(tài)鏈接庫CAN232dll.DLL所定義的外部函數。如下所示,

void OpenSerialPort(int nPort,unsigned int Baud);
void CAN232Send(unsigned char*sdata,size_t Len);
void CAN232Setting(unsigned char*sdata,size_t Len);
char CAN232Receive(unsigned char*CANReceive);

將接口卡所帶的三個文件拷貝在VC目錄下,在VC菜單的PROJECT->SETTING中的LINK項下,填入CAN232dll.LIB。然后在程序的頭文件中加入“#include ExportHead.H”。

4、結論

本研究只有一個CAN節(jié)點,所以顯示器所顯示的數據只有轉速、機油壓力、水溫、燃油消耗,但是在實際的汽車網絡中,通過編程我們可以動態(tài)獲得CAN總線上的所有信息,并能夠以友好的人機界面顯示,使車輛信息對駕駛員或乘客透明化。所以基于CAN總線的軟件實現是設計的一個新的嘗試。

參考文獻
[1]楊忠敏.汽車儀表的發(fā)展現狀[J].汽車電器,2004,1:1~3.
[2]康建輝,張慶順. 單片機控制液晶顯示器在汽車儀表板中的應用[J].現代電子技術,2002,3:6~7.
[3]向云秀.汽車儀表板電子化技術[J].湖南大學學報,2001,6:50~55.
[4]秦貴和.車上網絡技術[M].北京.機械工業(yè)出版社,2003,19~20.(end)

上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉