《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > 基于NRF24E1芯片的組網(wǎng)技術(shù)研究與實現(xiàn)

基于NRF24E1芯片的組網(wǎng)技術(shù)研究與實現(xiàn)

2008-03-17
作者:高惠燕, 李忠成

  摘 要: 給出了一種基于NRF24E1芯片的無線組網(wǎng)新方法。介紹了關(guān)于無線片上系統(tǒng)" title="片上系統(tǒng)">片上系統(tǒng)NRF24E1芯片的相關(guān)知識,并結(jié)合一個具體的無線點菜" title="無線點菜">無線點菜系統(tǒng)的設(shè)計和架構(gòu)過程,對用NRF24E1芯片無線組網(wǎng)的具體方案進(jìn)行了細(xì)致的闡述。
  關(guān)鍵詞: NRF24E1 無線片上系統(tǒng)? IEEE802.11b? ShockBurst

?

  在短距離的通信中,無線技術(shù)被普遍看好,其中射頻技術(shù)因其功耗低和無方向性等優(yōu)點而受到青睞。通信頻率為2.4GHz的頻段是全球開放的ISM(工業(yè)、科學(xué)和醫(yī)學(xué))頻段,人們無需申請許可證即可使用,給開發(fā)者和用戶帶來了很大方便;同時,該頻率又可以有效地避免低頻段信號、各類電火花以及家用電器等的干擾。由于這一頻段具有的優(yōu)點,其他的一些應(yīng)用,例如藍(lán)牙(BlueTooth)、無線局域網(wǎng)(WLAN)也在這一頻段;但藍(lán)牙和無線局域網(wǎng)對于工業(yè)控制、醫(yī)療傳感器、智能自動化裝置等設(shè)備來說,過于復(fù)雜,其成本也過高,很難滿足快速開發(fā)和低成本的要求。因此,目前迫切需要一種低成本、低功耗、能夠快速開發(fā)應(yīng)用的方案,實現(xiàn)設(shè)備的無線連接。
  本文結(jié)合無線片上系統(tǒng)NRF24El芯片的具體系統(tǒng)開發(fā)實例,研究一種無線組網(wǎng)技術(shù)。
1 無線片上系統(tǒng)NRF24E1
  NRF24E1 是一種工作頻率可達(dá)到2.4GHz的無線射頻收發(fā)芯片。內(nèi)部嵌有與 8051 兼容的微處理器和10位9路A/D轉(zhuǎn)換器,可以在 1.9~3.6V電壓下穩(wěn)定工作。其內(nèi)部還有電壓調(diào)整器和VDD電壓監(jiān)視,通道轉(zhuǎn)換時間小于200微秒,數(shù)據(jù)速率1Mbps,不需要外接 SAW 濾波器。
  NRF24E1是目前首次推出的全球2.4GHz通用的、完整低成本射頻系統(tǒng)級芯片。無線收發(fā)" title="無線收發(fā)">無線收發(fā)部分有與nRF2401同樣的功能。該功能由外部并行口和外部 SPI 啟動,每一個待發(fā)信號對于處理器來講都可以作為中斷來編程,或者通過GPIO端口實現(xiàn)。NRF24E1是一個可以在全球公用的頻段范圍(2.4~2.5 GHz)內(nèi)實現(xiàn)無線通信的芯片。收發(fā)機(jī)包含 1 個完全集成的分頻器、放大器、調(diào)節(jié)器和 2 個收發(fā)單元。輸出能量、頻段等射頻參數(shù),可通過射頻寄存器方便地編程調(diào)節(jié)。在發(fā)送模式下,電流消耗只有10.5mA;在接收模式下,只有 18mA,所以功耗相當(dāng)?shù)汀?BR>  圖1是NRF24E1芯片示意圖。從圖中看到,NRF24E1由一個8051微控制器" title="微控制器">微控制器內(nèi)核和一個NRF2401 無線收發(fā)器組成,芯片包括:增強(qiáng)型 8051 內(nèi)核、無線收發(fā)器 NRF2401、9路100ksps的10位模數(shù)轉(zhuǎn)換器、UART 異步串口、SPI 接口、PWM 輸出、RC振蕩器、看門狗和喚醒定時器以及內(nèi)置的專用穩(wěn)壓電路等。


  在 NRF24E1 的內(nèi)部存儲空間中,512B ROM 用于存儲引導(dǎo)程序。上電后,它可將 EEPROM 中存儲的程序下載到 4KB RAM 的程序運(yùn)行空間,另外的 256B RAM為數(shù)據(jù)存儲器。無線收發(fā)器 NRF2401 可以通過軟件編程來設(shè)定接收地址、收發(fā)頻率、發(fā)射功率、無線傳輸速率、無線收發(fā)模式、CRC 校驗和的長度以及有效數(shù)據(jù)的長度等無線通信參數(shù)。
  NRF24E1的典型應(yīng)用電路原理圖如圖2,從圖中看到,采用 Nordic NRF24E1 無線單片機(jī)芯片設(shè)計的線路非常簡單,外圍零件很少,也非常容易進(jìn)行設(shè)計開發(fā)。


  NRF24E1 體積小、功耗低,因此非常適用于對體積和功耗要求較高的應(yīng)用場合。可廣泛應(yīng)用于計算機(jī)外設(shè)、無線耳機(jī)、玩具、游戲手柄、汽車電子、醫(yī)療器械、遙控和工業(yè)傳感器等方面。
