基于LIN總線的汽車方向盤按鍵控制器的設計與實現
人們在選購家用轎車時,對舒適性的要求在不斷提高,舒適性能已成為購車因素的一項重要指標。傳統的汽車方向盤只具備控制轉向和喇叭的功能,而隨著汽車車身電子的發展,方向盤上正逐漸集成許多用于控制其他功能的按鍵,如控制收音機的按鈕、控制DVD或者CD播放的按鈕、手機藍牙免提、自動巡航控制等,甚至還預留了用戶可配置功能的按鍵,即學習型按鍵。
本文引用地址:http://www.j9360.com/article/196264.htm方向盤按鍵的設計風格體現了每種車型不同的個性,因此方向盤的按鍵控制設計正受到越來越多車廠的關注。考慮到汽車方向盤按鍵控制器受到安裝空間、多重命令和設計成本等諸多因素的限制,同時LIN(Local Interconnect Network)總線在車身電子低速應用領域具有可靠性高、節省線束的優勢,我們選用飛思卡爾半導體公司的MC9S08SC4作為主控制器,設計了一種基于LIN總線的汽車方向盤按鍵控制器。
按鍵控制器設計難點
汽車方向盤按鍵控制器的設計主要有以下三個難點。
1 安裝空間限制
由于按鍵控制器被安裝在方向盤面板附近的位置,因此需要在設計時盡可能減小印制板的面積,以方便嵌入到方向盤下方狹小的空間,并且要避免與其他模塊(如ABS)安裝的位置發生沖突。
2 線束數量限制
方向盤按鍵控制器在為駕駛員帶來操控舒適性和駕駛樂趣的同時,需要及時處理各按鍵發出的多重控制命令,并將這些命令發送給相應的控制模塊,以完成如CD/DVD播放、定速巡航控制或手機電話的免提功能等。如果使用線束方式將按鍵控制器分別與被控模塊相連,勢必增加線束的成本、布線復雜度和整車重量,因此采用汽車總線的方式實現與各被控模塊之間的通信是高性價比的理想選擇。
3成本限制
從原理上講,按鍵控制器只是將按鍵操作轉化為對應的命令并以最低廉可靠的方式傳給各功能模塊。盡可能減少外圍元器件的個數,以及盡可能利用微控制器提供的片上資源來實現系統功能是設計關鍵所在。
按鍵控制器硬件系統設計
按鍵控制器系統主要由輸入信號調理電路、主控單片機、LIN總線收發器和按鍵背光輸出驅動電路組成,系統框圖如圖1所示。輸入信號調理電路主要對按鍵信號進行鎖存、去抖等處理,處理后的模擬信號送入單片機的AD單元進行數字化轉換,數字信號則送入單片機中斷接口。主控單片機主要完成按鍵信號的檢查、LED背光的控制以及LIN通信。LIN總線收發器配合LIN控制器完成與各控制模塊的總線通信。下面著重對主控單片機和LIN總線收發器的選型予以闡述。
圖1 按鍵控制器系統框圖
的控制以及LIN通信。LIN總線收發器配合L I N控制器完成與各控制模塊的總線通信。下面著重對主控單片機和LIN總線收發器的選型予以闡述。
1 主控單片機
按鍵控制器的設計存在安裝空間、線束數量、成本等諸多限制,關鍵元器件的選型必須綜合考慮這些因素,力求性價比最優。飛思卡爾半導體公司基于增強型H C S08核的8位高性能單片機M C9S08S C4 采用16-T S S O P封裝,外形尺寸僅僅6.40m m×5.00m m,用于方向盤鍵盤控制器設計將大幅減少P C B面積。另一方面,M C9S08S C4內部自帶一個時鐘發生器,校準后能實現全溫度和全電壓范圍內最大誤差不超過±2%的精度,足以滿足時鐘精度要求最高的L I N通信應用。因此,可以直接使用內部數字時鐘提供L I N通信和整個系統所需的時鐘信號,省去了芯片外部的時鐘振蕩器,從而達到節省印制板面積和系統成本的目的。
M C9S08S C4內部集成有L I N控制器,對于汽車方向盤按鍵所要負責的多種控制功能,通過L I N總線可以節省線束成本、減輕重量,也便于功能的升級和裁剪。L I N總線作為一種低成本、高可靠性的汽車總線系統,已在車身電子系統中得到廣泛的應用。雖然L I N控制器可以使用普通的串行口控制器U A R T實現,但是M C9S08S C4內部的串行口控制器S C I模塊不僅能實現U A R T的功能,而且還集成了與L I N通信相關的某些硬件特性(例如,對于L I N通信中非常特殊的Break域的產生和檢測過程)。這種硬件集成的L I N通信的功能,相比使用普通U A R T控制器可幫助用戶降低L I N通信軟件設計復雜度,加快產品研發周期和上市時間。
在汽車方向盤按鍵控制系統中,系統掉電之前的一些數據(例如,最后的音量信息或者定速巡航的速度信息)都需要在下一次上電之后恢復。如果采用傳統的方法即增加一片E E P R O M來保存相應的數據,則會帶來增加印制板面積和成本的雙重壓力。如果單片機片上的F l a s h能夠模擬E E P R O M的操作實現數據的存儲,那么將是最理想的解決方式。而MC9S08SC4 內部FLASH控制器自帶高壓泵支持F L A S H編程和擦除所需要的電壓,同時支持較高的重復編程和擦除操作,也可以動態地保存參數到F L A S H中,因此M C9S08S C4內部FLASH存儲器能夠模擬EEPROM的操作實現數據的存儲,省去了EEPROM芯片。
2 LIN總線收發器
L I N總線收發器是L I N控制器和L I N物理總線之間的接口,其選型應從L I N協議版本、靜態功耗、成本等方面綜合考慮。在本設計中選用的L I N收發器是恩智浦半導體公司的T J A1021。T J A1021支持最新的L I N2.1協議,數據傳輸速率從1~20k b p s,輸入電平兼容3.3V和5V器件,具有極低的電磁發射和高抗電磁干擾性,在睡眠模式下供電電流只有10μ A左右,可實現本地或遠程喚醒,L I N總線對電池和地自動短路保護。T J A1021應用電路如圖2所示,具有4種工作模式:正常工作模式、睡眠模式、待機模式以及啟動模式。當VBAT上電,且控制信號NSLP為低電平,T J A1021即進入啟動模式。正常啟動以后,若NSLP被置為高電平并超過2μ s,T J A1021則進入正常工作模式。此時,若NSLP被置為低電平并超過2μ s,T J A1021則進入睡眠模式。睡眠模式下,如果R X D信號由懸浮狀態變為低電平,則說明檢測到喚醒信號(T X D信號輸出狀態為弱下拉則為本地喚醒,強下拉則為遠程喚醒),TJA1021將自動進入待機模式。V15為齊納二極管,用來抑制汽車電源瞬態過壓以保護收發器的正常工作。
按鍵控制器軟件系統設計
在由方向盤按鍵控制器、收音機功能模塊、車載D V D或者C D功能模塊、自動巡航控制模塊等組成的L I N總線系統中,方向盤按鍵控制器為主節點,其余為從節點。按鍵控制器軟件主程序是采用循環方式不斷掃描按鍵矩陣,當某個按鍵狀態發生變化時,就調用LIN發送函數,通過LIN總
線輸出相應的指令。主程序軟件包括協議層軟件、接口層軟件和應用層軟件三部分。協議層軟件負責底層通信協議的實現及總線信號的產生,接口層軟件提供應用程序接口,應用層軟件負責具體功能的控制。
1 協議層軟件
協議層是整個系統L I N協議實現的核心,負責物理鏈路的控制和使用,它接收來自接口層函數的調用,主要完成多字節數據的發送。在本設計中,多字節發送函數為v o i d_s e n d_data(u8 *temp, u8 num),待發送的數據數組通過指針t e m p傳遞,n u m為要發送的數據字節數,發送程序流程圖如圖3(a)所示。
2 接口層軟件
接口層是協議層與應用層聯系的橋梁,負責將應用層的命令轉換為協議層的數據格式,然后通過協議層將這些數據發送到總線,在本設計中,接口層多字節發送函數為v o i d_u8_d a t a_wr(d a t a_h a n d l e u u u, u8*ptr),程序流程如圖3(b)所示。
圖3 多字節發送流程圖
3 應用層軟件
應用層軟件主要分為3 個基本模塊:總線通信模塊v o i d _ L I N _s e n d(v o i d)、鍵盤狀態檢測模塊v o i dk e y_s c a n(v o id)和鍵盤處理模塊v o i dprocess_(void)。程序開始運行時,先對L I N總線進行初始化,初始化完畢就轉入鍵盤狀態掃描函數key_scan()。該函數監測鍵盤狀態標志,如果狀態改變就調用L I N_s e n d()把對應命令發送到總線上。
試驗測試
根據上述方案,設計了一款簡易的按鍵控制器,配置了3個按鍵來模擬方向盤按鍵的功能,并進行了通信試驗和初步的抗干擾試驗,印制電路板(P C B)如圖4所示。測試方法如下:
圖4 按鍵控制器PCB圖
將按鍵控制器的L I N線、地線分別和自制的LIN總線測試臺LI N線、地線相連,供電電壓為直流12V。當任意按鍵按下時,控制器作為主節點主動向LI N總線發送“#F0”指令,如果LIN總線測試臺接收到該命令字就啟動蜂鳴器報警,同時發光二極管閃爍。實際測試表明按鍵控制器LIN通信功能正常。由于汽車電磁環境惡劣,因此L I N通信系統的抗干擾能力尤為重要。按鍵控制器在B Z-5型汽車電火花干擾試驗臺上進行了抗干擾試驗,試驗中LIN通信功能正常,達到了設計目標。
評論