新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于單片機的汽車組合電子儀表

基于單片機的汽車組合電子儀表

作者: 時間:2013-03-06 來源:網(wǎng)絡(luò) 收藏


2、硬件描述


圖1

LJ12芯片內(nèi)部有豐富的硬件資源,我們做了如下配置:

? PLL:外部晶振32.768k;內(nèi)部總線倍頻至4M;
? SCI:用于上位機通訊,比特率9600,中斷方式;
? SPI:時鐘1M,作為的控制,用兩個通用管腳作為SPI的片選信號;
? LCD:使用26×4模式,即26前極、4背極的模式,動態(tài)驅(qū)動;因為設(shè)計中用到6位LCD模塊,所以使用FP1~FP12、BP0~BP3已經(jīng)足夠;
? Flash:利用常駐內(nèi)存函數(shù)(ROM-Resident Routine)將里程數(shù)據(jù)以32位數(shù)據(jù)的形式保存于用戶閃存中。

選取SWITEC公司出品的步進(jìn)電機作為執(zhí)行器。六位筆段式動態(tài)驅(qū)動液晶模塊,用于里程,單次里程或時間日期的顯示。出于習(xí)慣,汽車儀表需要一直保持帶電狀態(tài),無需重置時間參數(shù),為了方便演示,用兩個按鈕實現(xiàn)LCD顯示模式的切換。六個發(fā)光二極管分別用于顯示制動、危險、機油壓力、電瓶、發(fā)動機以及空檔信息,利用MC1413作為發(fā)光二極管的驅(qū)動。

由微控制器的SPI直接驅(qū)動;車速和發(fā)動機轉(zhuǎn)速為脈寬調(diào)制信號或來自串口輸入,通過定時器模塊的輸入捕捉功能得到其頻率,換算得數(shù)據(jù)。

(1) 電源及掉電保護

輸入端使用7805。為了在掉電的時候也可以及時地保存里程數(shù)據(jù),在電源地輸入端加一個1000uF或兩個470uF的電解電容。電源斷開的時候在IRQ管腳會產(chǎn)生一個中斷信號,大電容可以維持電源足夠長的時間,使得可以完成外部中斷的服務(wù)程序。

(2)調(diào)理電路

為了改善波形,在定時器管腳外添加了調(diào)理電路。

(3)整體設(shè)計

本設(shè)計面向的是市場上的中低檔轎車,為了表現(xiàn)這個初衷,根據(jù)長安轎車的儀表外殼及內(nèi)部尺寸設(shè)計了儀表的PCB,并重新布局。


圖2 系統(tǒng)框圖

3、 軟件描述

(1) 初始化函數(shù)

內(nèi)部總線倍頻至4M;設(shè)置定時器模塊的通道為捕捉功能;SCI波特率9600,開接收中斷;SPI時鐘頻率1M;LCD模塊26×4模式;使能Real Time Clock模塊;與指針初始化;從用戶Flash中讀取先前記錄的里程數(shù)據(jù),并根據(jù)ODO/TRIP信號加以顯示。

(2) 中斷服務(wù)程序

? 外部中斷:斷電后短時間內(nèi)利用大電容的放電使指針回零。
? SCI中斷:遵循一定的上位機協(xié)議,接受命令,改變LCD顯示內(nèi)容;改變車速和轉(zhuǎn)速數(shù)據(jù)。
? RTC中斷:每秒記錄一次里程數(shù)據(jù);根據(jù)車速信號換算里程數(shù)據(jù)。

(3) 主函數(shù)

定時讀取里程數(shù)據(jù),并在LCD上顯示;每一次主循環(huán)結(jié)束的時候重啟WATCHDOG;當(dāng)車速或轉(zhuǎn)速信號改變之后通過指針位置的變化作出反應(yīng)。


圖3 主程序流程圖



關(guān)鍵詞: 單片機 電子儀表 MC33970

評論


相關(guān)推薦

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

關(guān)閉