《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 其他 > 設(shè)計(jì)應(yīng)用 > 基于單片機(jī)的汽車組合電子儀表
基于單片機(jī)的汽車組合電子儀表
摘要: 該方案是一個(gè)基于Freescale微控制器的汽車電子儀表板的低端方案,面向各種經(jīng)濟(jì)型汽車,具有功能齊備、結(jié)構(gòu)緊湊、價(jià)格低廉的特點(diǎn),會(huì)有廣闊的市場前景。
Abstract:
Key words :

        儀表是人和汽車的交互界面,為駕駛員提供所需的汽車運(yùn)行參數(shù)、故障、里程等信息,是每一輛汽車必不可少的部件。儀表顯示的直觀與美觀使得駕駛不但是代步之必需,也成為舒適生活的一部分,而參數(shù)傳遞的準(zhǔn)確與可靠性則直接關(guān)系到汽車行駛的安全。
  現(xiàn)代儀表最突出的特點(diǎn)是功能的模塊化,通常要組裝一塊儀表,只需將幾個(gè)功能模塊在定制PCB的基礎(chǔ)上聯(lián)合起來,就可以得到一個(gè)完整的系統(tǒng)。長安等經(jīng)濟(jì)型汽車的指針儀表一般為獨(dú)立的模塊,提示/報(bào)警功能由PCB上的小燈泡完成。SANTANA系列的指針由印刷電路板上的十字線圈驅(qū)動(dòng),提示/報(bào)警燈全部是發(fā)光二極管。轎車的儀表板上顯示的主要數(shù)據(jù)、來源及對應(yīng)顯示方式如下表(根據(jù)SANTANA2000):

