飛思卡爾微控制器MC9S08SC4的汽車方向盤按鍵控制器技術(shù)
隨著汽車在人們?nèi)粘I钪械钠占耙约捌囯娮釉谄噾?yīng)用領(lǐng)域價(jià)值不斷地?cái)U(kuò)大,越來(lái)越多的舒適性能和“智能”應(yīng)用被集成進(jìn)車身電子的領(lǐng)域。飛思卡爾最新的汽車級(jí)8位微控制器MC9S08SC4便是本文所要介紹的主角,該款微控制器是業(yè)界使用廣泛的飛思卡爾HCS08系列汽車級(jí)微控制器家族最新的成員,以其低成本、小封裝但同時(shí)兼具高性能、高可靠性的特點(diǎn),適用于眾多汽車電子應(yīng)用領(lǐng)域,例如:簡(jiǎn)單的燈光控制、按鍵控制、HVAC、LIN通信控制器、車內(nèi)后視鏡調(diào)光以及簡(jiǎn)單的繼電器和馬達(dá)控制。如果你正在為你的應(yīng)用物色一顆高性能、低成本的汽車級(jí)微控制器,但又為電子模塊成本和PCB面積的限制而苦惱,相信MC9S08SC4正是你要找的這顆芯片。
MC9S08SC4的片上資源及性能
MC9S08SC4作為飛思卡爾HCS08汽車級(jí)8位微控制器家族的成員,設(shè)計(jì)上延續(xù)了HCS08微控制器許多的優(yōu)點(diǎn),例如總線頻率高達(dá)20Mhz的HCS08內(nèi)核,高質(zhì)量汽車級(jí)內(nèi)置Flash存儲(chǔ)器可用于EEPROM的模擬,芯片上自帶的時(shí)鐘振蕩器在全溫度和電壓范圍內(nèi)可校準(zhǔn)至±2%的精度,還包括內(nèi)部增強(qiáng)型支持LIN通信的串口控制器。圖1是MC9S08SC4芯片內(nèi)部的結(jié)構(gòu)框圖和資源配置。
MC9S08SC4的典型應(yīng)用
人們?cè)谶x擇家用轎車時(shí),對(duì)舒適性要求不斷提高,因此在整車的設(shè)計(jì)中舒適性能也受到越來(lái)越廣泛地重視,舒適性能已成為購(gòu)車因素的一項(xiàng)重要指標(biāo)。因此即使在許多中低端的轎車上這種需求也隨處可見(jiàn),例如現(xiàn)在汽車的方向盤已經(jīng)不僅僅是傳統(tǒng)的只具備控制方向和喇叭的功能,在它上面往往會(huì)集成用于控制其他功能的按鍵,例如控制收音機(jī)的操作按鈕、控制DVD或者CD播放的操作按鈕、手機(jī)藍(lán)牙免提、自動(dòng)巡航控制按鈕,甚至還預(yù)留了用戶可配置功能的按鍵。方向盤按鍵的不同風(fēng)格體現(xiàn)了每種車型不同的個(gè)性,因此按鍵設(shè)計(jì)正受到越來(lái)越多車廠的關(guān)注。
本文所要介紹的MC9S08SC4微控制器非常適合類似方向盤按鍵這樣應(yīng)用,能幫助汽車制造商在不增加高昂成本的情況下獲得比競(jìng)爭(zhēng)者對(duì)手較大的差異化優(yōu)勢(shì)。MC9S08SC4在鍵盤的應(yīng)用中可作為一個(gè)LIN通信的Slave節(jié)點(diǎn),負(fù)責(zé)采集來(lái)自方向盤按鍵的各種控制信號(hào),然后通過(guò)LIN總線將這些信號(hào)傳遞給車內(nèi)其他的控制器單元,這些控制包括車身電子控制器、CD或者DVD控制器、藍(lán)牙通信控制器和儀表盤控制器等。
圖2所示是利用MC9S08SC4作為方向盤按鍵控制器的系統(tǒng)框圖,簡(jiǎn)單地表明了整個(gè)控制系統(tǒng)從鍵盤信號(hào)輸入端經(jīng)過(guò)邏輯控制最終輸出驅(qū)動(dòng)信號(hào)這一完整的控制流程。汽車方向盤按鍵控制器單元由藍(lán)色框內(nèi)部組成,雖然整個(gè)控制系統(tǒng)的結(jié)構(gòu)相對(duì)簡(jiǎn)單,但是該應(yīng)用還是有一些設(shè)計(jì)上的挑戰(zhàn)。
汽車方向盤按鍵控制器系統(tǒng)設(shè)計(jì)挑戰(zhàn)
汽車方向盤按鍵控制器的設(shè)計(jì),主要的挑戰(zhàn)在于:
方向盤按鍵控制器在安裝的空間上受到限制,由于控制器會(huì)被安裝在方向盤面板附近的位置,因此需要在設(shè)計(jì)時(shí)盡可能減小PCB的面積,以方便地嵌入到方向盤下方狹小的空間,并且要避免和其它模塊例如ABS安裝的位置發(fā)生沖突。
方向盤按鍵控制器在為駕駛員帶來(lái)操控舒適性和駕駛樂(lè)趣的同時(shí),需要承擔(dān)來(lái)自按鍵發(fā)出的多重的控制命令并將這些命令發(fā)送給相應(yīng)的控制模塊,例如各種和CD/DVD相關(guān)的娛樂(lè)功能,定速巡航控制和手機(jī)或者電話的免提功能,如果使用線束方式將這些功能分別連接到控制對(duì)象,將增加大量線束的成本和整車的重量,并且大量的線束也將增加布線的復(fù)雜程度,因此,通過(guò)汽車總線的方式實(shí)現(xiàn)模塊之間的通信是一種性價(jià)比很高的選擇。
對(duì)于成本敏感的應(yīng)用中,如何盡可能減少外部元器件的個(gè)數(shù),以及盡可能利用微控制器提供的片上資源來(lái)實(shí)現(xiàn)系統(tǒng)功能是設(shè)計(jì)關(guān)鍵所在。但這對(duì)微控制器本身的性能提出了嚴(yán)峻挑戰(zhàn),對(duì)于一顆汽車入門級(jí)的微控制器而言尤其如此。
MC9S08SC4如何應(yīng)對(duì)系統(tǒng)設(shè)計(jì)挑戰(zhàn)
MC9S08SC4系列微控制器在芯片設(shè)計(jì)之初便預(yù)見(jiàn)到了在類似應(yīng)用中系統(tǒng)設(shè)計(jì)鎖面臨的挑戰(zhàn),以下將介紹MC9S08SC4是如何逐一克服上述挑戰(zhàn)的。
MC9S08SC4系列微控制器的封裝為16-TSSOP,包括管腳的外形尺寸僅為6.40×5.00mm2,用于方向盤鍵盤控制器設(shè)計(jì)將大幅減少PCB面積。另一方面,由于在MC9S08SC4微控制器內(nèi)部自帶一個(gè)時(shí)鐘發(fā)生器,并且在全溫度和全電壓范圍內(nèi),經(jīng)過(guò)校準(zhǔn)后能實(shí)現(xiàn)最大誤差不超過(guò)±2%的精度,因此,即使對(duì)于該系統(tǒng)中對(duì)時(shí)鐘精度要求最高的應(yīng)用(LIN的通信)來(lái)說(shuō)也能夠勝任?;谏鲜龇治?,用戶可以直接使用內(nèi)部數(shù)字時(shí)鐘來(lái)提供LIN通訊和整個(gè)系統(tǒng)所需的時(shí)鐘信號(hào),從而省去在芯片外部接一個(gè)晶振或者時(shí)鐘振蕩器,達(dá)到節(jié)省PCB 面積和系統(tǒng)成本的目的。
對(duì)于汽車方向盤鍵盤所要負(fù)責(zé)的多種控制功能,通過(guò)LIN總線的方式同樣能達(dá)到節(jié)省線束成本、減輕重量和便于功能的升級(jí)和裁剪的效果。LIN作為一種低成本、高可靠性的汽車總線系統(tǒng),在車身電子系統(tǒng)中得到廣泛的應(yīng)用,雖然LIN控制器可以使用普通的串行口控制器UART實(shí)現(xiàn),但是MC9S08SC4上的串行口控制器SCI模塊不僅能實(shí)現(xiàn)UART的功能,而且還集成了和LIN通信相關(guān)的某些硬件特性,例如對(duì)于LIN通信中非常特殊的Break域的產(chǎn)生和檢測(cè)過(guò)程,這種硬件集成的LIN通信的功能,相比使用普通UART控制器可幫助用戶降低LIN通信軟件設(shè)計(jì)復(fù)雜度,加快產(chǎn)品研發(fā)周期和上市時(shí)間。
圖3所示是LIN通信數(shù)據(jù)幀結(jié)構(gòu)圖,其中位于最左邊的Break域是由LIN總線系統(tǒng)中的Master節(jié)點(diǎn)發(fā)送,用于表明一幀數(shù)據(jù)開(kāi)始的標(biāo)志,相應(yīng)的LIN總線系統(tǒng)的Slave任務(wù)需要正確識(shí)別Break域之后才能完成相應(yīng)的LIN通信過(guò)程。在每一次LIN總線通信開(kāi)始階段,都必須由Master節(jié)點(diǎn)來(lái)產(chǎn)生一個(gè)Break域,才能發(fā)起一次LIN的通訊,如果這個(gè)過(guò)程可以通過(guò)硬件來(lái)完成,那么將大大降低CPU的工作負(fù)荷;反之,Slave任務(wù)對(duì)于Break域判別過(guò)程也同樣存在這種差別。
根據(jù)LIN通信協(xié)議規(guī)定,Break域由至少連續(xù)13位的顯性電平信號(hào)組成,它也是在整個(gè)LIN的數(shù)據(jù)幀結(jié)構(gòu)中唯一不遵循如圖4所示的字節(jié)結(jié)構(gòu)形式的域。因此,對(duì)于標(biāo)準(zhǔn)的串行通信控制器UART產(chǎn)生和識(shí)別Break域,必須借助于軟件和其他的硬件手段才能完成,這是軟件設(shè)計(jì)的一大挑戰(zhàn)。例如,當(dāng)Master產(chǎn)生Break信號(hào)時(shí),需要UART借助一個(gè)定時(shí)器通道,產(chǎn)生一段至少13個(gè)比特長(zhǎng)度的時(shí)間,然后通過(guò)軟件控制相應(yīng)的Tx端口在這段定時(shí)時(shí)間內(nèi)輸出顯性電平,才能完成一個(gè)Break域的產(chǎn)生。與之相對(duì)應(yīng),如果普通串行通信控制器UART作為Slave節(jié)點(diǎn),當(dāng)它需要檢測(cè)Break域時(shí),完成這個(gè)過(guò)程同樣需要借助額外的硬件和軟件手段完成。
但是,對(duì)于MC9S08SC4微控制器上的串行口控制器SCI,如果MC9S08SC4作為Master節(jié)點(diǎn)產(chǎn)生Break域的過(guò)程,只需要通過(guò)操作SCI中的相應(yīng)控制寄存器中的SBK位便能產(chǎn)生;反之,當(dāng)它作為Slave節(jié)點(diǎn)時(shí),既可以通過(guò)查詢狀態(tài)寄存器中的LBKDIF標(biāo)志的方式,也可以通過(guò)中斷的方式自動(dòng)識(shí)別LIN總線上是否有Break域。LIN通信的Break域的產(chǎn)生和識(shí)別在MC9S08SC4中,對(duì)于用戶而言只需通過(guò)操作相關(guān)的寄存器實(shí)現(xiàn),然后實(shí)際的操作過(guò)程則是通過(guò)SCI控制器的硬件在后臺(tái)完成,相對(duì)于不具備這些硬件特性的普通串行通信控制器,MC9S08SC4在實(shí)現(xiàn)LIN通信的軟件和硬件上都為用戶帶來(lái)了很多優(yōu)勢(shì)。