基于MC9S08SC4的汽車方向盤按鍵控制器技術(shù)
汽車方向盤按鍵控制器系統(tǒng)設(shè)計(jì)挑戰(zhàn)
汽車方向盤按鍵控制器的設(shè)計(jì),主要的挑戰(zhàn)在于:
方向盤按鍵控制器在安裝的空間上受到限制,由于控制器會被安裝在方向盤面板附近的位置,因此需要在設(shè)計(jì)時(shí)盡可能減小PCB的面積,以方便地嵌入到方向盤下方狹小的空間,并且要避免和其它模塊例如ABS安裝的位置發(fā)生沖突。
方向盤按鍵控制器在為駕駛員帶來操控舒適性和駕駛樂趣的同時(shí),需要承擔(dān)來自按鍵發(fā)出的多重的控制命令并將這些命令發(fā)送給相應(yīng)的控制模塊,例如各種和CD/DVD相關(guān)的娛樂功能,定速巡航控制和手機(jī)或者電話的免提功能,如果使用線束方式將這些功能分別連接到控制對象,將增加大量線束的成本和整車的重量,并且大量的線束也將增加布線的復(fù)雜程度,因此,通過汽車總線的方式實(shí)現(xiàn)模塊之間的通信是一種性價(jià)比很高的選擇。
對于成本敏感的應(yīng)用中,如何盡可能減少外部元器件的個(gè)數(shù),以及盡可能利用微控制器提供的片上資源來實(shí)現(xiàn)系統(tǒng)功能是設(shè)計(jì)關(guān)鍵所在。但這對微控制器本身的性能提出了嚴(yán)峻挑戰(zhàn),對于一顆汽車入門級的微控制器而言尤其如此。
MC9S08SC4如何應(yīng)對系統(tǒng)設(shè)計(jì)挑戰(zhàn)
MC9S08SC4系列微控制器在芯片設(shè)計(jì)之初便預(yù)見到了在類似應(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)過校準(zhǔn)后能實(shí)現(xiàn)最大誤差不超過±2%的精度,因此,即使對于該系統(tǒng)中對時(shí)鐘精度要求最高的應(yīng)用(LIN的通信)來說也能夠勝任?;谏鲜龇治?,用戶可以直接使用內(nèi)部數(shù)字時(shí)鐘來提供LIN通訊和整個(gè)系統(tǒng)所需的時(shí)鐘信號,從而省去在芯片外部接一個(gè)晶振或者時(shí)鐘振蕩器,達(dá)到節(jié)省PCB 面積和系統(tǒng)成本的目的。
對于汽車方向盤鍵盤所要負(fù)責(zé)的多種控制功能,通過LIN總線的方式同樣能達(dá)到節(jié)省線束成本、減輕重量和便于功能的升級和裁剪的效果。LIN作為一種低成本、高可靠性的汽車總線系統(tǒng),在車身電子系統(tǒng)中得到廣泛的應(yīng)用,雖然LIN控制器可以使用普通的串行口控制器UART實(shí)現(xiàn),但是MC9S08SC4上的串行口控制器SCI模塊不僅能實(shí)現(xiàn)UART的功能,而且還集成了和LIN通信相關(guān)的某些硬件特性,例如對于LIN通信中非常特殊的Break域的產(chǎn)生和檢測過程,這種硬件集成的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ù)開始的標(biāo)志,相應(yīng)的LIN總線系統(tǒng)的Slave任務(wù)需要正確識別Break域之后才能完成相應(yīng)的LIN通信過程。在每一次LIN總線通信開始階段,都必須由Master節(jié)點(diǎn)來產(chǎn)生一個(gè)Break域,才能發(fā)起一次LIN的通訊,如果這個(gè)過程可以通過硬件來完成,那么將大大降低CPU的工作負(fù)荷;反之,Slave任務(wù)對于Break域判別過程也同樣存在這種差別。
根據(jù)LIN通信協(xié)議規(guī)定,Break域由至少連續(xù)13位的顯性電平信號組成,它也是在整個(gè)LIN的數(shù)據(jù)幀結(jié)構(gòu)中唯一不遵循如圖4所示的字節(jié)結(jié)構(gòu)形式的域。因此,對于標(biāo)準(zhǔn)的串行通信控制器UART產(chǎn)生和識別Break域,必須借助于軟件和其他的硬件手段才能完成,這是軟件設(shè)計(jì)的一大挑戰(zhàn)。例如,當(dāng)Master產(chǎn)生Break信號時(shí),需要UART借助一個(gè)定時(shí)器通道,產(chǎn)生一段至少13個(gè)比特長度的時(shí)間,然后通過軟件控制相應(yīng)的Tx端口在這段定時(shí)時(shí)間內(nèi)輸出顯性電平,才能完成一個(gè)Break域的產(chǎn)生。與之相對應(yīng),如果普通串行通信控制器UART作為Slave節(jié)點(diǎn),當(dāng)它需要檢測Break域時(shí),完成這個(gè)過程同樣需要借助額外的硬件和軟件手段完成。
但是,對于MC9S08SC4微控制器上的串行口控制器SCI,如果MC9S08SC4作為Master節(jié)點(diǎn)產(chǎn)生Break域的過程,只需要通過操作SCI中的相應(yīng)控制寄存器中的SBK位便能產(chǎn)生;反之,當(dāng)它作為Slave節(jié)點(diǎn)時(shí),既可以通過查詢狀態(tài)寄存器中的LBKDIF標(biāo)志的方式,也可以通過中斷的方式自動識別LIN總線上是否有Break域。LIN通信的Break域的產(chǎn)生和識別在MC9S08SC4中,對于用戶而言只需通過操作相關(guān)的寄存器實(shí)現(xiàn),然后實(shí)際的操作過程則是通過SCI控制器的硬件在后臺完成,相對于不具備這些硬件特性的普通串行通信控制器,MC9S08SC4在實(shí)現(xiàn)LIN通信的軟件和硬件上都為用戶帶來了很多優(yōu)勢。
評論