基于nRF24E1的嵌入式2.4GHz無線接入系統(tǒng)

相關(guān)專題: 無線 芯片
1 概 述

  在短距離的通信中,無線技術(shù)被普遍看好,其中射頻技術(shù)因?yàn)楣牡秃蜔o方向性等優(yōu)點(diǎn)而受到青睞。通信頻率為2.4 GHz的頻段是全球開放的ISM(工業(yè)、科學(xué)和醫(yī)學(xué))頻段,使用者無需申請?jiān)S可證,給開發(fā)者和用戶帶來了很大方便;同時(shí),可以有效地避免低頻段信號、各類電火花及家用電器的干擾。因?yàn)檫@一頻段具有這些優(yōu)點(diǎn),其他的一些應(yīng)用,如藍(lán)牙、WLAN,也是在這一頻段;但藍(lán)牙和WLAN對于工業(yè)控制、醫(yī)療傳感器、住宅和樓宇自動(dòng)化裝置等設(shè)備來說,過于復(fù)雜,其成本也過高,很難滿足快速開發(fā)和低成本的要求。因此,目前迫切需要一種低成本、低功耗、能夠快速開發(fā)應(yīng)用的方案,來實(shí)現(xiàn)設(shè)備的無線連接。

  另一方面,經(jīng)過多年的發(fā)展,TCP/IP協(xié)議已經(jīng)成為目前被廣泛應(yīng)用于Internet的通信協(xié)議。在嵌入式系統(tǒng)中實(shí)現(xiàn)TCP/IP協(xié)議棧,利用Internet進(jìn)行遠(yuǎn)程數(shù)據(jù)傳送,可以實(shí)現(xiàn)對遠(yuǎn)端設(shè)備運(yùn)行狀態(tài)的監(jiān)視和控制。

  在嵌入式TCP/IP平臺下利用工作頻率為2.4 GHz的無線收發(fā)模塊nRF24E1,進(jìn)行短距離的點(diǎn)對多點(diǎn)的無線通信;用無線技術(shù)解決最后10 m的通信問題,可實(shí)現(xiàn)一種無線接入的解決方案。



2 nRF24E1及其通信協(xié)議

2.1 nRF24E1模塊的基本特性

  nRF24E1是北歐集成電路公司(Nordic)推出的一款帶8051內(nèi)核的無線收發(fā)模塊,內(nèi)部結(jié)構(gòu)如圖1所示。該模塊的無線收發(fā)器工作于2.4 GHz的ISM頻段,有多達(dá)125個(gè)的頻點(diǎn),可通過改頻和跳頻來避免干擾。nRF24E1的集成度非常高,內(nèi)部集成了增強(qiáng)型8051內(nèi)核,2.4 GHz無線收發(fā)器,100 ksps的9路10位模數(shù)轉(zhuǎn)換器,UART接口,SPI接口,PWM輸出,內(nèi)置RC振蕩器、看門狗和喚醒定時(shí)器以及專門的穩(wěn)壓電路。所有高頻元件包括電感、振蕩器等,全部集成在芯片內(nèi)部,因此芯片的性能穩(wěn)定,受外界環(huán)境的影響很小。

  nRF24E1采用36腳QFN(6 mm×6 mm)封裝,最大傳輸速率可達(dá)1 Mb/s,靈敏度為一90 dBm,最大發(fā)射功率為O dBm;在較為理想的環(huán)境中,室內(nèi)傳輸距離可達(dá)30~40 m,室外傳輸距離可達(dá)100~200 m;其工作電壓為1.9~3.3 V,工作溫度范圍為一40~+80℃。