2 具體組網(wǎng)實現(xiàn)
  結(jié)合前面的知識,再來看看基于NRF24E1芯片的短距離無線網(wǎng)絡(luò)具體應(yīng)該如何組網(wǎng)。這里以一個具體的無線點菜系統(tǒng)的設(shè)計架構(gòu)為例。
2.1 系統(tǒng)功能
  該無線點菜系統(tǒng)采用NRF24E1芯片設(shè)計實現(xiàn),同時通過無線網(wǎng)卡實現(xiàn)點菜系統(tǒng)后臺服務(wù)器與計算機(jī)收銀管理系統(tǒng)的無線數(shù)據(jù)交換,實現(xiàn)從點菜、出菜、加菜、撤菜等從菜品進(jìn)廚房直至結(jié)賬的全過程自動化。
  該系統(tǒng)的功能流程是:餐廳內(nèi)的就餐點和餐廳外的外賣點都可以通過無線發(fā)送/接收終端輔助完成點菜,并通過無線傳輸將點菜數(shù)據(jù)傳送至后臺服務(wù)器,再由服務(wù)器進(jìn)行分單打印和數(shù)據(jù)無線傳輸至收銀用機(jī)、傳菜用機(jī),根據(jù)所得數(shù)據(jù),收銀機(jī)結(jié)帳并打印帳單,傳菜機(jī)打印、傳菜、劃單,最后由服務(wù)員完成送菜、上菜。
2.2 系統(tǒng)設(shè)計
  無線點菜系統(tǒng)中點菜模塊外觀及總體設(shè)計圖如圖3所示,其中發(fā)送、接收端通過NRF24E1芯片實現(xiàn)無線數(shù)據(jù)傳輸。
  無線點菜系統(tǒng)中點菜模塊系統(tǒng)流程圖如圖4所示。


  首先由用戶在點菜終端輸入用戶號和密碼(刷卡)登錄,餐廳內(nèi)的就餐點由服務(wù)員輸入信息進(jìn)入系統(tǒng)。當(dāng)驗證用戶合法后,用戶可以進(jìn)行點菜操作,點菜時直接通過菜肴的編碼和加減運(yùn)算符組合輸入即可實現(xiàn)點菜,方便快捷,具體編碼可參考無線點菜終端使用說明書。用戶點菜輸入并“確認(rèn)”后,無線點菜終端將用戶已點菜肴信息顯示輸出,用戶核對無誤,再次“確認(rèn)”點菜,如需加菜、減菜,可按“取消”鍵回到上一步,同樣通過菜肴的編碼和加減運(yùn)算符組合輸入來實現(xiàn)加減菜。用戶完成點菜后,無線點菜終端會將點菜數(shù)據(jù)傳輸給遠(yuǎn)程服務(wù)器,并給出“您已成功點菜!”的顯示信息,用戶此時可以退出系統(tǒng)。