轎車的儀表板上顯示的主要數(shù)據(jù)、來源及對應(yīng)顯示方式

  可見目前的汽車儀表尚以機(jī)械式為主,通訊方式以線束為主。這種模式最大的弊病是過于依賴線束,導(dǎo)致系統(tǒng)復(fù)雜。
  隨著汽車產(chǎn)業(yè)的快速發(fā)展,尚有極大潛力的汽車電子市場正日漸受到各大汽車生產(chǎn)商與電子產(chǎn)品供應(yīng)商的關(guān)注,這其中包括尚處于開發(fā)實(shí)驗(yàn)階段的清潔能源汽車、目前由日本占據(jù)世界市場領(lǐng)袖地位的車載音響設(shè)備、前途無量的車載計(jì)算機(jī)信息終端設(shè)備以及形形色色的車內(nèi)電控單元,如發(fā)動(dòng)機(jī)電控單元、ABS、總線、新型電子儀表等。
  對汽車儀表而言,使用電子式儀表板較之傳統(tǒng)儀表的優(yōu)勢在于:
  ·硬件功能的軟件化:
  隨著微電子技術(shù)的發(fā)展,微處理器的處理速度越來越快。一些實(shí)時(shí)性要求高,原本由硬件完成的功能,就完全可以通過對微處理器編程來實(shí)現(xiàn)。
  ·系統(tǒng)集成度大大提高:
  在大規(guī)模集成電路技術(shù)迅速發(fā)展的今天,集成電路的密度越來越高,體積越來越小,內(nèi)部結(jié)構(gòu)越來越復(fù)雜,功能也越來越強(qiáng)大。隨著儀表的部分功能硬件不斷地被軟件取代,整個(gè)系統(tǒng)的集成度也在相應(yīng)提高。
  本設(shè)計(jì)是一個(gè)基于Freescale單片機(jī)汽車組合儀表板。面向的是目前市場上占主流地位的傳統(tǒng)汽車,并引用長安車的儀表為模板,目的主要在于實(shí)現(xiàn)一個(gè)汽車組合電子儀表板的低端方案。
  設(shè)計(jì)概述
  本方案的對象主要包括車速、轉(zhuǎn)速、壓力、溫度、里程、時(shí)間以及一些提示/報(bào)警燈信號(hào),分別體現(xiàn)在車速表、發(fā)動(dòng)機(jī)轉(zhuǎn)速表、油壓表、水溫表(指針)以及里程表上。其中,里程表定時(shí)記錄車速信號(hào),在行車時(shí)間內(nèi)做數(shù)值積分,得到行駛公里數(shù),作為里程保存在用戶Flash中。定時(shí)(1s)對里程數(shù)據(jù)做累加。
  由于本設(shè)計(jì)面向的是大眾化的傳統(tǒng)汽車,成本成為器件選用的最重要標(biāo)準(zhǔn)。在微控制器的選型上,我們并未考慮前途光明但目前尚未普及的CAN總線,而是選擇了自帶液晶驅(qū)動(dòng)的8位微控制器LJ12。
  MC68HC908LJ12是Freescale單片機(jī)908家族的一員,其主要參數(shù)與功能模塊如下:
  ·8M的最大總線頻率;
  ·12k用戶Flash;
  ·512b RAM;
  ·兩個(gè)獨(dú)立雙通道定時(shí)器模塊;
  ·內(nèi)部實(shí)時(shí)時(shí)鐘,可記錄年、月、日、時(shí)、分、秒;
  ·SCI與SPI通信模塊;
  ·6通道10位A/D;
  ·LCD模塊,可驅(qū)動(dòng)27×3或26×4的筆段式液晶模塊。
  步進(jìn)電機(jī)驅(qū)動(dòng)芯片MC33970是Freescale模擬家族的一員,內(nèi)含6個(gè)寄存器,由SPI寫入命令狀態(tài)字,分別是配置/校準(zhǔn)寄存器、指針?biāo)俣燃拇嫫?、指?/1位置寄存器、指針回零寄存器、歸零設(shè)置寄存器。MC33970的特點(diǎn):步進(jìn)電機(jī)驅(qū)動(dòng)芯片MC33970電路圖
  ※  兼容MMT認(rèn)證的兩相步進(jìn)電機(jī);
  ※  指針可停留在4095個(gè)穩(wěn)定的位置;
  ※  最大轉(zhuǎn)角340°;
  ※  最大加速度4500 deg/s2;
  ※  最大速度400 deg/s;
  ※  模擬微步(指針運(yùn)動(dòng)12步為1°);
  ※  指針校準(zhǔn)與回零;
  ※  SPI控制,16位命令字;
  ※  內(nèi)部校準(zhǔn)時(shí)鐘;
  ※  睡眠模式低電流。
  硬件描述
  LJ12芯片內(nèi)部有豐富的硬件資源,我們做了如下配置:
  ※  PLL:外部晶振32.768k;內(nèi)部總線倍頻至4M;
  ※  SCI:用于上位機(jī)通訊,比特率9600,中斷方式;
  ※  SPI:時(shí)鐘1M,作為MC33970的控制,用兩個(gè)通用管腳作為SPI的片選信號(hào);
  ※  LCD:使用26×4模式,即26前極、4背極的模式,動(dòng)態(tài)驅(qū)動(dòng);因?yàn)樵O(shè)計(jì)中用到6位LCD模塊,所以使用FP1~FP12、BP0~BP3已經(jīng)足夠;
  ※  Flash:利用常駐內(nèi)存函數(shù)(ROM-Resident Routine)將里程數(shù)據(jù)以32位數(shù)據(jù)的形式保存于用戶閃存中。
  選取SWITEC公司出品的步進(jìn)電機(jī)作為執(zhí)行器。六位筆段式動(dòng)態(tài)驅(qū)動(dòng)液晶模塊,用于里程,單次里程或時(shí)間日期的顯示。出于習(xí)慣,汽車儀表需要一直保持帶電狀態(tài),無需重置時(shí)間參數(shù),為了方便演示,用兩個(gè)按鈕實(shí)現(xiàn)LCD顯示模式的切換。六個(gè)發(fā)光 二極管分別用于顯示制動(dòng)、危險(xiǎn)、機(jī)油壓力、電瓶、發(fā)動(dòng)機(jī)以及空檔信息,利用MC1413作為發(fā)光二極管的驅(qū)動(dòng)。
  MC33970由微控制器的SPI直接驅(qū)動(dòng);車速和發(fā)動(dòng)機(jī)轉(zhuǎn)速為脈寬調(diào)制信號(hào)或來自串口輸入,通過定時(shí)器模塊的輸入捕捉功能得到其頻率,換算得數(shù)據(jù)。
  ● 電源及掉電保護(hù):
  輸入端使用7805。為了在掉電的時(shí)候也可以及時(shí)地保存里程數(shù)據(jù),在電源地輸入端加一個(gè)1000uF或兩個(gè)470uF的電解電容。電源斷開的時(shí)候在IRQ管腳會(huì)產(chǎn)生一個(gè)中斷信號(hào),大電容可以維持單片機(jī)電源足夠長的時(shí)間,使得單片機(jī)可以完成外部中斷的服務(wù)程序。
  ● 調(diào)理電路:
  為了改善波形,在定時(shí)器管腳外添加了調(diào)理電路。
  ● 整體設(shè)計(jì):
  本設(shè)計(jì)面向的是市場上的中低檔轎車,為了表現(xiàn)這個(gè)初衷,根據(jù)長安轎車的儀表外殼及內(nèi)部尺寸設(shè)計(jì)了儀表的PCB,并重新布局。