2.2 nRF24E1之間的通信協(xié)議

  nRF24E1的無線數(shù)據(jù)包格式為


  其中,Preamble是前導(dǎo)碼,是硬件自動(dòng)加上去的;ADDR是發(fā)送的地址,為32~40位;PAYLOAD是有效數(shù)據(jù);CRC是CRC校驗(yàn)和,由內(nèi)置CRC糾檢錯(cuò)硬件電路自動(dòng)加上,可設(shè)為O、8或16位。ADDR、PAYLOAD和CRC的總長度最大為256位,因此,設(shè)置較短的地址和校驗(yàn)和能提高傳輸效率,但也使得可靠性降低。

  nRF24E1通過軟件設(shè)置收發(fā)模式、收發(fā)頻率、接收地址、發(fā)射功率、CRC校驗(yàn)和的長度、有效數(shù)據(jù)的長度等。無線收發(fā)器有2個(gè)頻道:頻道1可以接收和發(fā)送;頻道2只能接收,且頻道2的接收頻率總比頻道1高8 MHz;同時(shí),每個(gè)芯片可以設(shè)置2個(gè)地址。收發(fā)頻率和地址隨時(shí)都可以通過軟件更改,實(shí)現(xiàn)改頻和跳頻;但是,必須通過通信協(xié)議解決好,一致的頻率和正確的地址才是數(shù)據(jù)傳送的前提。只有地址符合且校驗(yàn)和正確的包,才能被進(jìn)一步處理;若有一項(xiàng)不正確,整個(gè)數(shù)據(jù)包就被硬件自動(dòng)丟棄。若地址與校驗(yàn)和相符,則由硬件產(chǎn)生中斷DRl或DR2,8051才能將數(shù)據(jù)接收到緩沖區(qū)。

  在同一時(shí)刻,nRF24E1只能處于接收或發(fā)送模式中的一種。一般以接收模式為待機(jī)狀態(tài)。


3 無線接入解決方案

  系統(tǒng)的解決方案示意圖如圖2所示。



  nRF24E1主機(jī)是無線系統(tǒng)的關(guān)鍵部分。它不但作為接入點(diǎn),負(fù)責(zé)與嵌入式TCP/IP模塊交換數(shù)據(jù),同時(shí)也負(fù)責(zé)與其他無線模塊通信。

  為實(shí)現(xiàn)Internet網(wǎng)絡(luò)互聯(lián),使用以太網(wǎng)控制芯片RTL8019AS,并將TCP/IP協(xié)議棧嵌入在ATmegal28的內(nèi)部。除此之外,ATmegal28內(nèi)部還實(shí)現(xiàn)了一個(gè)小型通用的Web Server,而遠(yuǎn)端的PC就作為客戶端。

  數(shù)據(jù)的傳送過程是遠(yuǎn)端PC通過Internet發(fā)送數(shù)據(jù),由RTL8019AS接收數(shù)據(jù)包,再由ATmegal28對TCP/lP數(shù)據(jù)包進(jìn)行處理,得到PC發(fā)送的信息,AT-megal28再將數(shù)據(jù)通過SPI接口傳送到nRF24E1主機(jī)。nRF24E1主機(jī)根據(jù)內(nèi)部協(xié)議又將數(shù)據(jù)傳給相應(yīng)的nRF24E1從機(jī),再由nRF24E1從機(jī)對各自的設(shè)備進(jìn)行通信或控制。nRF24E1從機(jī)給遠(yuǎn)端PC傳送數(shù)據(jù)為反向的過程。


4 接入系統(tǒng)的控制及其實(shí)現(xiàn)