2.3 發(fā)送端總體設(shè)計
  基于NRF24E1的點菜發(fā)送端需要有鍵盤進(jìn)行點菜的數(shù)據(jù)輸入,同時還需要一個液晶顯示屏來顯示點菜信息。因此,整個發(fā)送端可大致分為主控制器、鍵盤、鍵盤編解碼、LCD、電壓轉(zhuǎn)換等部分,其總體設(shè)計框圖如圖5所示。


2.4 無線收發(fā)設(shè)計
  NRF24E1收發(fā)器的收發(fā)任務(wù)由NRF2401子系統(tǒng)控制,NRF2401子系統(tǒng)結(jié)構(gòu)框圖如圖6所示。


  收發(fā)功能由特殊功能寄存器中的RADIO和SPI_ CTRL控制。SPI_ CTRL=0X00時,SPI不用;SPI_ CTRL=0X01時,SPI連接到P1口;SPI_ CTRL=0X10時,SPI連接到第一個NRF2401頻道;SPI_ CTRL=0X11時,SPI連接到第二個NRF2401頻道。
  RADIO寄存器中的3個位PWR_UP、CE、CS可以用來控制NRF2401子系統(tǒng)的工作模式。當(dāng)PWR_UP=1,CE=1,CS=0時為收發(fā)方式;當(dāng)PWR_UP=1,CE=O,CS=1時為配置方式;當(dāng)PWR_UP=1,CE=O,CS=0時為空閑方式;PWPWR_UP=0時關(guān)機(jī)。
  系統(tǒng)射頻部分的通信協(xié)議均由內(nèi)置硬件電路完成,NRF24E1的無線數(shù)據(jù)包格式如表1。

表1 NRF24E1的無線數(shù)據(jù)包格式

