新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計應(yīng)用 > 詳解基于CAN總線的汽車儀表系統(tǒng)—芯片選型與電路設(shè)計

詳解基于CAN總線的汽車儀表系統(tǒng)—芯片選型與電路設(shè)計

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

系統(tǒng)的選型在整個方案設(shè)計中至關(guān)重要,是主要功能實現(xiàn)的關(guān)鍵元件,并直接關(guān)系到外圍元器件的配置要求和整體方案的可實現(xiàn)性。系統(tǒng)性能的穩(wěn)定性、功能需求的可靠性以及市場定位要求和合理的經(jīng)濟性都是在方案選擇中必須考慮的。選擇的過于昂貴,即使性能良好也會因為價格的原因而失去市場;系統(tǒng)方案滿足實驗室臺架試驗,其價格也比較合理,但卻不能滿足汽車電氣設(shè)備基本技術(shù)條件(QC門禪13一2002)中的振動、高低溫、耐酸等試驗,這同樣會使你的開發(fā)方案失去價值。所以在進行開發(fā)方案系統(tǒng)設(shè)計時,選擇適合本系統(tǒng)的MCU是開發(fā)方案成功的重要一步。如今,嵌入式應(yīng)用技術(shù)在過去的20年里得到了迅猛的發(fā)展,世界上很多單片機公司都根據(jù)汽車的特定環(huán)境推出了各種不同性能的MCU 。其中在汽車領(lǐng)域內(nèi)比較領(lǐng)先的有Freeseale、Philips,其他單片機公司如:microchip、atmel、fujitsu、TI、NEC、ST等也相繼開發(fā)除了適合汽車工作環(huán)境的單片機。本系統(tǒng)MCU選擇FREESCAI石公司的16位單片MC9512H128。Freescafe(飛思卡爾)半導(dǎo)體公司(原MOTOROLA公司半導(dǎo)體產(chǎn)品部)是世界上最大的單片機供應(yīng)商。其單片機產(chǎn)品的技術(shù)根基可追溯到1974年的8位處理器MC6800和后來的MC6801,使用HMOS工藝,功耗高。最早出現(xiàn)CMOS工藝的單片機是MC14685,后來出現(xiàn)了HCMOS(高速CMOS)工藝的單片機MC68HC05,產(chǎn)量突破了20億片,是世界上產(chǎn)量最高的單片機。其后又推出了HCS05和HCLDS兩個系列的單片機,于2000年后推出了低功耗、低成本、高性能的8位單片機有Hc08、MCSOS、HCn,其系列品種繁多、片內(nèi)資源豐富,應(yīng)用范圍廣泛,可靠性高,抗干擾能力強。其他相關(guān)產(chǎn)品見表4一1

本文引用地址:http://butianyuan.cn/article/201706/350594.htm

隨著電子技術(shù)的不斷發(fā)展以及人們對產(chǎn)品應(yīng)用性能要求的提高,處理位數(shù)更高的單片機也得到了迅速的發(fā)展,各公司紛紛推出了16位和犯位高性能的單片機。但由于價格,技術(shù)等因素的影響,還沒有普遍應(yīng)用,一般在特定環(huán)境和有專門需求的場合中應(yīng)用。FREESCALE公司的16位單片機產(chǎn)品有HC12系列、512系列、He16系列等[35]。


本課題在方案方案上做了大量工作,經(jīng)過了如下程序:首先根據(jù)功能需求劃分功能模塊,然后根據(jù)功能模塊選擇合適型號的MCU,根據(jù)各MCU的性能進行配置外圍電路,最后通過比較各個方案的綜合性能、成本價格、工藝條件后最后確定了以H128為MCU的開發(fā)方案,選擇了Freescale公司專門為汽車儀表設(shè)計的16位單片機Megs12H12s(以后簡稱HiZs)136]。H12s屬于16位單片機中512系列中的一種(512系列單片機根據(jù)應(yīng)用場合的不同分為A、B、C、D、E、F、G、H、L等系列)。選擇H128其最主要的原因就是其片內(nèi)功能模塊的高集成度完全符合本系統(tǒng)結(jié)構(gòu)框圖方案的功能需求,無需擴展任何外圍電路即可完成系統(tǒng)功能的實現(xiàn)。H128其外圍引腳功能如圖4一1所示。


