在汽車的儀表板上安裝有各種儀表、指示燈及報(bào)警燈,用于幫助駕駛?cè)擞^察和掌握汽車及各系統(tǒng)的工作情況,提示異?,F(xiàn)象和故障,以便及時(shí)消除安全隱患。
汽車儀表是用以監(jiān)測(cè)汽車各系統(tǒng)工作狀況的裝置。汽車上常用的儀表包括機(jī)油壓力表、冷卻液溫度表、燃油表、車速表、 轉(zhuǎn)速表和里程表等。隨著汽車電子技術(shù)的發(fā)展,多功能、高精度、高靈敏度、讀數(shù)直觀的電子數(shù)字顯示及圖像顯示的儀表已不斷應(yīng)用于汽車上。汽車儀表的功能已不僅僅是單純的顯示,而是通過對(duì)汽車各部件參數(shù)的監(jiān)測(cè)和微機(jī)處理相配套,從而達(dá)到控制汽車各種運(yùn)行工況的目的。
車用儀表作為汽車的一個(gè)重要組成部分,使駕駛員能夠迅速地掌握行駛信息,及時(shí)有效地采取相應(yīng)操作,保證車輛正常安全工作。目前,在我國汽車電子市場(chǎng)中,70%以上的份額為國外企業(yè)的產(chǎn)品,國內(nèi)企業(yè)產(chǎn)品所占市場(chǎng)份額不足30%,絕大部分車輛儀表仍以模擬式為主。由于模擬儀表表頭的體積較大、指示內(nèi)容單一,使得儀表顯示系統(tǒng)占用了較大的空間,影響了車輛內(nèi)飾的美觀;另外,模擬儀表故障率高,降低了車輛行使的安全系數(shù),增加了維護(hù)費(fèi)用。現(xiàn)代車輛儀表系統(tǒng)不僅要求儀表耐用、耐振、指示準(zhǔn)確、讀數(shù)方便以及受溫度、濕度的影響小,還要求輕巧、舒適、美觀并具有良好的互換性。而車用數(shù)字儀表恰恰滿足了這些要求。本文提出用51系列單片機(jī)和新型傳感器等對(duì)傳統(tǒng)車用儀表進(jìn)行改進(jìn)的新型數(shù)字儀表系統(tǒng)的設(shè)計(jì)方案。
車用數(shù)字儀表主要由五個(gè)部分組成,即CPU主控制模塊、溫度采集模塊、速度采集模塊、E2PROM存儲(chǔ)器模塊以及LCD顯示模塊。
2.1 系統(tǒng)總體設(shè)計(jì)
作為車用儀表,其基本功能即為向用戶提供車速、里程、車內(nèi)溫度等信息。從技術(shù)上說,其工作流程應(yīng)為:系統(tǒng)啟動(dòng)時(shí),單片機(jī)軟件初始化,從0000H開始執(zhí)行程序,開中斷,單片機(jī)按工作周期輸入霍爾傳感器、溫度傳感器信號(hào)并進(jìn)行處理,計(jì)算出行駛實(shí)時(shí)車速、行駛里程,并開中斷,與溫度數(shù)據(jù)一起輸出到LCD顯示模塊AT1602A顯示,且將里程信息存儲(chǔ)信息到E2PROM存儲(chǔ)器中。同時(shí),為減少電磁干擾,采用抗干擾電源、光電隔離等措施保證系統(tǒng)正常穩(wěn)定地運(yùn)行[1]。
圖2.1給出了基于AT89C51單片機(jī)的車用數(shù)字儀表系統(tǒng)的框圖,本系統(tǒng)功能由硬件和軟件兩大部份協(xié)調(diào)完成。整個(gè)系統(tǒng)主要包括:AT89C51控制模塊、LCD顯示模塊TC1602A、溫度傳感器模塊DS18B20、霍爾傳感器模塊A44E及E2PROM存儲(chǔ)器模塊AT24C02。其中AT89C51主要完成外圍硬件的控制以及信息處理功能;溫度傳感器完成溫度信號(hào)的采樣及轉(zhuǎn)換;霍爾元件采集汽車行駛的圈脈沖信號(hào);E2PROM存儲(chǔ)器模塊存儲(chǔ)當(dāng)前里程信息;LCD顯示模塊TC1602A完成字符/數(shù)字轉(zhuǎn)換、驅(qū)動(dòng)及顯示功能。
2.1.1系統(tǒng)保護(hù)
圖2.1 基于單片機(jī)的車用數(shù)字儀表系統(tǒng)框圖
一個(gè)穩(wěn)定而完善的系統(tǒng)離不開一套完整的保護(hù)控制方案。這里根據(jù)單片機(jī)運(yùn)行特點(diǎn)將其運(yùn)行中可能出現(xiàn)的故障及相應(yīng)控制措施列表如表2.1所示。
故障情況相應(yīng)控制措施
市電輸入過壓(》5V)由限流電阻和穩(wěn)壓管組成的過壓保護(hù)電路防止高壓進(jìn)入CPU受干擾無法正常工作軟件復(fù)位、掉電保護(hù),電源受干擾,輸出電壓不穩(wěn)定經(jīng)型電路濾波,78L05變壓后得到穩(wěn)定電壓
2.1.2 控制模塊I/O口
AT89C51單片機(jī)有3個(gè)8位的并行雙向口,計(jì)有24根輸入/輸出(I/O)口線;一個(gè)全雙工串行接口(UART)。本系統(tǒng)中TC1602A用P1.0~P1.7,P3.3~P3.5與單片機(jī)通信;DS18B20用P2.0與單片機(jī)通信;AT24C02用P2.5,P2.6與單片機(jī)通信;A44E用P3.2與單片機(jī)通信。
2.2 CPU主控制模塊和51單片機(jī)系統(tǒng)的擴(kuò)展
CPU主控制模塊主要采用AT89C51單片機(jī)完成霍爾傳感器的信號(hào)采集、溫度信號(hào)的采集,以及里程信號(hào)、速度信號(hào)、溫度信號(hào)的顯示工作?;谠O(shè)計(jì)要求,要進(jìn)行系統(tǒng)擴(kuò)展。論文大全。
AT89C51系列單片機(jī)芯片可構(gòu)成圖2.2所示的三總線結(jié)構(gòu),即地址總線(AB)、數(shù)據(jù)總線(DB)和控制總線(CB)。所有的外部芯片都通過這三組總線進(jìn)行擴(kuò)展[2]。
在本系統(tǒng)中,溫度、速度及里程信息的實(shí)時(shí)性要求很高,而一般串行接口器件速度較慢,在需用高速應(yīng)用的場(chǎng)合,還是并行擴(kuò)展法占主導(dǎo)地位,所以在本系統(tǒng)中采用以并行方式擴(kuò)展E2PROM存儲(chǔ)器和LCD顯示模塊。
2.3 LCD顯示模塊
2.3.1 引腳與內(nèi)部結(jié)構(gòu)
LCD顯示模塊主要采用TC1602A字符型液晶顯示芯片顯示車內(nèi)溫度、車速及里程信息。
TC1602A共有16個(gè)引腳,其引腳及功能如表2.3所列。
引 腳符 號(hào)輸入/輸出功 能 說 明
1Vss電源地:0V
2Vdd電源:5V
3VO對(duì)比度調(diào)整,驅(qū)動(dòng)電壓范圍為VDD~VO當(dāng)VO 接地時(shí),對(duì)比度最強(qiáng)
4RS輸入寄存器選擇:“0”為指令寄存器; “1”為數(shù)據(jù)寄存器
5R/W輸入“1”為讀操作;“0”為寫操作
6Enable輸入使能信號(hào):E=1時(shí),使能;E=0時(shí),禁能
7~10D0~D3輸入/輸出數(shù)據(jù)總線的低4位,與4位MCU連接時(shí)不用
11~14D4~D7輸入/輸出數(shù)據(jù)總線的高4位
15~16LED+/LED-電源背光
TC1602A內(nèi)部主要由DDRAM、CGROM、CGRAM、IR、DR、BF、AC等大規(guī)模集成電路組成[3]。
2.3.2 TC1602A與單片機(jī)接口電路
圖2.3 TC1602A與AT89C51單片機(jī)的接口電路
在本系統(tǒng)中,LCD顯示設(shè)置在第1行依次顯示2位數(shù)字的車內(nèi)溫度,3位數(shù)字的時(shí)速及9位的行駛里程,且相鄰信息以1個(gè)空字符為間隔,相關(guān)單位可標(biāo)記在儀表外殼上。
TC1602A與單片機(jī)AT89C51的P1口傳輸顯示數(shù)據(jù),相關(guān)控制線分別與P3口的控制引腳連接,接口電路如圖2.3所示:
2.4 溫度采集模塊
溫度采集模塊主要采用美國Dallas半導(dǎo)體公司的DS18B20溫度芯片對(duì)車輛內(nèi)部溫度進(jìn)行采集。
2.4.1 內(nèi)部結(jié)構(gòu)
DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH/TL和配置寄存器。
光刻ROM的作用是使每一個(gè)DS18B20都各不相同,以實(shí)現(xiàn)一根總線上掛接多個(gè)DS18B20的目的[5]。DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的E2PROM。用戶可自設(shè)定非易失性溫度報(bào)警上下限值TH和TL(掉電后依然存在)。DS18B20在完成溫度變換后,所測(cè)溫度值將自動(dòng)與貯存在TH和TL內(nèi)的報(bào)警值相比較,如果高于TH或低于TL,DS18B20內(nèi)部的告警標(biāo)志就會(huì)被置位。
2.5 速度采集模塊
在本系統(tǒng)中采用軸向磁極方式設(shè)置磁體,將它和霍爾開關(guān)電路組合起來可以構(gòu)成旋轉(zhuǎn)傳感器。轉(zhuǎn)軸每轉(zhuǎn)1圈,霍爾傳感器發(fā)出8個(gè)脈沖[6]。
測(cè)速傳感器的工作原理是將霍爾開關(guān)和磁鐵分別安裝在車架、車輪的適當(dāng)位置,其產(chǎn)生的脈沖信號(hào)輸入到單片機(jī)的P3.2端,單片機(jī)對(duì)其進(jìn)行計(jì)數(shù),算出速度、里程并輸出到LCD顯示器,實(shí)現(xiàn)車速、里程的數(shù)字顯示。
由于A44E屬于開關(guān)型的霍爾器件,其工作電壓范圍比較寬(4.5~18V),其輸出的信號(hào)符合TTL電平標(biāo)準(zhǔn),可以直接接到單片機(jī)的I/O端口上,而且其最高檢測(cè)頻率可達(dá)到1MHz。
霍爾傳感器集成芯片A44E有信號(hào)轉(zhuǎn)換、電壓放大、整形輸出等功能。為增加其抗干擾能力,通過光偶后送入P3.2引腳。如圖2.10所示[7]。
圖2.10 霍爾開關(guān)脈沖的檢測(cè)
2.6 E2PROM存儲(chǔ)器模塊
為了實(shí)現(xiàn)里程顯示的連續(xù)性,系統(tǒng)必須選擇掉電存儲(chǔ)器存放里程信息。掉電存儲(chǔ)單元的作用是在電源斷開的時(shí)候,存儲(chǔ)當(dāng)前的里程信息。這里可以采用掉電保護(hù)的E2PROM存儲(chǔ)器AT24C02。
為使數(shù)字儀表系統(tǒng)更優(yōu)化,本節(jié)以51系列單片機(jī)為核心設(shè)計(jì)了各部分的軟件控制。
3.1 主程序
控制模塊AT89C51的程序流程圖如圖3.1所示。
圖3.1 主程序流程圖
3.2 溫度傳感器子程序
本系統(tǒng)對(duì)DS18B20進(jìn)行的操作主要包括兩個(gè)子過程:(1)讀取DS18B20的序列號(hào)。主機(jī)首先發(fā)一復(fù)位脈沖,等收到返回的存在脈沖后,發(fā)出搜索器件的序列號(hào)命令,讀取DS18B20的序列號(hào);(2)啟動(dòng)DS18B20作溫度轉(zhuǎn)換并讀取溫度值。主機(jī)在收到返回的存在脈沖后,發(fā)出跳過器件的序列號(hào)命令,跟著發(fā)出溫度轉(zhuǎn)換命令,再次復(fù)位并收到返回的存在脈沖后,發(fā)送DS18B20的序列號(hào),讀出數(shù)據(jù)。
3.3 里程脈沖中斷子程序
里程表的速比表示的是:輸入與輸出速度之比,里程表轉(zhuǎn)軸(軟軸)在汽車行駛1公里時(shí)所轉(zhuǎn)過的轉(zhuǎn)數(shù)。論文大全。這種里程表轉(zhuǎn)軸每轉(zhuǎn)1圈,霍爾傳感器將感應(yīng)發(fā)出8個(gè)脈沖?,F(xiàn)在以速比為1:624的車型為例:汽車行駛1公里,則霍爾傳感器發(fā)出的脈沖數(shù)共為8&TImes;624=4992個(gè),或者說,每個(gè)脈沖代表了1/4992公里的里程。霍爾傳感器將這些脈沖信號(hào)當(dāng)作外部中斷源輸入給單片機(jī),使每個(gè)脈沖產(chǎn)生1個(gè)中斷,并通過中斷服務(wù)程序?qū)γ總€(gè)脈沖進(jìn)行計(jì)數(shù)。這樣,當(dāng)計(jì)滿4992時(shí),表明汽車行駛了1公里,然后再給累計(jì)單元加1,并存入E2PROM單元,最后通過刷新LCD液晶顯示器,即可實(shí)現(xiàn)里程計(jì)數(shù)功能,本設(shè)計(jì)選用邊沿觸發(fā)方式,即采用負(fù)跳變引起中斷。
軟件實(shí)現(xiàn):控制模塊在關(guān)閉脈沖中斷之后,當(dāng)脈沖數(shù)達(dá)到1公里所需數(shù)目后修改里程記數(shù)單元并關(guān)中斷、返回。
3.4車速測(cè)量子程序
用脈沖發(fā)生器(霍爾開關(guān))實(shí)現(xiàn)車速表。
與上相同,以速比為1:624為例。在單位時(shí)間內(nèi)(以1s為例),對(duì)霍爾傳感器發(fā)出的脈沖信號(hào)進(jìn)行記數(shù),通過計(jì)算即可得出實(shí)時(shí)速度。具體如下:
在單位時(shí)間內(nèi)(本系統(tǒng)設(shè)定為1s)記霍爾開關(guān)的脈沖數(shù),用單位時(shí)間所行的距離即可計(jì)算出單位時(shí)間內(nèi)的平均速度(如圖3.6)。若單片機(jī)1s內(nèi)收到了n個(gè)脈沖,則1s內(nèi)車輛行駛的距離為:(1000n)/4992,速度為[(1000n)/4992]m/s,把它轉(zhuǎn)換為km/h。每隔1s輸出時(shí)速并刷新LCD液晶顯示器,即可實(shí)現(xiàn)車速顯示功能。
E2PROM存儲(chǔ)器AT24C02能與I2C總線兼容,遵守I2C總線協(xié)議。
3.5 LCD顯示子程序
LCD顯示模塊采用TC1602A。由于本系統(tǒng)只顯示溫度、車速、里程等信息,單片機(jī)不讀入LCD信息,所以本系統(tǒng)只用到其中設(shè)置輸入模式指令、顯示開關(guān)控制指令、系統(tǒng)初始化設(shè)置、DDRAM地址設(shè)置指令、忙狀態(tài)檢查指令、寫數(shù)據(jù)指令。
作為一個(gè)完整的數(shù)字儀表系統(tǒng),除主控制單元外還必須有許多輔助電路。例如提供保護(hù)的抗振措施、過壓保護(hù)電路、看門狗電路等,這些電路是一個(gè)完整的單片機(jī)數(shù)字儀表系統(tǒng)必不可少的,下面將分別介紹。
4.1 抗振措施
車載電子設(shè)備的抗振措施主要是以下兩個(gè)方面:
?。?)加固設(shè)計(jì)
提高電子設(shè)備結(jié)構(gòu)上的薄弱環(huán)節(jié)。對(duì)薄弱環(huán)節(jié)進(jìn)行加固,使其容許的沖擊應(yīng)力和疲勞極限高于其實(shí)際響應(yīng)值,保證電子設(shè)備的正常工作;
?。?)采用隔振緩沖系統(tǒng)
對(duì)電子設(shè)備整機(jī)進(jìn)行隔振緩沖設(shè)計(jì),使外部激勵(lì)通過隔振緩沖系統(tǒng)的減弱后,傳遞給設(shè)備的實(shí)際作用力,小于設(shè)備的許用值。
4.2 過壓保護(hù)電路
本系統(tǒng)在輸入通道上也設(shè)計(jì)了過壓保護(hù)電路,1腳為電壓輸出,8腳為電壓輸入,它由限流電阻和穩(wěn)壓管78L05組成,加在單片機(jī)電壓輸入之前,防止引入高電壓,損害單片機(jī)系統(tǒng)。
湖北英索爾電子有限公司???? 地址:湖北省襄陽市高新區(qū)佳海工業(yè)園A42-2號(hào)????電話:0710-2095719????傳真:0710-3529078????鄂ICP備15018634號(hào)-1