PRE-AMBLE ADDRESS PAYLOAD CRC


  其中,PRE-AMBLE是前導(dǎo)碼,由硬件自動加上去;ADDRESS是要發(fā)送的32~40位地址碼;PAYLOAD是有效數(shù)據(jù);CRC是CRC校驗和,它可由內(nèi)置CRC糾檢錯硬件電路自動加上,可設(shè)為0、8或16位。ADDRESS、PAYLOAD和CRC的總長度最大為256位,設(shè)置較短的地址和校驗和可以提高傳輸效率,但會使可靠性降低。
  NRF24E1支持點到多點通信,每個芯片可通過軟件設(shè)置最多40位地址,通信時只有與本機(jī)地址相符時才應(yīng)答,否則不響應(yīng)。
  無線收發(fā)器NRF2401有一個144bit的ShockBurst配置字,該配置字規(guī)定了無線收發(fā)器的接收地址、收發(fā)頻率、發(fā)射功率、無線傳輸速率、無線收發(fā)模式、CRC校驗和的長度以及有效數(shù)據(jù)的長度。該配置字使NRF2401能夠處理射頻協(xié)議。
  當(dāng)NRF2401工作在收發(fā)方式時,其采用了先進(jìn)的ShockBurst技術(shù)。
  (1)ShockBurst工作在發(fā)送方式時,CPU接口引腳為CE、CLK1和DATA(如圖6)。當(dāng)CPU請求發(fā)送數(shù)據(jù)時,置CE為高電平" title="高電平">高電平,此時將接收機(jī)地址和有效載荷數(shù)據(jù)送入NRF2401,置CE為低電平激活ShockBurst發(fā)射。具體流程為:
  a.當(dāng)微控制器有數(shù)據(jù)要發(fā)送時,置CE為高,使NRF2401工作;
  b.把接收機(jī)的地址和要發(fā)送的數(shù)據(jù)按時序送入NRF2401;
  c.微控制器把CE置低,激發(fā)NRF2401進(jìn)行ShockBurst發(fā)射;
  d.NRF2401 ShockBurst發(fā)射:給射頻前端供電;射頻數(shù)據(jù)打包(加字頭、CRC校驗碼);高速發(fā)射數(shù)據(jù)包;發(fā)射完成,NRF2401進(jìn)入空閑狀態(tài)。
 ?(2)ShockBurst工作在接收方式時,CPU接口引腳為CE、DR1、CLK1和DATA(如圖6)。當(dāng)正確設(shè)置射頻包輸入載荷的地址和大小后,置CE為高電平可激活RX。此后NRF2401監(jiān)測信息輸入,若收到有效數(shù)據(jù)包,則給MCU一個中斷并置DR1為高電平,以使MCU以時鐘形式將有效載荷數(shù)據(jù)取走,待系統(tǒng)收到全部數(shù)據(jù)后NRF2401再置DR1為低。此時如果 CE保持高電平,則等待新的數(shù)據(jù)包;若CE置低電平,則開始其他工作流程。具體流程為:
  a. 配置本機(jī)地址和要接收的數(shù)據(jù)包大??;
  b. 進(jìn)入接收狀態(tài),把CE置高;
  c. 200微秒后,NRF2401進(jìn)入監(jiān)視狀態(tài),等待數(shù)據(jù)包的到來;
  d. 當(dāng)接收到正確的數(shù)據(jù)包(正確的地址和CRC校驗碼),NRF2401自動把字頭、地址和CRC校驗位移去;
  e. NRF2401通過把DR1(這個引腳引起微控制器中斷)置高通知微控制器;
  f. 微控制器把數(shù)據(jù)從NRF2401移出;
  g. 所有數(shù)據(jù)移完,NRF2401把DR1置低,此時,如果CE為高,則等待下一個數(shù)據(jù)包,如果CE為低,開始其他工作流程。
  ShockBurst接收和發(fā)送的流程框圖如圖7和圖8所示。最終,無線點菜系統(tǒng)數(shù)據(jù)接收端正確接收點菜發(fā)送端發(fā)射來的點菜代碼,并處理成計算機(jī)所能識別的數(shù)據(jù)傳送給后臺服務(wù)器進(jìn)行處理。


  該無線點菜系統(tǒng)成本低廉、設(shè)計簡單、易于實現(xiàn),經(jīng)實際調(diào)試驗證完全可用。通過該系統(tǒng)的研發(fā)架構(gòu),可以得到一種用無線片上系統(tǒng)NRF24E1芯片來進(jìn)行短距離無線組網(wǎng)的簡易可行的設(shè)計方法??梢灶A(yù)見,隨著無線網(wǎng)絡(luò)的不斷發(fā)展和應(yīng)用普及,無線片上系統(tǒng)以其獨特的優(yōu)勢,其應(yīng)用必將不斷擴(kuò)展,而NRF24E1作為目前主流、典型、優(yōu)秀的無線片上系統(tǒng),在未來的無線領(lǐng)域中將發(fā)揮更大的作用。
參考文獻(xiàn)
[1](美) RASHINKAR. P等著, 孫海平,丁鍵譯. 系統(tǒng)芯片(SoC)驗證方法與技術(shù)[M]. 北京:電子工業(yè)出版社,2005.
[2]潘琢金,施國君.C8051Fxxx高速SOC單片機(jī)原理及應(yīng)用[M]. 北京:北京航空航天大學(xué)出版社,2002.
[3]黃智偉. 射頻集成電路芯片原理與應(yīng)用電路設(shè)計[M]. 北京:電子工業(yè)出版社,2004.
[4]李健. 無線點菜系統(tǒng)的研究[D]. 天津大學(xué)碩士學(xué)位論文,2004.
[5]許劍. 基于無線片上系統(tǒng)的家庭網(wǎng)絡(luò)控制系統(tǒng)的研究與設(shè)計[D]. 浙江大學(xué)碩士學(xué)位論文,2006.
[6]延濤. 基于nRF24E1芯片的通用遙控器原型樣機(jī)的設(shè)計[D]. 西北工業(yè)大學(xué)碩士學(xué)位論文,2005.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。