MC9512H128單片機的功能正好能滿足儀表系統(tǒng)的需求,其內(nèi)部集成的每個功能模塊都在本儀表中使用到,并有部分接口預(yù)留,可以作為功能擴展和產(chǎn)品升級使用。H128內(nèi)部豐富的集成資源、成本價格相對便宜,專門針對汽車環(huán)境進行功能開發(fā)能滿足汽車電子耐溫、振動、耐酸等多項試驗,使得系統(tǒng)性能穩(wěn)定,工作可靠。H128單片機在使用和運行上具有以下特點:

1.低功率消耗:通過編程的方法對輸入時鐘進行分頻,避開了功耗更大的高頻電路,總線速率為4MHz時,通過4分頻,只需使用16MHz晶體。此外,還具有認AIT和STOP模式進一步降低功耗。它還可以使用低頻率晶體(例如32K)的節(jié)能方式,通過PLL倍頻后供MCU使用。程序可控制PLL在滿足要求的前提下盡量降低時鐘速率,自動平衡性能與功耗之間的關(guān)系。

2.兼容性:CPU12完全兼容HCn的源程序,多數(shù)指令匯編后生成相同的目標代碼,它的程序設(shè)計模型與中斷相應(yīng)的堆棧操作順序與HCll完全相同。此外CPU12增加了不少新的指令。

3.提高速度:CPU12是16位的處理器,ALU在某些運算中為20位。MCgs12內(nèi)部所有數(shù)據(jù)總線為16位,外部總線可擴展為16位工作方式,也可以擴展為8位工作方式,這樣可用8位的存儲器件構(gòu)成低成本的應(yīng)用系統(tǒng)。即使選擇了這種8位的工作方式,CPU12仍然按16位方式操作,智能總線接口自動將其分成兩次8位操作,期間暫時凍結(jié)CPu。其次,CPU12具有一個類似流水線的指令隊列,用于緩沖指令代碼。CPU開始執(zhí)行任何一條指令時,除了8位操作碼以外,至少另外兩個字節(jié)的目標代碼對CPU可見。這意味著對于多數(shù)指令來講,開始執(zhí)行時,所需代碼已經(jīng)進入CPU,可在單個周期內(nèi)完成,而無需等待取指令操作。取指令操作固定按照16位進行,與指令代碼長度無關(guān),因此不要求代碼長度是偶數(shù)字節(jié),從而提高了代碼效率。CPU12的指令隊列邏輯和微代碼使對齊的和非對齊的指令執(zhí)行時間完全相同。

4.片內(nèi)集成128KB的閃速存儲器(FLASH)和 6KBRAM及ZKB的EZPRoM。近年來,隨著閃速存儲器在微控制器片內(nèi)的應(yīng)用走向成熟,微控制器的開發(fā)、應(yīng)用又迎來了一次新的飛躍。FLASH是一種非易失性存儲介質(zhì),讀取它的內(nèi)容同RAM的讀取一樣方便,而對它的寫操作卻比EZPROM還要快。同時,在系統(tǒng)掉電后,F(xiàn)LASH中的內(nèi)容仍能可靠保持不變。FLASH的主要優(yōu)點是結(jié)構(gòu)簡單、集成密度大、成本低。由于FLASH可以局部擦除,且寫入、擦除次數(shù)可達數(shù)萬次以上,從而使開發(fā)微控制器不再需要昂貴的仿真器。6KB的RAM使得CPU能適應(yīng)大多數(shù)中高級系統(tǒng)的需求。