系統(tǒng)框圖

  軟件描述
  ● 初始化函數(shù):
  內(nèi)部總線倍頻至4M;設(shè)置定時(shí)器模塊的通道為捕捉功能;SCI波特率9600,開接收中斷;SPI時(shí)鐘頻率1M;LCD模塊26×4模式;使能Real Time Clock模塊;MC33970與指針初始化;從用戶Flash中讀取先前記錄的里程數(shù)據(jù),并根據(jù)ODO/TRIP信號(hào)加以顯示。
  ● 中斷服務(wù)程序:
    ·外部中斷:斷電后短時(shí)間內(nèi)利用大電容的放電使指針回零。
    ·SCI中斷:遵循一定的上位機(jī)協(xié)議,接受命令,改變LCD顯示內(nèi)容;改變車速和轉(zhuǎn)速數(shù)據(jù)。
    ·RTC中斷:每秒記錄一次里程數(shù)據(jù);根據(jù)車速信號(hào)換算里程數(shù)據(jù)。
  ● 主函數(shù):
  定時(shí)讀取里程數(shù)據(jù),并在LCD上顯示;每一次主循環(huán)結(jié)束的時(shí)候重啟WATCHDOG;當(dāng)車速或轉(zhuǎn)速信號(hào)改變之后通過指針位置的變化作出反應(yīng)。

主程序流程圖



  以下是SWITEC公司出品的步進(jìn)電機(jī)驅(qū)動(dòng)芯片x15.089與MC33970的簡單比較,然后得出結(jié)論。
  ● 卓越的性能:
  下表是二者的性能比較,其中響應(yīng)的實(shí)時(shí)性好是MC33970最大的優(yōu)勢:

二者的性能比較

   ● 緊湊的結(jié)構(gòu):
  x15.089的工作原理簡單說來是由微控制器的兩個(gè)管腳控制一個(gè)步進(jìn)電機(jī),其中一個(gè)管腳輸出方向控制信號(hào),另一個(gè)管腳輸出脈沖。所以對應(yīng)控制每一路電機(jī)需要兩個(gè)單片機(jī)管腳,控制4路需要8個(gè)單片機(jī)的通用IO口。
  MC33970則不同,由SPI輸入命令字,即可控制兩路步進(jìn)電機(jī);需要4路步進(jìn)電機(jī)的時(shí)候,使用兩片MC33970,但只需增加一根片選信號(hào)。這樣總共只需要SPI模塊和兩個(gè)通用IO,從而節(jié)省了單片機(jī)的資源。
  ● 有競爭力的成本(數(shù)據(jù)由www.freescale.com獲得) :
  單片機(jī)LJ12大于10000片價(jià)格為單片RMB20,且由于內(nèi)嵌了LCD控制驅(qū)動(dòng)器,無需外加SED1335一類的液晶驅(qū)動(dòng)器。
  MC33970大于10000片價(jià)格為單片$1.3,RMB13,性價(jià)比高。
  相比之下,SWITEC步進(jìn)電機(jī)312.017單價(jià)RMB18左右,驅(qū)動(dòng)芯片x15.089單價(jià)RMB16左右。
  下面是一個(gè)成本估計(jì)的簡表:

成本估計(jì)的簡表

  由上可以看出,在批量生產(chǎn)的情況下,作為一個(gè)全數(shù)字式系統(tǒng),其總成本低于RMB150,大約在RMB120~140之間,具有相當(dāng)?shù)母偁幜Α?br />   ● 綜上:
  該方案是一個(gè)基于Freescale微控制器的汽車電子儀表板的低端方案,面向各種經(jīng)濟(jì)型汽車,具有功能齊備、結(jié)構(gòu)緊湊、價(jià)格低廉的特點(diǎn),會(huì)有廣闊的市場前景。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。