前言:本站為你精心整理了NRF905無線收發芯片原理范文,希望能為你的創作提供參考價值,我們的客服老師可以幫助你提供個性化的參考范文,歡迎咨詢。
摘要:介紹了無線收發芯片NRF905的功能,及其與51單片機的接口設計。單片機可以很容易地通過SPI接口訪問nRF905,功耗低。多頻道多頻段,可以很方便地實現點對點及點對多點無線通信。
關鍵詞:無線收發器;SPI接口;單片機
1引言
nRF905是NordicVLSI公司推出的一款無線收發芯片。32腳封裝(32LQFN5x5mm),供電電壓為1.9~3.6V,工作于433/868/915MHz三個ISM(工業、科學和醫學)頻道。可自動處理字頭和CRC(循環冗余碼校驗)。微處理器可以通過SPI接口及相關指令訪問nRF905的寄存器。功耗低,高抗干擾GFSK調制,可跳頻,載波檢測輸出,地址匹配輸出以及數據就緒輸出。nRF905適用于遙感、遙測、無線抄表、工業數據采集以及家庭自動化等領域。
2nRF905簡介
2.1芯片結構
MOSI/MISO是發射/接收數據的通道;TRX_CE,TX_EN是收/發通道的控制端;PWR_UP是工作模式控制端;CSN、SCK為串行接口控制端;CD是接收模式下載波監測信號輸出端;AM是接收到正確的數據包地址后芯片指示信號的輸出端;DR是發射完一個數據包后芯片指示信號的輸出端;uPCLK是芯片提供的一個可設置的時鐘源信號輸出端;ANT1和ANT2用于天線部分;XC1和XC2外接電路構成了晶體振蕩電路。nRF905片內集成了電源管理、晶體振蕩器、低噪聲放大器、頻率合成器、功率放大器、通信協議控制等模塊,曼徹斯特編碼/解碼由片內硬件完成,無需用戶對數據進行曼徹斯特編碼,因此使用非常方便。可自動處理字頭和CRC(循環冗余碼校驗),使用SPI接口與微控制器通信,配置非常方便。由于nRF905采用抗干擾能力強的高斯頻移鍵控(GFSK)調制方式,抗干擾能力強,能很好的減少噪聲環境對系統性能的干擾。
2.2工作模式
nRF905有兩種工作模式和兩種節能模式。兩種工作模式分別是接收模式和發送模式,兩種節能模式分別是關機模式和空閑模式。nRF905的工作模式由TRX_CE、TX_EN和PWR_UP三個引腳決定。詳見表1。
由于nRF905具有ShockBurstTM功能,使得nRF905不需要使用昂貴的高速微控制處理器(MCU)對數據處理/時鐘恢復,也能達到較高的數據率。通過在芯片上將所有的高速信號處理變為射頻通信協議,nRF905芯片提供了一個具有微控制器能力的SPI接口,數據率由具有微控制器功能的接口速率自行設定。收發電路的數字部分是一個低速率電路,而收發電路的射頻鏈接卻是一個處于最高速率的電路,整個電路要通過變速才能解決速率上的差異。nRF905芯片的ShockBurstTM模式減少了在這一過程中的平均電流消耗。在ShockBurstTMRX模式中,當一個有效地址的數據包被接收時,能夠通過AM和DR兩個信號外送給MCU。在ShockBurstTMTX模式中,nRF905芯片自動地完成報頭的生成和CRC校驗,當發送過程完成后,能夠通過DR信號外送給MCU,發送工作已經完成。這樣可以降低MCU對內存的要求,使得MCU實現了低成本,同時也縮短了軟件的開發周期。
3硬件設計
單片機選用ATMEL公司生產的AT89LV51單片機。它具有低功耗、低電壓(與nRF905共用同一電壓)的特性,它既適合結構比較簡單的應用系統,也適合于比較復雜的實時系統。單片機主要完成兩個方面的工作,一方面完成對射頻芯片通信過程的控制,另一方面通過RS-232總線與上位機相連。由于AT89LV51內部沒有集成SPI接口,因此通過軟件模擬的方法來實現與nRF905的SPI通信。硬件連接上,由P2口、P3.2、P3.3、P3.5連接到nRF905模塊的連接器相應的引腳上。電路如圖1所示。
4軟件設計
4.1發射子程序
(1)當單片機有數據需要發往規定節點時,接收節點的地址(TX_address)和有效數據(TX_payload)通過SPI接口傳送給nRF905,單片機設置接口速度。
(2)單片機設置TRX_CE,TX_EN為高電平來啟動傳輸。
(3)nRF905內部處理:
無線系統自動上電;
數據包完成(加前導碼和CRC校驗碼);
數據包發送(5Ok,GFSK,曼徹斯特編碼)。
(4)如果AUTO_RETURN被設置為高電平,nRF905將連續的發送數據包,直到TRX_CE被設置為低。
(5)當TRX_CE被設置為低時,nRF905結束數據傳輸并將自己設置成待機模式。發送程序流程圖如圖2所示。
4.2接收子程序
(1)通過設置TRX_CE高,TX_EN低來選擇RX模式。
(2)650us后,nRF905監測空中的信息;
(3)當nRF905發現和接收頻率相同的載波時,載波檢測(CD)被置高;
(4)當nRF905接收到有效的地址時,地址匹配(AM)被置高;
(5)當nRF905接收到有效的數據包(CRC校驗正確)時,nRF905去掉前導碼,地址和CRC位,數據準備就緒(DR)被置高;
(6)單片機設置TRX_CE低,進入待機模式;
(7)單片機以合適的速率通過SPI接口讀出有效數據。接收程序流程圖如圖3所示。
5結語
利用單片射頻無線收發芯片nRF905,容易實現小尺寸、高穩定性的無線數據傳輸系統,通信程序簡單,易于實現,較一般的無線通信系統更具有擴展方便的優點。其數據傳輸速度快、可靠性高、可移植性強,可廣泛應用于各類無線數據通信中。
參考文獻
[1]呂躍剛.基于nRF905無線數傳模塊的設計及其實現[J].微計算機信息,2006,22(11-2),274-275.
[2]侯海嶺,姚年春.無線收發芯片nRF905的原理及其在單片機系統中的應用[J].儀器儀表用戶,2006,13(3),70-71.