5.應(yīng)用鎖相技術(shù)提高了系統(tǒng)的電磁兼容性在以往不使用鎖相環(huán)的微控制器應(yīng)用系統(tǒng)中,晶振電路由于其工作頻率比較高(通常為幾兆赫茲至幾十兆赫茲)而成為一個很大的干擾源,這一問題給系統(tǒng)設(shè)計、線路板布局帶來了很多不便。MCgs12的時鐘發(fā)生系統(tǒng)中巧妙地使用了鎖相技術(shù),因而可在外接幾十千赫的外部晶振情況下,通過軟件編程產(chǎn)生幾兆的系統(tǒng)時鐘,從而降低了對外輻射干擾,提高了系統(tǒng)的穩(wěn)定性。

6.模糊運算指令:HCS12CPU中有特殊的四條模糊邏輯指令,利用他們可以計算隸屬度函數(shù)、加權(quán)或非加權(quán)的規(guī)則推理以及用于加權(quán)平均解模糊算法的輸出求和、權(quán)值求和。利用這些指令,可以在大約50個字節(jié)代碼長度內(nèi)構(gòu)成一個完整的模糊推理核心,執(zhí)行時間僅60us(16MHz晶振)。

7.背景開發(fā)模式:簡單的背景開發(fā)模式(使用在線仿真器或評估板)使得開發(fā)成本進一步降低,也使得現(xiàn)場開發(fā)和系統(tǒng)升級變得比較方便。

8.硬件斷點:如果程序位于ROM中,調(diào)試過程需要使用硬件斷點邏輯。HCS12可以提供兩個普通斷點,或者一個包括16位地址、16位數(shù)據(jù)及讀寫信號的條件斷點。斷點處理方案包括在匹配地址前停止CPU或者產(chǎn)生軟件中斷SWI。雙地址斷點模式下,通過SWI可以為ROM中的程序作兩個軟件補丁。

例如在初始化階段對斷點邏輯進行設(shè)置,使它在遇到錯誤地址時產(chǎn)生SWI,SWI服務(wù)歷程可以調(diào)用安排在EEPROM中的補丁程序,替代受損的指令序列,最后跳轉(zhuǎn)到錯誤指令序列后面繼續(xù)運行。

H128集成了豐富的外圍資源除包括閃速存儲器FLASH和內(nèi)部RAM以外,該芯片還集成多種功能模塊。其各功能模塊分別與外圍電路接口對應(yīng),每個功能模塊都對應(yīng)一個系統(tǒng)功能需求,并與外圍電路和元器件相對應(yīng),是選型的重要參考因素。主要集成的功能模塊:
》26位的epuzZ內(nèi)核 (starCore);
》單線BDM調(diào)試模塊;
》具有可選16位或8位總線擴展能力;
》集成CAN控制器,帶2路CAN控制接口,支持CAN2.OA舊協(xié)議;
》’8路10位精度的習(xí)D轉(zhuǎn)換通道;
》2路PWM(脈寬調(diào)制)輸出;
》6KB的RAM,128KB的FLASH,ZKB的片內(nèi)EEPROM;
》內(nèi)部集成的供單片機核心部分工作的SV電源;
》豐富的刀O資源,最多可利用的刀0引腳達61個;
》16位主計數(shù)器,7位分頻計數(shù)器;
》可驅(qū)動32個前極和4個背極LCD;
》包括同步串行設(shè)備接口(SPI)和一步串行通信接口(Scl);
》6路步進電機驅(qū)動模塊。

4.1.1控制器

H128片內(nèi)具有可擴展的控制器區(qū)域網(wǎng)絡(luò)(Motorolascalablecontrofler areanetwort)模塊,是為16位MCU設(shè)計的通用CAN通信模塊,它和CAN2.0川2.0B完全兼容,實現(xiàn)CAN控制器的功能。控制器和發(fā)動機、變速箱等底盤動力傳動裝置的CAN總線節(jié)點相連,實現(xiàn)CAN總線數(shù)據(jù)的接收與發(fā)送工作卿l。H128中有兩路CAN總線接口,分別為RXCANO、TXCANO和RXCANI、TXCANI。其中CANO口可定義為CAN通信接口,也可定義為J1850通信接口,CANI除了定義為cAN端口外也可定義為IZc端口。雙路CAN接口使得儀表不僅作為CAN總線上的一個節(jié)點,同樣也可以作為一個中繼器,實現(xiàn)不同網(wǎng)絡(luò)協(xié)議之間的互連。MSCAN模塊結(jié)構(gòu)圖如 。