4.1 無線系統(tǒng)的控制方法

  將所有的nRF24E1模塊都設(shè)置為同一頻率,通過設(shè)置不同的地址來區(qū)分各個(gè)無線模塊。為了避免多個(gè)從機(jī)同時(shí)給主機(jī)發(fā)送數(shù)據(jù)產(chǎn)生沖突,主機(jī)不但要作為接入點(diǎn),同時(shí)要控制整個(gè)無線系統(tǒng),避免沖突。

  系統(tǒng)采用主機(jī)輪詢,從機(jī)應(yīng)答的方法,即主機(jī)按照一定的規(guī)則,給從機(jī)發(fā)送一個(gè)允許從機(jī)發(fā)送數(shù)據(jù)的標(biāo)志。該標(biāo)志相當(dāng)于一個(gè)令牌,從機(jī)若有數(shù)據(jù)發(fā)送,得到令牌后,可在令牌的有效時(shí)間內(nèi)連續(xù)地發(fā)送多幀數(shù)據(jù)。當(dāng)然,也可以設(shè)置只能發(fā)送1幀數(shù)據(jù),數(shù)據(jù)發(fā)送完畢后必須有一個(gè)結(jié)束的信號END標(biāo)志;如果從機(jī)沒有數(shù)據(jù)發(fā)送,也必須給主機(jī)返回END標(biāo)志,從機(jī)的回應(yīng)可以讓主機(jī)判斷與該從機(jī)的通信鏈路是否正常。

  主機(jī)對無線系統(tǒng)的控制主要是通過令牌來實(shí)現(xiàn)的,因此主機(jī)對從機(jī)的令牌是否有效的判斷是其中的關(guān)鍵,而且必須考慮足夠的容錯(cuò)性能?梢酝ㄟ^兩個(gè)方法來判斷和控制令牌的有效時(shí)間:一是從機(jī)收到令牌到返回END標(biāo)志的時(shí)間內(nèi)令牌為有效,而主機(jī)根據(jù)從機(jī)返回的END標(biāo)志即可判斷該從機(jī)的令牌已經(jīng)失效;二是規(guī)定令牌的最大有效時(shí)間,從機(jī)收到令牌后開始計(jì)時(shí),達(dá)到規(guī)定的最大時(shí)間后,令牌自動(dòng)失效,主機(jī)也通過計(jì)時(shí)來判斷從機(jī)的令牌是否失效。這兩個(gè)方法同時(shí)起作用。第一個(gè)方法可以提高系統(tǒng)效率,避免在空閑的鏈路上消耗過多的時(shí)間,使系統(tǒng)的品質(zhì)得到提高;而設(shè)置最大時(shí)間是為了限制一個(gè)從機(jī)占用通信鏈路的時(shí)間,也可以防止丟失END標(biāo)志甚至通信鏈路不正常所產(chǎn)生的錯(cuò)誤,盡量減少不正常的鏈路對系統(tǒng)其他部分的影響。

  當(dāng)然,主機(jī)不僅可以采用輪詢的方法,也可以根據(jù)各個(gè)從機(jī)的通信優(yōu)先級不同來分配令牌,而且每個(gè)從機(jī)令牌的最大有效時(shí)間也可以不一樣。從機(jī)必須在令牌的有效時(shí)間內(nèi)才能給主機(jī)發(fā)送數(shù)據(jù),每一時(shí)刻只有一個(gè)從機(jī)的令牌有效,以避免沖突。主機(jī)要發(fā)送數(shù)據(jù),必須先查詢從機(jī)的令牌是否有效。若令牌有效,還必須等從機(jī)的END標(biāo)志到來后,或者時(shí)間超過了令牌的最大有效時(shí)間,且這時(shí)所有從機(jī)的令牌都見效,主機(jī)才可以發(fā)送數(shù)據(jù)。

