新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于CAN總線的電動汽車實驗平臺

基于CAN總線的電動汽車實驗平臺

作者: 時間:2012-11-22 來源:網(wǎng)絡(luò) 收藏

數(shù)據(jù)顯示驅(qū)動電路

數(shù)據(jù)顯示驅(qū)動電路由MC9S08GZ16的SPI輸出端口開始,即圖3中的DOUT4、DOUT3和DOUT2三個管腳,加上數(shù)碼管顯示電路,構(gòu)成了完整的SPI模塊。

數(shù)碼管顯示電路以MAXIM公司的MAX7219為核心,如圖7所示,它是專門的數(shù)碼管驅(qū)動芯片,可以同時驅(qū)動8個8段數(shù)碼管,驅(qū)動電壓和驅(qū)動電流可以通過程序來設(shè)置。它的操作很簡單,MCU只需通過SPI接口就可以將相關(guān)的指令寫入MAX7219的內(nèi)部指令和數(shù)據(jù)寄存器。它還支持多片7219串聯(lián)方式,這樣MCU就可以通過3根線(即數(shù)據(jù)線、時鐘線和芯片選通線)控制更多的數(shù)碼管顯示。
外圍控制電路

在MC顯示節(jié)點中用PWM輸出來控制一個小電機工作,并且根據(jù)MC傳上來的電機轉(zhuǎn)速來控制小電機的旋轉(zhuǎn)速度,如圖8所示。
4.2 軟件設(shè)計

各個顯示節(jié)點的程序主要根據(jù)其功能來設(shè)計,同時在總體結(jié)構(gòu)上保持一致。整個程序大部分操作是在主程序中完成的,只有CAN接收和發(fā)送程序在中斷中完成。

主程序

主程序中的操作先是初始化各寄存器,然后在死循環(huán)中根據(jù)標志位來進行相應(yīng)處理,具體流程如圖9所示。
CAN中斷程序

上有數(shù)據(jù)送到各節(jié)點時,MCU產(chǎn)生CAN中斷,程序立即跳到CAN中斷程序,如圖10所示。中斷程序中先判斷數(shù)據(jù)幀的ID號,以確定是否是自己想要的數(shù)據(jù),如果是,則將CAN數(shù)據(jù)寄存器中的數(shù)據(jù)放入已經(jīng)定義的數(shù)組中,然后置位CAN中斷標志,接著退出中斷處理程序;如果不是,則直接跳出中斷處理程序。
5 網(wǎng)絡(luò)協(xié)議的制定及網(wǎng)絡(luò)調(diào)試

首先根據(jù)各個節(jié)點的重要性和節(jié)點需要傳送的數(shù)據(jù)量大小來設(shè)計網(wǎng)絡(luò)協(xié)議。然后利用CANoe軟件對網(wǎng)絡(luò)進行仿真,對比仿真的結(jié)果來不斷的修改網(wǎng)絡(luò)協(xié)議。

在實際CAN網(wǎng)絡(luò)的調(diào)試過程中,使用VECTOR公司的CANoe網(wǎng)絡(luò)監(jiān)控套件來監(jiān)控CAN網(wǎng)絡(luò)的運行狀況,了解各節(jié)點的數(shù)據(jù)幀是否正常發(fā)送,同時查看網(wǎng)絡(luò)是否正常運行。為了使調(diào)試更方便,還應(yīng)用CANoe軟件做了一個上位機界面,它將各節(jié)點傳來的數(shù)據(jù)按照協(xié)議進行計算,然后顯示在界面上,這樣可以更直接了解各節(jié)點的運行狀況。

6 系統(tǒng)應(yīng)用及結(jié)論

試驗臺在設(shè)計安裝完成后,運行穩(wěn)定,并通過了“863”動力總成節(jié)點驗收。本試驗平臺采用來傳遞數(shù)據(jù),不但減少了試驗平臺的線束用量,而且提高了整個系統(tǒng)數(shù)據(jù)傳遞的可靠性。

上一頁 1 2 下一頁

關(guān)鍵詞: CAN總線 電動汽車 實驗平臺

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