MSCAN模塊具有如下特點:
1)模塊化設(shè)計結(jié)構(gòu);
2)符合CAN2.OA/B標準:支持標準幀和擴展數(shù)據(jù)幀,最多8個BYTE的數(shù)據(jù)長度,支持遠程請求幀,高達IMbps的可編程通信速率;
3)4個具有先進先出FIFO(first· infirstout)結(jié)構(gòu)的緩沖區(qū);
4)3個具有局部優(yōu)先級的發(fā)送器;
5)靈活設(shè)置可屏蔽標識符 (maskableidentifierfilter)的工作方式,可以配置2個32位過濾碼(適用于擴展模式)、4個16位過濾碼或6個8位過濾碼;
6)具有內(nèi)置低通濾波的遠端喚醒功能;
7)可編程為方便調(diào)試的自環(huán)工作模式,即自發(fā)、自收;
8)MSCAN模塊提供了使用方便的自鋇叮模式,用戶可以在不加任何外圍電路的情況下,是CAN的發(fā)送和接收兩個引腳在芯片內(nèi)部相連,用戶可以編程測試CAN模塊的正常使用。MSCAN模塊通過引腳CANT和CANR和驅(qū)動器連接,在 CAN總線上,CANT輸出引腳代表的CAN總線上的邏輯電平,0表示顯性狀態(tài),輸出1表示隱性狀態(tài)。

4.1.A/D轉(zhuǎn)換模塊

H128內(nèi)置一個8路10位線性逐次逼近A/D轉(zhuǎn)換模塊,該模塊特性如下:
1)10位數(shù)字量轉(zhuǎn)換僅需75;
2)采樣緩沖放大器
3)可編程采樣時間
4)數(shù)據(jù)左/右對齊方式,無符號/有符號結(jié)果
5)外部觸發(fā)轉(zhuǎn)換通道
6)轉(zhuǎn)換完成中斷
7)模擬/數(shù)字量復(fù)用通道;
8)1一8位順序轉(zhuǎn)換長度
9)多通道掃描,連續(xù)轉(zhuǎn)化模式
A/D模塊內(nèi)部可分為三個部分:IP總線接口、轉(zhuǎn)換模式控制寄存器/寄存器列表、自定義模擬量。IP總線接口負責(zé)該模塊與總線的連接,實現(xiàn)A/D模塊和通用I/O的目的。轉(zhuǎn)換模式控制寄存器列表中有控制該模塊的所有寄存器,自定義模擬量負責(zé)模擬量到數(shù)字量的轉(zhuǎn)換。A/D轉(zhuǎn)換模塊沒有分頻機制,最大轉(zhuǎn)換時鐘頻率為 ZMHZ,最小轉(zhuǎn)換時鐘為5OOKHZ,所以必須是經(jīng)過分頻后的轉(zhuǎn)換始終頻率處于兩者之間,可能得不到正確的結(jié)果。轉(zhuǎn)換時間可用以下公式來計算:


4.1.3串行外設(shè)接口SPI

在一個單片機系統(tǒng)中,MCU除了進行控制數(shù)據(jù)傳送外,還需要與外圍器件進行數(shù)據(jù)交換。雖然并行接口傳輸速率比串行接口要快,但其占用了太多的硬件資源,而且連線復(fù)雜。所以為了簡化系統(tǒng),現(xiàn)在各廠家推出的芯片中大多都帶有串行數(shù)據(jù)接口。

SPI(serialperipheralinterfaee)是一種高速高效率的同步串行技術(shù),這種接口技術(shù)主要用于MCU與外部接口芯片交換數(shù)據(jù),這在Freesca1e(原Motorola)單片機中已經(jīng)是一個標準模塊,也逐漸成為一種工業(yè)接口標準。SPI接口常用于主從分布系統(tǒng),一個標準的SPI系統(tǒng)包括一個MCU和幾個不同的外部設(shè)備。SPI使用4條線,具體為:


1)串行時鐘線 SCLK(SerialCloCk)。SCLK是主機與從機之間數(shù)據(jù)傳輸?shù)耐叫盘枴τ谥鳈C來說,SCLK是時鐘輸出引腳,而對于從機來說,SCLK就是時鐘輸出引腳。
2)主機輸入、從機輸出數(shù)據(jù)線 MISO(masterin/slaveout).MISO是SPI模塊的兩根串行數(shù)據(jù)之一,在全雙工操作模式下,SPI主機的MISO被連接到從機的MISO,這樣,數(shù)據(jù)由從機傳到主機。僅在SPI設(shè)備配置成主機模式時,才可以由M工50接受數(shù)據(jù)。
3)主機輸出、從機輸入數(shù)據(jù)線 MOSI(Masterout/slavein)。MOSI是Spl模塊的另外一根串行數(shù)據(jù)線。
4)低電平有效的從機選擇線 55(slaveseleet)。55在主機和從機模式中具有不用的功能。從機模式下,SS是依次數(shù)據(jù)傳輸開始前允許SPI工作的片選信號;主機模式下,SS可以置位 MODF標志位,保證一個系統(tǒng)只有一個SPI作為主機。SPI工作原理如同一個16位的分布式移位寄存器,一半在單片機里面,一半在外設(shè)中。當(dāng)SPI工作時,通過串行時鐘線的同步信號,循環(huán)移位8位,從而實現(xiàn)單片機與外設(shè)的數(shù)據(jù)交換。工作原理如圖4一3所示:


4.1.4PWM脈寬調(diào)制模塊

PWM(pulsewidthmodulate)即脈寬調(diào)制,脈寬調(diào)制波是一種可用程序來控制波形占空比、周期、相位的波形。H128單片機內(nèi)部集成了2路PWM輸出通道,在精度要求不高的情況下,PWM模塊可以當(dāng)作單片機的D/A口模塊使用,從而降低系統(tǒng)成本Isl]。本系統(tǒng)正是利用了這一特性來改變儀表背光燈的明暗度,其原理如圖4一4:



HCs12增強型定時器和HC12定時器一樣,有8個輸出比較瑜入捕捉通道,通過選擇n0s寄存器的Iosx位可以在輸出比較和輸入捕捉的功能之間切換(見圖4一5和圖4一6)。

普通輸入通道中帶有一個捕捉寄存器用來記錄管腳上電平變化時自由計數(shù)器的鎖存值。在帶緩沖的輸入捕捉通道中,除了帶有捕捉寄存器之外,還有一個保持寄存器,可以在不中斷的條件下連續(xù)記錄兩次自由計數(shù)器的值。脈沖累加器與定時器中4個帶緩沖的通道相連,通過檢測相應(yīng)管腳上的有效邊緣來記錄脈沖的個數(shù)。相鄰的兩個8位脈沖累加計數(shù)器可以聯(lián)成為一個16位的脈沖計數(shù)器,用戶可以選擇4個8位或者2個16位累加計數(shù)器。定時器最常見的用法是用于內(nèi)部定時和外部脈沖計數(shù),脈沖累加器有兩種工作模式:鎖存方式和隊列方式。

鎖存方式:當(dāng)模數(shù)計數(shù)器減為0、向模數(shù)計數(shù)器寫入$儀刃0或?qū)憦娭奇i存位ICLA時,脈沖累加計數(shù)器將鎖存到相應(yīng)通道的保持寄存器中,并將累加計數(shù)器清零。

隊列方式:當(dāng)讀取某通道保持寄存器的值時,相應(yīng)的脈沖累加器的值將被寫入該保持寄存器中并將脈沖累加器清零。


4.1.6.LCD接口模塊


