摘 要:介紹以AT89C51為核心,運用數(shù)模轉(zhuǎn)換模塊、波形發(fā)生器等外圍器件實現(xiàn)LED數(shù)碼管顯示速度、溫度、油量、里程。該系統(tǒng)采用數(shù)碼管顯示,方便直觀且顯示穩(wěn)定。此外,系統(tǒng)采取多種硬件與軟件抗干擾措施,可以有效地排除各種環(huán)境干擾,提高系統(tǒng)穩(wěn)定性。
關(guān)鍵詞:AT89C51 波形發(fā)生器 ADC0832 車用數(shù)字儀表
中圖分類號:TP368.121 文獻標識碼:A 文章編號:1007-3973(2013)011-119-02
1 引言
車輛儀表是反應(yīng)車輛各種指標的有效工具,是聯(lián)系駕駛員和車輛的重要紐帶。它提供給駕駛員一個信息視圖,在行車過程中有著舉足輕重的地位,是行車安全的重要保障。隨著科學(xué)技術(shù)特別是電子技術(shù)發(fā)展,用微處理器控制的電子儀表越來越流行。但是國內(nèi)現(xiàn)在的汽車儀表現(xiàn)在仍然比較落后,數(shù)字化水平比較低,一些儀表還沒有實現(xiàn)電子化,另外車內(nèi)的儀表數(shù)量仍然比較多,體積大,影響美觀和使用。所以,以AT89C51為核心的車內(nèi)電子儀表系統(tǒng)的設(shè)計就變得很必要了,它能夠有效的解決這些問題。(1)它能有效的反應(yīng)車的各個指標,并且能有效的預(yù)防電子干擾,實時準確的反應(yīng)給駕駛員;(2)在體積數(shù)量上面,它都只占用少的空間,能夠直接美觀的進行呈現(xiàn)。除此之外,還有成本低,壽命高等優(yōu)點。
2 系統(tǒng)的工作原理和功能框圖
圖1給出了基于AT89C51單片機的車用數(shù)字儀表系統(tǒng)的框圖。電子儀表的設(shè)計方案如下:控制器件AT89C51輸入傳感器信號并對脈沖信號進行處理測出車速以及車輛行駛的里程數(shù),通過滑動變阻器的電壓信息計算出油量信息,與溫度信號一起送數(shù)碼管顯示模塊進行數(shù)碼顯示并存儲里程信息。所以系統(tǒng)顯示部分分為四個:車速、里程、溫度、油量。四個顯示部分功能部分分別獨立設(shè)計。
整個系統(tǒng)主要包括:AT89C51控制模塊、數(shù)碼管顯示模塊、ADC0832數(shù)模轉(zhuǎn)換模塊、波形發(fā)生器。其中AT89C51主要完成外圍硬件的控制以及信息處理功能;數(shù)模轉(zhuǎn)化模塊完成溫度信號的轉(zhuǎn)換;波形發(fā)生器模擬汽車行駛的全脈沖信號;數(shù)碼管顯示模塊完成字符/數(shù)字轉(zhuǎn)換、驅(qū)動及顯示功能。
3 硬件設(shè)計
本文介紹的系統(tǒng)硬件部分由下面部分組成:主控芯片ATC51單片機、信號發(fā)生器、數(shù)碼顯示管、滑動變阻器、D/A轉(zhuǎn)換器、油量傳感器與溫度傳感器。它們的作用以及構(gòu)成由下。其中,單片機是核心地位,數(shù)碼管是最終儀表的顯示部分。其他部分為中間的功能實現(xiàn)部分,為基礎(chǔ)。在接口方面,單片機的接口分別被四個數(shù)碼管部分占據(jù),此外還有D/A轉(zhuǎn)換器,電源復(fù)位電路。D/A轉(zhuǎn)換器與滑動變阻器相連,二者負責信號的輸入。里程和車速信號由波形發(fā)生器負責發(fā)送輸入。波形發(fā)生器也占用一個接口。
3.1 主控制模塊
CPU主控制模塊采用AT89C51完成波形發(fā)生器的信號、變阻信號的采集,以及里程信號、速度信號、溫度信號的顯示。AT89C51是ATMEL公司生產(chǎn)的比較經(jīng)典的單片機芯片,工作穩(wěn)定、能耗低、抗電磁干擾性強。AT89C51是一個高性價比的車用電子儀表解決方案。
3.2 信號發(fā)生器
本系統(tǒng)采用的信號發(fā)生器,輸出地是連續(xù)方波,波形的周期T由一個周期的輸出點數(shù)N和點之間的時間間隔t確定,T=N*t,頻率就為1/T;在輸出點數(shù)一定時,由點之間的時間間隔(決定DA輸出頻率)調(diào)整波形頻率,上面的公式估計就是調(diào)整DA輸出頻率的。
3.3 D/A轉(zhuǎn)換器
DAC0832是雙列直插式8位D/A轉(zhuǎn)換器,能完成模擬量輸入到數(shù)字量輸出地轉(zhuǎn)換,D0,D1為數(shù)據(jù)輸出端,CLK為信號輸出端,CH0,CH1為電阻信號輸入端,VCC為芯片供電電壓。
3.4 油量傳感器與溫度傳感器
溫度和油量的變化都是通過滑動變阻器來實現(xiàn)的。通過改變滑動變阻器的劃片,兩端的電壓就會發(fā)生變化,從而油量和溫度就會發(fā)生變化,變化之間的量化關(guān)系具體通過實驗取的。電壓變化的信號通過傳入ADC0832中進行D/A轉(zhuǎn)換,那樣51單片機接收的信號就會改變,通過調(diào)用顯示模塊就可以顯示出來。
3.5 顯示模塊
系統(tǒng)采用了4塊位數(shù)不等的7段LED液晶管,分別顯示車速,里程、車內(nèi)溫度、油量。顯示的原理是高低電平驅(qū)動發(fā)光二極管LED,本系統(tǒng)由于顯示的是油量和溫度,采用兩個液晶管,如果要把其他的車速,里程顯示出來,則應(yīng)該采用CRT液晶顯示管,那么在一個顯示屏上面就可以把所有的信息顯示出來,不需要采用多個數(shù)碼管,一則降低成本;二則降低空間占用并且美觀直接一些。
4 程序設(shè)計
程序的設(shè)計是按照車用儀表的工作環(huán)境具體實現(xiàn)的。程序的流程是這樣的:系統(tǒng)上電啟動,單片機開始從0000H開始運行。單片機通過輸入波形發(fā)生器的方波開始打開中斷,并且計算每秒中的波形。通過滑動變阻器改變的電壓信號經(jīng)過模數(shù)轉(zhuǎn)化后,單片機讀取這些信號,調(diào)用顯示子程序顯示出來。
軟件部分主要完成信號的處理及控制功能等。本系統(tǒng)的軟件設(shè)計主要包括了系統(tǒng)主程序、數(shù)據(jù)采集與 A/D 轉(zhuǎn)換子程序、中斷子程序、LCD 及 LED 指示燈顯示子程序等。
編程環(huán)境采用的是KEIL軟件,編程語言為C語言。因為C語言有模塊化很強的優(yōu)點,對于本系統(tǒng)的設(shè)計很有幫助。
4.1 主程序設(shè)計
主程序主要實現(xiàn)對系統(tǒng)的初始化以及對各個子程序的調(diào)用。系統(tǒng)初始化主要包括對液晶顯示器、顯示緩沖值、中斷及寄存器標志值的初始化等。系統(tǒng)上電之后初始化,然后調(diào)用數(shù)據(jù)采集與A/D轉(zhuǎn)化子程序,處理完之后進行調(diào)用數(shù)據(jù)處理子程序,如果有異常就調(diào)用報警子程序,無異常則調(diào)用顯示子程序。
4.2 數(shù)據(jù)采集及轉(zhuǎn)換子程序設(shè)計
此子程序根據(jù)由模擬通道輸入的相應(yīng)模擬信號進行采樣、量化并進行相應(yīng)的運算處理,采樣和量化工作由傳感器自行完成,主程序則直接調(diào)用結(jié)果。最后將相應(yīng)信號的數(shù)值返回主程序。
4.3 中斷子程序
本系統(tǒng)的中斷源主要包括波形發(fā)生器產(chǎn)生的連續(xù)方波脈沖、滑動變阻器器和A/D轉(zhuǎn)換器等,通過這樣的設(shè)置可以保證系統(tǒng)良好的運行。而ADC0832的中斷系統(tǒng)可以提供11個中斷源,完全可以滿足本系統(tǒng)的要求。
4.4 顯示子程序
顯示子程序分為四個部分,分別顯示車速、里程、油量、溫度。四個子程序分別獨立完成。子程序主要負責驅(qū)動LED燈進行顯示。以數(shù)字的形式顯示輸出。如果想把顯示放在一起,可以考慮采用LCD的彩色顯示屏放在一起進行顯示。這里不進行討論。
5 結(jié)束語
車輛數(shù)字儀表設(shè)計是為了幫助駕駛員了解車輛信息,當然,如果采用油壓傳感器、發(fā)動機轉(zhuǎn)速傳感器則可實現(xiàn)油壓顯示、轉(zhuǎn)速顯示等更多功能,那會更加完善,另外顯示方面如果采用彩色的CRT顯示屏將所有的信息顯示在一起,它將會成為國內(nèi)外先進的車用數(shù)字儀表系統(tǒng),將有著不可估量的應(yīng)用前景。很顯然,用單片機做為開發(fā)的核心控制芯片具有一定的實用性,有很大的現(xiàn)實實行的意義。正是基于這種考慮,如果我們能利用現(xiàn)有先進的傳感器測量系統(tǒng),采用單片機控制技術(shù)設(shè)計現(xiàn)代車用數(shù)字儀表系統(tǒng),就能夠加快現(xiàn)代車輛儀表系統(tǒng)的發(fā)展。
參考文獻:
[1] 谷樹忠,溫克利,馮雷.Protel 2004實用教程——原理圖與PCB設(shè)計(第3版)[M].北京:電子工業(yè)出版社,2005.
[2] 李東生.Protel99SE電路設(shè)計技術(shù)入門與應(yīng)用[M].北京:電子工業(yè)出版社,2002.
[3] 潘松,黃繼業(yè).EDA技術(shù)實用教程[M].北京:電子工業(yè)出版社,2002.
[4] 趙娜,趙剛,于珍珠.基于51單片機的溫度測量系統(tǒng)[J].微計算機信息,2006(8):63-65.
[5] 張武,顧凱,基于51單片機的車用數(shù)字儀表設(shè)計與實現(xiàn)[J].今日電子,2006(5):32-35.