4.2 系統(tǒng)的實(shí)現(xiàn)

  nRF24E1主機(jī)不但要與ATmegal28通信,還要與其他nRF24E1從機(jī)通信;同時(shí),還要控制整個(gè)無線系統(tǒng)。因此,nRF24E1主機(jī)是整個(gè)無線接人系統(tǒng)的關(guān)鍵,它能否高效地運(yùn)行,關(guān)系到整個(gè)系統(tǒng)的效率。

  圖3所示為。nRF24E1主機(jī)在正常情況下的運(yùn)行流程。主機(jī)在令牌發(fā)出去以后,就只能處于無線接收的狀態(tài),直到從機(jī)的令牌無效后才能進(jìn)行與ATmegal28的通信或者給從機(jī)發(fā)送數(shù)據(jù)。



  nRF24E1從機(jī)的通信任務(wù)要簡單得多,另外還有各自的應(yīng)用?梢杂胣RF24E1的I/O端口直接控制設(shè)備,也可以連接其他MCU實(shí)現(xiàn)其他功能。

  由于nRF24E1內(nèi)置了增強(qiáng)型8051控制器,使nRF24E1成為一種集無線數(shù)據(jù)接收和發(fā)送于一體,以及對數(shù)據(jù)進(jìn)行處理的片上系統(tǒng)(SoC),并且有模擬輸入和PWM輸出,因此,不但可以作為無線接口實(shí)現(xiàn)無線數(shù)據(jù)傳送,在一些較為簡單的控制系統(tǒng)中,可以用它作為控制核心,無需另接MCU。這使得nRF24E1的應(yīng)用系統(tǒng)更為簡化,大大增強(qiáng)了無線系統(tǒng)的穩(wěn)定性和可靠性;同時(shí),也使得開發(fā)變得簡單,成本進(jìn)一步降低。

  在一些較為復(fù)雜的系統(tǒng)中,由于nRF24E1的端口有限,只有256字節(jié)的RAM空間,805l的處理能力也不是很強(qiáng)。在這樣的系統(tǒng)中,可通過連接功能更為強(qiáng)大的MCU,讓MCU進(jìn)行處理。應(yīng)用中,采用了ATmegal28,而nRF24E1只作為無線通信的接口,將數(shù)據(jù)通過UART或SPI接口傳送到Atmegal28,讓Atmegal28進(jìn)行較為復(fù)雜的運(yùn)算和處理。

  圖4為ATmegal28與nRF24E1的SPI接口電路圖。nRF24E1為SPI的主機(jī),ATmegal28為從機(jī)。通過SPI接口可使nRF24El與ATmegal28的最大通信速率達(dá)到2 Mbps,因此,傳輸?shù)乃俣瓤梢詽M足大多數(shù)場合的應(yīng)用。



  本系統(tǒng)可以應(yīng)用于數(shù)據(jù)采集系統(tǒng)、信息家電的無線通信接口、住宅和樓宇自動(dòng)化裝置以及工業(yè)自動(dòng)化的無線連接等場合。上述方案已經(jīng)在數(shù)據(jù)采集系統(tǒng)上得到應(yīng)用,很方便地實(shí)現(xiàn)了設(shè)備間的無線連接;而且對原有模塊的改動(dòng)很少,開發(fā)時(shí)間較短,系統(tǒng)的穩(wěn)定性很好。

結(jié) 語

  藍(lán)牙工作在2.4 GHz頻段,但由于其芯片的成本一直居高不下,產(chǎn)品很難開發(fā),因此到目前為止,藍(lán)牙的產(chǎn)品還是很少。另外,市場尚未出現(xiàn)非藍(lán)牙不可的應(yīng)用 需求,藍(lán)牙的一些市場定位能夠輕易地被其他更專業(yè)的產(chǎn) 品所取代。nRF24E1就是以較低的價(jià)格和較容易應(yīng)用開 發(fā)等優(yōu)勢來代替一些領(lǐng)域的藍(lán)牙應(yīng)用,為一些只需要簡單 的無線連接的應(yīng)用領(lǐng)域,提供一種低成本、低功耗、能夠快 速開發(fā)應(yīng)用的方案,以實(shí)現(xiàn)無線連接。另外,在嵌入式系 統(tǒng)中實(shí)現(xiàn)TCP/IP協(xié)議棧,利用Internet進(jìn)行數(shù)據(jù)的遠(yuǎn)程 傳送;而在本地端采用嵌入式的2.4 GHz無線接入技術(shù), 將這兩者結(jié)合起來,具有一定的先進(jìn)性和廣闊的應(yīng)用前景。
作者:吳釗炯 張瑩 劉新朝   來源:單片機(jī)及嵌入式系統(tǒng)應(yīng)用

微信掃描分享本文到朋友圈
掃碼關(guān)注5G通信官方公眾號,免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場景技術(shù)解決方案白皮書
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測試技術(shù)白皮書-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國移動(dòng):6G至簡無線接入網(wǎng)白皮書
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國聯(lián)通5G終端白皮書》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國電信5GNTN技術(shù)白皮書
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國移動(dòng)算力并網(wǎng)白皮書
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《R1623501-g605G的系統(tǒng)架構(gòu)1
  • 本周熱點(diǎn)本月熱點(diǎn)

     

      最熱通信招聘

    業(yè)界最新資訊


      最新招聘信息