無鑰匙系統(tǒng)的中心議題:
- RKE系統(tǒng)的設(shè)計(jì)
無鑰匙系統(tǒng)的解決方案:
- 選取MAX1473接收芯片和MAX7044發(fā)射芯片
- 選取MC9RS08KA2 作為微處理器
當(dāng)今70%的汽車商選用RKE(Remote Keyless Entry,遠(yuǎn)程無鑰匙進(jìn)入)系統(tǒng),或?qū)⑵渥鳛橐粋€(gè)標(biāo)準(zhǔn)。RKE系統(tǒng)主要由按鍵加密發(fā)送器和車內(nèi)內(nèi)置接收器組成,結(jié)構(gòu)框圖如圖1所示。它們主要用在汽車門 控制、無線傳感器、汽車無線胎壓監(jiān)測TPMS(Tire Pressure Monitor System)等方面,使用的頻率是315 MHz(美國和日本地區(qū))、433.92 Hz(歐洲地區(qū))。歐洲同時(shí)開放了868 MHz頻率來適應(yīng)RKE系統(tǒng)的增長需求。
RKE系統(tǒng)的用戶可以通過鑰匙鏈發(fā)送數(shù)據(jù)來打開和關(guān)閉汽車門。圖1中,用戶可以按下按鍵開關(guān)來發(fā)起與接收機(jī)的通信,通過一串64~128位長度 的數(shù)據(jù)流進(jìn)行發(fā)送器和接收器的會(huì)話。該數(shù)據(jù)流包括前引導(dǎo)碼、命令碼和一串加密滾動(dòng)碼。通信速率通常選用2~20 kHz之間,采用ASK調(diào)制方式,主要為了延長發(fā)送部分鑰匙鏈中電池的使用壽命。
1 系統(tǒng)設(shè)計(jì)
1.1 功率設(shè)計(jì)
設(shè)計(jì)中主要考慮的是低電流消耗情況下的高可靠性、系統(tǒng)的成本以及發(fā)送器和接收器的壽命。對于發(fā)送器,電池壽命在3~5年是可以滿足要求的。電池 壽命對于接收器件也很重要,因?yàn)榻邮掌骷仨毧偸窃诰€偵聽發(fā)送端數(shù)據(jù),典型的電流要求不超過1 mA。一個(gè)設(shè)計(jì)方法是,在一定時(shí)間內(nèi),接收端保證能夠檢測到有效的發(fā)送信號(hào);為了最大限度地節(jié)約電量,接收器在其他的時(shí)間睡眠。
1.2 安全性設(shè)計(jì)
系統(tǒng)的安全性也是一項(xiàng)主要考慮的因素。通過采用Microchip公司專為RKE系統(tǒng)設(shè)計(jì)的使用DES算法的安全密鑰芯片HCS300來實(shí)現(xiàn)系統(tǒng)數(shù)據(jù)的安全加密,防止發(fā)送的數(shù)據(jù)被惡意盜取拷貝;同時(shí)在接收端使用MC9RS08KA2進(jìn)行解密和繼電器控制。
HCS300的操作電壓為2.0~6.3 V,是一個(gè)可編程28位串行碼、64位加密鍵值、66位發(fā)送長度、32位跳頻碼、4位按鍵碼、2位狀態(tài)碼,具有鍵值讀保護(hù)措施的芯片。
DES編碼、解碼圖如圖2和圖3所示。
[page]16位的同步計(jì)算器,在每次發(fā)送代碼后都要發(fā)生改變。它隨按鍵的次數(shù)而增加。根據(jù)DES算法加密,在每次發(fā)送的代碼中,由于同步計(jì)數(shù)器的變化而 使得每次發(fā)送的代碼有大于50%的部分不一樣。圖2說明在編碼過程中如何使用HCS300的內(nèi)部可編程EEPROM,一旦編碼器檢測有按鍵按下,它就立即 讀鍵值,同時(shí)刷新同步計(jì)數(shù)器。按鍵和同步計(jì)數(shù)器經(jīng)過加密算法處理,輸出數(shù)據(jù)是32位的加密信息。攜帶按鍵信息的32位代碼和串行碼組成了整個(gè)發(fā)送碼,將被 接收部分接收到。
解碼部分必須先學(xué)習(xí)發(fā)送端的數(shù)據(jù)碼,學(xué)習(xí)包括計(jì)算發(fā)送端的鍵值、解密32位的加密信息和可編程陣列中的串行碼、同步計(jì)數(shù)器以及鍵值。在正常的操 作模式中,每次接收到的有效格式的信息都被計(jì)算。串行碼用于表示發(fā)送碼是否被學(xué)習(xí)過。如果發(fā)送碼被學(xué)習(xí)過,那么它的信息被解密和同步計(jì)數(shù)器值校驗(yàn),最后接 收系統(tǒng)執(zhí)行按鍵操作請求。圖3表示了接收部分接收到的信息和它的可編程EEPROM(設(shè)計(jì)中使用AT24C02)中存儲(chǔ)信息的關(guān)系。
1.3 射頻收發(fā)器件和微處理器特性
為了保證系統(tǒng)能夠在較低電流消耗的情況下,有較高的發(fā)射功率和接收靈敏度,系統(tǒng)選用了Maxim公司的MAX1473接收芯片和MAX7044發(fā)射芯片。
MAX7044 發(fā)射芯片工作電壓為+2.1~6.0 V,7.7 mA的低工作電流,250 μs的啟動(dòng)時(shí)間。通信速率能達(dá)到100 kbps,小封裝3 mm×3 mm,8引腳SOT23封裝。它消除了基于SAW發(fā)送器設(shè)計(jì)的問題;采用晶體結(jié)構(gòu),提供了更大的調(diào)制深度和快速的頻率響應(yīng)機(jī)制;降低了溫度的影響,溫度范 圍可達(dá)-40~125 ℃。
MAX1473接收芯片采用3.3 V鋰電池供電,250 μs啟動(dòng)時(shí)間,小于2.5 μA的待機(jī)模式工作電流,-114 dBm的靈敏度;采用TSSOP 28引腳封裝設(shè)計(jì)。
MC9RS08KA2 作為Freescale公司新推出的一款集成多個(gè)功能的高性價(jià)比MCU,具有鍵盤中斷和高達(dá)20 MHz的內(nèi)部時(shí)鐘,以及8位模計(jì)數(shù)器,2 KB Flash空間,63字節(jié)RAM;同時(shí)有等待和3種停止模式,滿足系統(tǒng)的超低功耗設(shè)計(jì)(設(shè)計(jì)中電流小于1 μA),以及簡易的6引腳BDM編程調(diào)試接口,便于系統(tǒng)的實(shí)時(shí)升級(jí)。設(shè)計(jì)中采用6引腳DFN精密小引腳封裝,滿足系統(tǒng)的小體積要求。
1.4 硬件設(shè)計(jì)圖
按鍵DES硬件加密部分電路如圖4所示。發(fā)送部分射頻前端電路如圖5所示。
接收部分射頻前端電路如圖6所示,元器件參數(shù)如表1所列。接收部分微處理器控制電路如圖7所示。
[page]
1.5 軟件設(shè)計(jì)
編碼加密操作流程如圖8所示。
如果有按鍵按下,HCS300將被喚醒,同時(shí)通過10 ms延時(shí)消抖。同步計(jì)數(shù)器、描述信息、按鍵信息被編碼形成跳頻碼。每次發(fā)送跳頻碼都會(huì)不一樣,即便是同一個(gè)按鍵按下,在64K次按鍵過程中發(fā)送的跳頻碼也 不會(huì)發(fā)生重復(fù),因此在較長的時(shí)間內(nèi),按鍵密鑰信息不會(huì)被盜取。如果在發(fā)送的過程中檢測到新的按鍵按下,那么將會(huì)立即復(fù)位,而且當(dāng)前的代碼將不會(huì)繼續(xù)執(zhí)行; 離開按鍵后,對代碼字是沒有影響的,除非沒有按鍵繼續(xù)保持按下狀態(tài),在任何情況下傳輸代碼都會(huì)完成,同時(shí)系統(tǒng)下電。
接收部分解碼解密流程如圖9所示。
上電后,MC9RS08KA2開始判斷系統(tǒng)是否有I/O中斷產(chǎn)生。如果沒有,則系統(tǒng)進(jìn)入低功耗睡眠模式(停止模式3);如果有I/O中斷產(chǎn)生, 那么進(jìn)入中斷,喚醒MCU,同時(shí)進(jìn)行軟件DES算法解密。如果解密不成功,則繼續(xù)接收數(shù)據(jù);如果解密成功,則執(zhí)行相應(yīng)的繼電器操作(如開/關(guān)門等),然后 系統(tǒng)繼續(xù)進(jìn)入睡眠狀態(tài)。
2 結(jié)論
通過結(jié)合多家外圍器件和微處理器件,利用Microchip KEELOQ芯片的安全性,Maxim的射頻芯片的可靠性、穩(wěn)定性和Freescale微處理器的高集成度及性價(jià)比,整合各家優(yōu)勢,提高了系統(tǒng)的整體性能。通過實(shí)際運(yùn)行,系統(tǒng)達(dá)到了預(yù)先設(shè)計(jì)的要求。本次設(shè)計(jì)只使用了2個(gè)按鍵,根據(jù)需要可以外擴(kuò)功能按鍵達(dá)到15個(gè),用于實(shí)現(xiàn)不同的控制信息要求。設(shè)計(jì)人員可 以根據(jù)自行需要進(jìn)行相應(yīng)的擴(kuò)展。