新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于ANT協議的無線收發器nRF24AP1及其應用

        基于ANT協議的無線收發器nRF24AP1及其應用

        作者:郭亞利 時間:2008-12-29 來源:國外電子元器件 收藏

        1 簡介

        本文引用地址:http://www.104case.com/article/90535.htm

          是針對無線個人網絡(PAN)互連的單片式嵌入協議棧的超低功耗無線收發器,工作在2.4 GHz ISM頻段。它支持點對點、點對多點通信,具有125個頻點,空中接口的最高傳輸速率可達到1 Mb/s,實際用戶數據速率可達20 Kb/s。采用SoC方法設計,只需少量外圍元件便可組成射頻收發電路。ANT協議集成在器件內部.參數全部通過串口消息配置,應用方便,縮短了開發周期。

         

         

        2封裝與引腳功能

          采用5 mm×5 mm的24引腳QFN封裝,它的引腳排列如圖1所示(頂視圖)。其引腳功能如表1所列。


         
        3 內部結構

          nRF24AP1的內部結構如圖2所示。它包含異步串行接口UART、時鐘模塊、ANT協議機和1 Mb/s的射頻收發信機等4個模塊。nRF24AP1可通過簡單的同步或異步串口實現與外部主機的通信,也可將nRF24AP1看作一個黑盒的無線解決方案,無需深入理解物理層和協議,僅需通過串口配置信道參數,就可發送或接收數據消息。nRF24AP1執行配置任務,并通過空中接口完成與其他設備間的消息包的發送與接收。


         
        4工作模式

          nRF24AP1直接與單片機的串口連接,可以通過配置不同參數實現工作模式選擇。在異步串口工作模式時,端口選擇模式引腳PORTSEL置為低電平,速度設置引腳BR2、BR1設定不同組合,得到所需的異步串口的波特率,如表2所示。另外,異步串口控制引腳RTS具有控制數據傳輸作用,當每次接收正確格式的消息后約50μs,RTS信號置為低電平,MCU向nRF24AP1傳輸數據。當RTS信號置為高電平,MCU不再向nRF24AP1傳輸任何數據,直到RTS被恢復為低電平。而nRF24AP1向MCU傳輸數據,由于nRF24AP1不具備流控制功能,要求外部MCU能隨時接收數據。

         

         

          nRF24AP1具有"休眠"和"待機"兩種低功耗工作模式。在不需要串口通信時將SLEEP信號置為高電平,使nRF24AP1進入休眠狀態達到省電目的。當SLEEP信號置為低電平時,nRF24AP1處于準備接收串口數據狀態,此時nRF24AP1不會進入待機模式。不論nRF24AP1處于何種工作模式下,只要將待機模式控制引腳SUSPEND置為低電平,nRF24AP1將立即中斷所有射頻和串口操作,進入省電狀態。但進入與退出待機工作模式還需要SLEEP信號的配合。只有在SLEEP引腳置為高電平時,待機模式控制引腳SUSPEND置為低電平才能有效。而退出待機工作模式時,只有將SLEEP信號重新置為低電平。

        5在智能家居中的應用

          內嵌ANT協議的nRF24AP1無線收發器適用于短距離無線收發模塊,是智能家居、傳感器網絡、工業自動化、體育場監控等領域的理想解決方案。

          硬件設計電路方面,處理器模塊選用AVR系列的ATmega16L單片機,用于節點設備的控制、任務調度、能量計算以及功能協調,無線收發模塊則選用nRF24AP1,用于節點間的數據收發,nRF24AP1與MCU之間通過異步串口方式實現通信,其工作電壓為3 V,選擇CR2032鋰離子電池作為節點電源,時鐘由16 MHz晶體提供。nRF24AP1邏輯控制引腳均由ATmega16L的I/O端口控制,通過軟件靈活更改nRF24AP1的工作模式。nRF24AP1射頻信號輸出端口的負載阻抗為(100+i175)Ω,需要阻抗匹配電路提高通信效率。nRF24AP1在智能家居中的典型應用電路如圖3所示。


         

          根據硬件電路設計,硬件驅動實現系統各模塊的初始化以及MCU與nRF24AP1之間的通信程序。系統在初始化時除了要注意根據硬件連接設置ATmega16L各通用I/O端口為所需的狀態,還要根據所選的nRF24AP1工作模式,利用ATmega16L的I/O端口設置nRF24AP1的控制端口狀態。MCU與nRF24AP1之間采用異步串口方式進行通信,ATmega16L片內集成有USART,簡單設置后即可在異步模式下工作。異步數據以1個起始比特、8個數據比特、1個停止比特以及無奇偶校驗的方式進行傳輸。串口接收與發送均采用中斷方式,同時為發送和接收分別設置一個長度為16字節的緩沖區(buffer),緩沖區設有單獨讀/寫指針,并與緩沖計數器相關聯。串口發送的數據首先通過調用函數putchar()寫入tx_buffer,再由串口發出。接收數據時,先將接收到的數據寫入rx_buffer,再根據應用需要調用函數getchar()從緩沖區中取得相應的數據,AVR串口接收中斷服務程序及函數getchar()的流程圖如圖4所示。


         

        6 結束語

          nRF24AP1內嵌ANT協議,該協議結構簡單,使用方便,加快開發進程,同時內嵌ANT協議還減少了用戶開發成本。利用ANT技術可使系統具有待機和休眠兩種狀態,節省電能,而且ANT的時延短,反應快,系統根據需要能快速蘇醒并在最短時間內完成傳輸,并快速回到休眠模式。而競爭者的"低功耗"技術在類似應用中采用相同的工作模式僅僅可以支持數月或更短的時間。因此,nRF24AP1功耗超低,適用于傳感器網絡、遠程控制系統、智能家居等應用的數據采集、分析處理,具有廣闊的市場前景。

         



        關鍵詞: nRF24AP1

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 台中市| 盘锦市| 台北县| 晋城| 冕宁县| 淄博市| 安西县| 静乐县| 文化| 卢龙县| 浑源县| 肃南| 宜兰市| 堆龙德庆县| 天津市| 龙陵县| 黑山县| 濮阳县| 盘锦市| 吴旗县| 四川省| 壶关县| 蒙城县| 浪卡子县| 霍林郭勒市| 天全县| 依兰县| 正阳县| 崇左市| 巧家县| 屏东市| 西藏| 石林| 金平| 清水县| 保定市| 繁峙县| 东阳市| 新乐市| 吉木萨尔县| 奉贤区|