《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于ARM和nRF905的無線數(shù)據(jù)收發(fā)系統(tǒng)
基于ARM和nRF905的無線數(shù)據(jù)收發(fā)系統(tǒng)
現(xiàn)代電子技術(shù)
段智文 陳 惠
摘要: 基于ARM和nRF905的無線數(shù)據(jù)收發(fā)系統(tǒng),為無線隨動控制系統(tǒng)的數(shù)據(jù)傳輸所設(shè)計的無線數(shù)據(jù)收發(fā)系統(tǒng),采用ARM LPC2148和nRF905構(gòu)成,工作在433 MHz的ISM頻段,,最遠(yuǎn)傳輸距離可達(dá)1 000 m,數(shù)據(jù)速率為50 Kb/s,,工作電壓為3.3 V,,在發(fā)射功率為-10 dBm時,電流消耗為11 mA,,低功耗模式時電流消耗僅為42μA,。系統(tǒng)采用DSS+PLL頻率合成技術(shù)和GMSK調(diào)制,信道數(shù)最多可達(dá)170個,,能夠滿足需要多信道工作的特殊場合使用,。
Abstract:
Key words :

所設(shè)計的無線數(shù)據(jù)收發(fā)系統(tǒng)是無線隨動控制系統(tǒng)的重要組成部分,主要由nRF905無線收發(fā)模塊和LPC2148 ARM開發(fā)板組成,,用來實現(xiàn)手動系統(tǒng)與隨動系統(tǒng)之間的無線數(shù)據(jù)傳輸,,有效地解決了在惡劣環(huán)境下布線困難的問題。

1 nRF905無線收發(fā)模塊
    nRF905是一個工作在433/868/915 MHz的ISM頻段,,完全集成的單片無線收發(fā)器芯片,。nRF905芯片內(nèi)部包含有一個完全集成的調(diào)制器、帶解碼器的接收器,、功率放大器,、晶體振蕩器等電路。其采用DSS+PLL頻率合成技術(shù)和GMSK調(diào)制,,頻率穩(wěn)定性非常好,,抗干擾能力強(qiáng);可以很容易通過SPI接口編程配置其工作模式,;最多信道數(shù)可達(dá)170個,,能夠滿足需要多信道工作的特殊場合;最遠(yuǎn)傳輸距離可達(dá)1 000 m,;最高數(shù)據(jù)速率為50 Kb/s,;工作電壓為1.9~3.6 V;在發(fā)射功率為-lO dBm時,,電流消耗為11 mA,;在接收狀態(tài)時,電流消耗為12.5 mA,,具有低功耗模式,;采用32引腳端的QFN 5 mm×5 mm封裝,。
    nRF905通過對TRX_CE,TX_EN,,PWM_UP的設(shè)置來實現(xiàn)不同的工作模式,,工作模式如表1所示,模式設(shè)置如表2所示,。


    nRF905的工作模式通過SPI接口對芯片內(nèi)部的寄存器進(jìn)行配置實現(xiàn),。所有配置字都是通過SPI接口送給nRF905。SIP接口的工作方式可通過SPI指令進(jìn)行設(shè)置,。當(dāng)nRF905處于空閑模式或關(guān)機(jī)模式時,,SPI接口可以保持在工作狀態(tài)。
    SPI接口由狀態(tài)寄存器,、射頻配置寄存器,、發(fā)送地址寄存器、發(fā)送數(shù)據(jù)寄存器和接收數(shù)據(jù)寄存器5個寄存器組成,。狀態(tài)寄存器包含數(shù)據(jù)準(zhǔn)備好引腳狀態(tài)信息和地址匹配引腳狀態(tài)信息,;射頻配置寄存器包含收發(fā)器配置信息,如頻率和輸出功能等,;發(fā)送地址寄存器包含接收機(jī)的地址和數(shù)據(jù)的字節(jié)數(shù),;發(fā)送數(shù)據(jù)寄存器包含待發(fā)送的數(shù)據(jù)包的信息,如字節(jié)數(shù)等,;接收數(shù)據(jù)寄存器包含要接收的數(shù)據(jù)的字節(jié)數(shù)等信息,。
    nRF905的應(yīng)用電路如圖1所示,nRF905外圍元件均采用貼片封裝形式,。



2 LPC2148開發(fā)板與無線收發(fā)器電路模塊的連接
    nRF905無線收發(fā)器電路模塊與LPC2148開發(fā)板的連接如圖2所示,。兩者之間的通信是通過SPI接口進(jìn)行的,LPC2148有2個專用SPI總線接口,,用戶也可使用模擬SPI對nRF905進(jìn)行操作,,此處采用LPC2148的SPI0。搭建兩個這樣的模塊即可以組成一個無線數(shù)據(jù)收發(fā)系統(tǒng),,示意圖如圖3所示,。



3 無線收發(fā)系統(tǒng)程序設(shè)計
    無線收發(fā)系統(tǒng)主程序包含有發(fā)射和接收兩部分,用來完成數(shù)據(jù)的收發(fā),。
3.1 發(fā)射部分
    使用定時器0定時1 s,,每隔1 s蜂鳴器開啟且發(fā)送一次數(shù)據(jù),發(fā)送完一次數(shù)據(jù)后蜂鳴器停止嗚叫,。發(fā)射部分流程圖如圖4所示,。


    啟動ADS 1.2,使用ARM Executable Image forLPC2148工程模板創(chuàng)建一個工程。使用過程中,,要將nRF905.c和nRF905.h包含入工程,。nRF905.c中包含了nRF905的管腳初始化和配置函數(shù),nRF905.h中包含nRF905的管腳定義,、地址定義等,。
3.2 接收部分
    接收部分的程序流程圖如圖5所示。


    系統(tǒng)收發(fā)程序清單讀者如有需要可以向作者索取,。

4 結(jié)語
    采用LPC2148和nRF905構(gòu)成的無線數(shù)據(jù)收發(fā)系統(tǒng)工作在433 MHz的ISM頻段,,最遠(yuǎn)傳輸距離可達(dá)1 000 m,數(shù)據(jù)速率為50 Kb/s,。工作電壓為3.3 V,,在發(fā)射功率為-10 dBm時,,電流消耗為11 mA,。由于系統(tǒng)采用DSS+PLL頻率合成技術(shù)和GMSK調(diào)制,頻率穩(wěn)定性非常好,,抗干擾能力強(qiáng),;可以很容易通過SPI接口編程配置其工作模式。信道數(shù)最多可達(dá)170個,,能夠滿足需要多信道工作的特殊場合使用,。系統(tǒng)具有低功耗模式,低功耗模式電流消耗僅為42μA,。
    利用LPC2148具有45個可承受5 V電壓的I/O接口,,全速USB 2.O,UART,,SPI和SSP串行外設(shè)接口,,I2C總線接口,2個8通道10位的A/D和1個10位的D/A轉(zhuǎn)換器,,以及6路輸出的PWM接口,,可以方便地構(gòu)成一個無線數(shù)據(jù)采集與控制系統(tǒng)。
    實驗證明該系統(tǒng)在無線隨動控制系統(tǒng)中使用效果良好,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。