H128內(nèi)部帶有筆段式LCD驅(qū)動模塊,可以驅(qū)動32個前極和4個背極,所有產(chǎn)生的波形均由片內(nèi)的充電泵提供,不需采用外部元器件腳l。有4個1/0端口BPO一BP3專門用來驅(qū)動背極,其他32個前極驅(qū)動引腳為復(fù)用端口,從FPO一FP27,PT4一PT7。當(dāng)LCD驅(qū)動模塊禁止時,LCD顯示將被關(guān)閉,所有的前極和后極驅(qū)動電壓都為VDD,梯形電阻結(jié)構(gòu)也將不在和VDD相連,以此來降低功耗。一般根據(jù)需要多少背極驅(qū)動來設(shè)置LCD輸出波形的占空比,可以有三種設(shè)置方法:


1)靜態(tài)占空比—僅使用BPO
2)1/3占空比—使用BPO、BPI和BPZ
3)1/4占空比—使用BPO、BPI、BPZ和BP3


當(dāng)LCD驅(qū)動模塊使能后,背極引腳就會按照設(shè)定好的占空比輸出背極波形。背極波形是周期的。

4.1.7步進電機接口模塊


H128內(nèi)部集成了6個步專注電機驅(qū)動模塊,無須在外圍電路增加步進電機驅(qū)動芯片,是目前為止集成在芯片上驅(qū)動步進電機最多的汽車儀表芯片之一。其片內(nèi)有單獨的步進電機電源驅(qū)動模塊,每路驅(qū)動兩個步進電機。對應(yīng)的引腳分別為PUO一PU7,PVO一PV7,PWO一Pw7,通過改變各引腳中的電平高低和頻率來驅(qū)動步進電機按方向和速度運轉(zhuǎn)。


4.1.8內(nèi)部時鐘生成模塊和實時時鐘


HCS12系列毗U具有內(nèi)部時鐘生成模塊ICG.,可以不利用外部器件就可以為MCU產(chǎn)生穩(wěn)定的時鐘源,精度可達到士3.5%。內(nèi)部時鐘發(fā)生器具有可編程的時鐘輸出,同時可以選擇外部時鐘發(fā)生器,通過軟件可選擇總線時鐘為內(nèi)部或者外部時鐘。HCS12系列MCU還具有實時時鐘RTC模塊,它可以提供實時時鐘與日歷功能,并具有年、月和日自動調(diào)整的作用,此外還可產(chǎn)生鬧鐘中斷、周期性中斷和0.015秒表記時中斷。還可以根據(jù)閏年自動調(diào)整日歷功能,其他中斷包括報警中斷、周期性中斷和一個記時定時器。


4.1.9與其他開發(fā)方案的比較


由于51單片機在我國的普及與廣泛應(yīng)用,大多數(shù)的項目工程師都對51單片機的結(jié)構(gòu)和性能非常熟悉。采用51單片機作為MCU,然后增加一個CAN控制器(如sJA10加)也可以組成一個CAN的節(jié)點,即51單片機+CAN控制器的模式。采用這種方式的特點是其結(jié)構(gòu)簡單易懂,開發(fā)費用比較低廉,大多數(shù)學(xué)生也可以有條件進行CAN節(jié)點的開發(fā)。其缺點是51單片機沒有經(jīng)過汽車上相關(guān)環(huán)境性能的試驗,對于突發(fā)性的環(huán)境,會出現(xiàn)錯誤;同時,51單片機的珊口資源相對較少,需要擴充相當(dāng)數(shù)量的外圍電路,如多通道周D轉(zhuǎn)換芯片,步進電機的驅(qū)動芯片,LCD的驅(qū)動芯片等等,致使外圍電路結(jié)構(gòu)復(fù)雜,工藝難度增加,性能也會相對降低,價格成本也比較昂貴腳]。也有部分在汽車儀表上使用的芯片如MICR0eHxP的PxC16F946系列PHILIPS的P8X591系列,F(xiàn)UJISTU公司的MB9()F系列的和Tl公司的TMS32OLF系列等,針對本方案的功能需求,也都存在著資源相對不足的問題。



關(guān)鍵詞: MCU選型 MSCAN MCU

評論


相關(guān)推薦

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

關(guān)閉