一種汽車雙向遙控門鎖系統(tǒng)的實(shí)現(xiàn)
摘 要:本文介紹了基于射頻SoC nRF9E5的無線收發(fā)系統(tǒng)框架、各個(gè)組成部分、工作方式和配置方法。在此基礎(chǔ)上,設(shè)計(jì)了由nRF9E5和4位點(diǎn)陣式LCD模塊構(gòu)成的一種簡單的雙向遙控門鎖顯示系統(tǒng)。
關(guān)鍵詞:雙向遙控門鎖;無線收發(fā)系統(tǒng);LCD
引言
汽車遙控車門開關(guān)(remote keyless entry,RKE)已經(jīng)成為汽車不可或缺的部分。RKE對(duì)于提高汽車的防盜性和控制性有重要意義。以往設(shè)計(jì)的單向RKE 系統(tǒng)由一個(gè)控制端與一個(gè)執(zhí)行端組成,這種系統(tǒng)最大的不便是只有用戶發(fā)送信息給車門,而車門無法將自己的信息反饋給用戶,這就使得用戶無法知道汽車的狀況,給汽車的安全帶來隱患。此外,由于系統(tǒng)由電池供電,降低功耗也是一個(gè)比較大的問題。為了解決這兩個(gè)問題,本文設(shè)計(jì)了一個(gè)基于無線收發(fā)芯片nRF9E5和LCD芯片12864-12實(shí)現(xiàn)的雙向RKE系統(tǒng)。
圖1 雙向RKE系統(tǒng)構(gòu)成
圖2 nRF9E5與 點(diǎn)陣式LCD接口示意圖
圖3 上位機(jī)收發(fā)程序流程
圖4 下位機(jī)收發(fā)程序流程
nRF9E5功能介紹
nRF9E5 是Nordic 公司 推出的系統(tǒng)級(jí)RF芯片,其內(nèi)置nRF905 43 3/868/915 MHz收發(fā)器、8051 兼容微控制器和4 輸入10 位80ksps ADC,其內(nèi)置nRF905 收發(fā)器與nRF905 芯片的收發(fā)器一樣, 可以工作于ShockBurst(自動(dòng)處理前綴、地址和CRC)方式。內(nèi)置電壓調(diào)整模塊, 最大限度地抑制噪聲, 為系統(tǒng)提供1 . 9 ~3.6V 的工作電壓。
nRF9E5 的片內(nèi)微控制器有1 個(gè)和8051相同的串口,可以用定時(shí)器1 和定時(shí)器2 來作為異步通信的波特率產(chǎn)生器。微處理器中含有256B的數(shù)據(jù)RAM和512B的ROM,此外, 還擴(kuò)展了2 個(gè)數(shù)據(jù)指針, 以方便于從XRAM 區(qū)讀取數(shù)據(jù)。上電復(fù)位或軟件復(fù)位后, 處理器自動(dòng)執(zhí)行ROM引導(dǎo)區(qū)中的代碼。用戶程序通常是在引導(dǎo)區(qū)的引導(dǎo)下, 從EEPROM加載到1個(gè)4KB的RAM中, 這個(gè)4KB的RAM也可用于存儲(chǔ)數(shù)據(jù)。
nRF9E5片內(nèi)集成了收發(fā)器,它可以通過內(nèi)部并行端口或內(nèi)部SPI與其它模塊進(jìn)行通信,具有同單片射頻收發(fā)器nRF905 相同的功能。收發(fā)器通過片內(nèi)的并行端口或S P I與微控制器通信。nRF9E5收發(fā)器由1 個(gè)完整的頻率合成器、1 個(gè)功率放大器、1 個(gè)調(diào)節(jié)器和2 個(gè)接收器組成。輸出功率、頻道和其它射頻參數(shù)可通過對(duì)特殊功能寄存器RADIO(0xA0) 編程進(jìn)行控制。在發(fā)射模式下,射頻電流為11mA,接收模式下為12.5mA。為了節(jié)能, 可通過程序控制收發(fā)器的開/ 關(guān)。
雙向RKE系統(tǒng)硬件組成
雙向RKE系統(tǒng)由數(shù)據(jù)終端和主收發(fā)器兩大部分組成。其中數(shù)據(jù)終端是用戶隨身攜帶的,可以理解為一種遙控鑰匙,而主收發(fā)器是安裝在車門內(nèi)的,用于開啟車門。數(shù)據(jù)終端和主收發(fā)器之間的數(shù)據(jù)通信是通過nRF9E5來進(jìn)行的。由于nRF9E5內(nèi)置微控制器且所傳輸?shù)臄?shù)據(jù)量不是很大,因此在RKE系統(tǒng)中既不需要另外附加微控制器,也不需要擴(kuò)展其它的存儲(chǔ)器,使得系統(tǒng)硬件構(gòu)造非常簡單。整個(gè)雙向RKE系統(tǒng)如圖1所示。
其中主收發(fā)器和數(shù)據(jù)終端都可以通過RS-232或者USB接口與PC相連,可以實(shí)現(xiàn)PC與nRF9E5之間的通信,這樣就可以通過PC將數(shù)據(jù)終端要顯示的字符(報(bào)警信息)以ASCII的形式寫入到數(shù)據(jù)終端的內(nèi)存中,當(dāng)汽車需要報(bào)警時(shí),數(shù)據(jù)終端就將這些報(bào)警信息提出來,然后通過LCD顯示出來。同時(shí)可以通過PC將所有命令預(yù)先固化到硬件中,到時(shí)用戶只需要通過手中的按鍵操作就可以實(shí)現(xiàn)數(shù)據(jù)的雙向傳送。
在用戶端的數(shù)據(jù)終端中,由于采用的LCD為4位點(diǎn)陣式液晶顯示器,此顯示模塊內(nèi)部的控制和驅(qū)動(dòng)器都是由CMOS電路組成,CMOS電路是低功耗器件,而nRF9E5也是采用CMOS結(jié)構(gòu),故可以省去單片機(jī)與顯示模塊之間的驅(qū)動(dòng)電路,直接將兩者相連。其硬件接口連接如圖2所示。按圖中接口,上電時(shí),LCD自動(dòng)復(fù)位為8位數(shù)據(jù)總線、單行顯示方式,顯示器的左8位點(diǎn)亮,右8位熄滅。在初始化程序中須用指令將LCD設(shè)置成4位數(shù)據(jù)總線、雙行顯示方式,使顯示的左8位和右8位都處在工作狀態(tài)。
此外,對(duì)于nRF9E5而言,其最大的優(yōu)點(diǎn)是具有載波檢測功能。當(dāng)收發(fā)器準(zhǔn)備發(fā)送數(shù)據(jù)時(shí), 它首先進(jìn)入接收方式并探測所工作的信道是否空閑。載波檢測的標(biāo)準(zhǔn)一般比靈敏度低5 dBm,比如,靈敏度為-100 dBm,載波檢測功能探測低至-105 dBm 的載波。也就是說,載波低于-105 dBm,載波檢測信號(hào)為低(一般為0),高于-95 dBm,則載波檢測信號(hào)為高(一般為VDD),介于-105~-95 dBm 之間, 載波檢測信號(hào)可能為低也可能為高。這個(gè)特性很好避免了同一工作頻率下不同發(fā)射器數(shù)據(jù)包之間的碰撞,有效地防止了信號(hào)的干擾。提高了無線鑰匙收發(fā)的穩(wěn)定性。
此外,在系統(tǒng)中還需加一簡單的蜂鳴器。當(dāng)系統(tǒng)需要報(bào)警時(shí),蜂鳴器就發(fā)出響聲,而此時(shí)報(bào)警信息就會(huì)在LCD上顯示出來。
系統(tǒng)軟件設(shè)計(jì)
通信協(xié)議
要實(shí)現(xiàn)上鎖/開鎖及安全報(bào)警功能,就必須完成數(shù)據(jù)終端和主收發(fā)器之間的無線數(shù)據(jù)通信。整個(gè)系統(tǒng)的各個(gè)部分都是服務(wù)于無線數(shù)據(jù)傳輸這個(gè)目的。所以, 在整個(gè)系統(tǒng)的軟件設(shè)計(jì)中, 無線數(shù)據(jù)的傳輸為最重要部分。無線傳輸以數(shù)據(jù)幀的方式進(jìn)行,數(shù)據(jù)幀的格式如表1所示。
前導(dǎo)碼主要用于防止有用數(shù)據(jù)被干擾;ID主要用來標(biāo)志特定汽車的信息,以便正確辨認(rèn),如果ID不匹配,數(shù)據(jù)幀就會(huì)被忽略;信息碼用來表示用戶的操作,這些操作包括上鎖、開鎖、顯示警報(bào)等。當(dāng)用戶發(fā)送相應(yīng)命令時(shí),就分別執(zhí)行上鎖、開鎖,而當(dāng)用戶超出收發(fā)范圍時(shí),主收發(fā)器能夠自動(dòng)發(fā)送警告信息;校驗(yàn)碼則用于檢驗(yàn)接收的數(shù)據(jù)是否正確,不正確時(shí),需重發(fā)數(shù)據(jù)幀。
軟件流程
由于數(shù)據(jù)終端和主收發(fā)器之間的通信是雙工的,所以在實(shí)際系統(tǒng)運(yùn)行時(shí),數(shù)據(jù)的傳輸方向也是不斷變化的。為此,要實(shí)現(xiàn)雙方協(xié)調(diào)通信,就必須設(shè)計(jì)出一個(gè)比較適合的收發(fā)次序。為了更好地說明程序流程,在這里將用戶那邊的數(shù)據(jù)終端定為上位機(jī),而將車內(nèi)的主收發(fā)器定為下位機(jī)。上位機(jī)和下位機(jī)收發(fā)流程如圖3、圖4所示。
結(jié)語
采用nRF9E5構(gòu)成的雙向RKE系統(tǒng)中的無線數(shù)據(jù)傳輸部分不需要外置微控制器,也不需要外擴(kuò)存儲(chǔ)器;當(dāng)和點(diǎn)陣式LCD相連時(shí),也不需要外置驅(qū)動(dòng)器,這就大大地降低了系統(tǒng)的復(fù)雜性。此外系統(tǒng)中采用的都是耗能較低的模塊,這在一定程度上實(shí)現(xiàn)了系統(tǒng)低功耗的要求。本文所設(shè)計(jì)的雙向RKE系統(tǒng)可以提高數(shù)據(jù)傳輸?shù)陌踩?,而配上顯示器就能更直觀地反映汽車的狀態(tài)。不過系統(tǒng)也有不完善的地方,如果在系統(tǒng)中再加一個(gè)DAC,配上揚(yáng)聲器就可以更加直觀地把汽車的信息反饋給用戶。此外,如果在車門里再加一個(gè)壓力傳感器,就可以極大地防止汽車遭到人為地破壞,進(jìn)一步提高汽車的安全性。