對于初學者來說,最痛苦的莫過于看英文技術手冊,所以當初小白的自己就會想,要是有人將這些手冊翻譯成中文就好了。但是對于高手而言,他又不屑于翻譯手冊,因為他直接就能看懂,根本不需要翻譯。所以在尋找 NRF24L01+ 的中文手冊無果之后,萌生了翻譯這篇文章的想法。首先無線數據傳輸這個技術我很感興趣,其次這個芯片非常適合初學者去掌握模塊的使用方法,這個模塊的應用也相當廣泛,所以歷經一星期的時間將其翻譯成了中文,方便他人,亦是方便自己。
nRF24L01 +是一款帶有嵌入式基帶協議引擎(Enhanced ShockBurst?)的單芯片 2.4GHz 收發器,適用于超低功耗無線應用。 nRF24L01 +設計用于 2.400-2.4835GHz的全球 ISM 頻段。要用 nRF24L01 +設計無線電系統,您只需要一個MCU(微控制器)和一些外部無源組件。您可以通過串行外設接口(SPI)來操作和配置 nRF24L01 +。寄存器映射可通過 SPI 訪問,其中包含 nRF24L01 +中的所有配置寄存器,并且可在芯片的所有操作模式下訪問。嵌入式基帶協議引擎(Enhanced ShockBurst?)基于數據包通信,支持從手動操作到高級自治協議操作等各種模式。內部 FIFO 確保無線電前端和系統 MCU 之間的數據流暢通。 Enhanced Shock Burst?通過處理所有高速鏈路層操作來降低系統成本。無線電前端使用 GFSK 調制。它具有用戶可配置的參數,如頻道,輸出功率和空中數據速率。nRF24L01 +支持 250 kbps,1 Mbps 和 2Mbps 的空中數據速率。高空中數據速率與兩種省電模式相結合,使 nRF24L01 +非常適合超低功耗設計。nRF24L01 +與 nRF24L01 直接兼容,并與 nRF2401A,nRF2402,nRF24E1 和 nRF24E2 在空中兼容。 nRF24L01 +中的互調和寬帶阻塞值與 nRF24L01相比有了很大的改進,并且 nRF24L01 +的內部濾波功能增加了滿足 RF 監管標準的余量。內部穩壓器確保高電源抑制比(PSRR)和寬電源范圍。
nRF24L01 +的特點包括:
?信號
- X 全球 2.4GHz ISM 頻段操作
- X 126 個 RF 通道
- X 公共 RX 和 TX 接口
- X GFSK 調制
- X 250kbps,1 和 2Mbps 空中數據速率
- X 1MHz 非重疊信道間隔,1Mbps
- X 2MHz 非重疊信道間隔,2Mbps
?發射機
- X 可編程輸出功率:0,-6,-12 或-18dBm
輸出功率為 0dBm 時 X 11.3mA
?接收器
- X Fast AGC 改善動態范圍
- X 集成通道過濾器
在 2Mbps 時 X 13.5mA
2Mbps 時靈敏度為-82dBm
在 1Mbps 時X-85dBm 靈敏度
250kbps 時靈敏度為-94dBm
?RF 合成器
?增強 ShockBurst?
- X 1 到 32 個字節的動態凈荷長度
- X 自動數據包處理
- X 自動數據包事務處理
- X 6 數據管道 MultiCeiver?用于 1:6 星形網絡
? 能源管理
- X 集成穩壓器
- X 1.9 至 3.6V 電源范圍
- X 具有快速啟動時間的空閑模式,用于高級電源管理
- X26μA 待機 I 模式,900nA 掉電模式
- X 最大 1.5ms 從掉電模式啟動
- X Max 130us 從待機I 模式啟動
?主機接口
- X 4 針硬件 SPI
- X 最大 10Mbps
- X 3 級 32 個字節的 TX 和 RX FIFO
- X 5V 寬容輸入
?緊湊型 20 引腳 4x4mm QFN 封裝
1.1 無線電控制
本章介紹 nRF24L01 +無線電收發器的工作模式和用于控制無線電的參數。nRF24L01 +內置狀態機,用于控制芯片工作模式之間的轉換。 狀態機從用戶定義的寄存器值和內部信號中獲取輸入。
1.1.1 操作模式
您可以在掉電,待機,RX 或 TX 模式下配置 nRF24L01 +。 本節詳細介紹這些模式。
1.1.1.1 狀態圖
圖 4 中的狀態圖顯示了操作模式及其功能。 狀態圖中突出顯示了三種不同的狀態:
?推薦的操作模式:是正常操作期間使用的推薦狀態。
?可能的操作模式:可能的操作狀態,但在正常操作期間不使用。
?過渡狀態:在振蕩器啟動和 PLL 建立期間使用的時間限制狀態。
當 VDD 達到 1.9V 或更高時,nRF24L01 +進入上電復位狀態,保持復位狀態直到進入掉電模式。
1.1.1.2 掉電模式
在掉電模式下,nRF24L01 +使用最小電流消耗來禁用。 所有可用的寄存器值都將保持不變,并且 SPI 保持活動狀態,從而可以更改配置以及數據寄存器的上載/下載。 關于啟動時間,請參見第 16 頁的表 16.通過將 CONFIG 寄存器中的 PWR_UP 位設置為低電平來進入掉電模式。
1.1.1.3 待機模式
1.1.1.3.1 待機 I 模式
通過將 CONFIG 寄存器中的 PWR_UP 位設置為 1,器件進入待機 I 模式。 待機 I 模式用于在保持較短的啟動時間的同時將平均電流消耗降至最低。 在這種模式下,只有部分晶體振蕩器處于活動狀態。 只有在 CE 設置為高電平且 CE 設置為低電平時,才會切換到活動模式,nRF24L01 將從 TX 和 RX 模式返回到待機 I 模式。
1.1.1.3.2 待機 II 模式
在備用-II 模式下,額外的時鐘緩沖器處于活動狀態,與待機 I 模式相比,使用更多的電流。如果 CE 在具有空 TX FIFO 的 PTX 器件上保持高電平,則 nRF24L01 +進入待機 II 模式。 如果一個新的數據包上傳到 TX FIFO,PLL 會立即啟動并在正常的 PLL 建立延遲(130μs)后發送數據包。寄存器值保持不變,并且在兩種待機模式下均可激活 SPI。 有關啟動時間,請參閱第 24 頁上的表 16。
1.1.1.4 接收模式
RX 模式是將 nRF24L01 +無線電用作接收器的主動模式。要進入該模式,nRF24L01 +必須將 PWR_UP 位,PRIM_RX 位和 CE 引腳設置為高電平。在接收模式下,接收器解調來自 RF 信道的信號,不斷向基帶協議引擎提供解調數據。基帶協議引擎不斷搜索有效的數據包。如果找到了有效的數據包(通過匹配的地址和有效的 CRC),數據包的有效負載將顯示在 RX FIFO 的空閑時隙中。如果 RX FIFO 已滿,則接收的數據包將被丟棄。 nRF24L01 +保持在 RX 模式,直到 MCU 將其配置為待機 I 模式或掉電模式。但是,如果基帶協議引擎中的自動協議功能(Enhanced ShockBurst?)已啟用,nRF24L01 +可以進入其他模式以執行協議。在接收模式下,接收功率檢測器(RPD)信號可用。 RPD 是在接收頻道內檢測到高于-64 dBm 的 RF 信號時設置為高電平的信號。內部 RPD 信號在提供給 RPD 寄存器之前被過濾。在 RPD 設置為高電平之前,RF 信號必須至少存在 40μs。第 25 頁第 6.4 節描述了如何使用 RPD
1.1.1.5 發送模式
TX 模式是傳輸數據包的主動模式。 要進入該模式,nRF24L01 +必須將 PWR_UP 位設置為高電平,將 PRIM_RX 位設置為低電平,TX FIFO 中的有效負載和 CE 上的高電平脈沖超過 10μs。 nRF24L01 +一直處于 TX 模式,直到完成發送數據包。 如果 CE = 0,則 nRF24L01 +返回待機 I 模式。 如果 CE = 1,則 TX FIFO 的狀態決定下一個操作。 如果 TX FIFO 不為空,則 nRF24L01 +將保持在 TX 模式并發送下一個數據包。 如果 TX FIFO 為空,則 nRF24L01 +進入待機 II 模式。 處于 TX 模式時,nRF24L01 +發送器 PLL 工作在開環狀態。 重要的是,一次不要將 nRF24L01 +保持在 TX 模式下的時間超過 4ms。 如果啟用增強 ShockBurst?功能,則 nRF24L01 +絕不會在 TX 模式下長于 4ms。
(譯者注:測試連續往 TX FIFO 中傳輸數據,看接收端是否能正確接收數據。并觀察狀態。猜測:空中發送數據比 SPI 傳輸速度更快,接收端能正確接收數據)
1.1.1.6 操作模式配置
A.如果 CE 保持高電平,則所有 TX FIFO 都清空,并執行所有必要的 ACK 和可能的重傳。 只要 TX FIFO 被重新填充,傳輸就會繼續。 如果 CE 仍為高電平時 TX FIFO 為空,則 nRF24L01 +進入待機 II 模式。 在這種模式下,只要在將數據包上載(UL)到 TX FIFO 后 CSN 置為高電平,數據包的傳輸就會開始。
B.該工作模式將 CE 脈沖至少持續 10μs。 這允許傳送一個分組。這是正常的操作模式。 數據包傳輸完成后,nRF24L01 +進入待機 I 模式。
1.1.1.7 時間信息
本節中的時序信息涉及模式之間的轉換和 CE 引腳的時序。 如表 16 所述,從 TX 模式到 RX 模式或反向模式的轉換與從待機模式到 TX 模式或 RX 模式(最大 130μs)的轉換相同。
為使 nRF24L01 +從掉電模式進入 TX 模式或 RX 模式,必須首先通過待機模式。在 CE 設置為高電平之前,nRF24L01 +離開掉電模式后,必須延遲 Tpd2stby(見表 16)。
注:如果 VDD 關閉,寄存器值將丟失,您必須在進入 TX 或 RX 模式之前配置 nRF24L01 +。
1.1.2 空中數據速率空中數據速率是 nRF24L01 +在發送和接收數據時使用的調制信號速率。 它可以是 250kbps,1Mbps 或 2Mbps。 使用較低的空中數據速率比較高的空中數據速率提供更好的接收器靈敏度 但是,空中數據傳輸速率較高,平均電流消耗較低,并且可減少空中碰撞的可能性。 空中數據速率由 RF_SETUP 寄存器中的 RF_DR 位設置。 發射機和接收機必須以相同的空中數據速率進行編程才能相互通信。 nRF24L01 +與 nRF24L01 完全兼容。 為了與 nRF2401A,nRF2402,nRF24E1 和 nRF24E2 兼容,空中數據速率必須設置為 250kbps 或 1Mbps。
1.1.3 射頻頻道頻率
RF 信道頻率決定了 nRF24L01 +使用的信道的中心。該信道在 250kbps 和 1Mbps 的帶寬下占用帶寬小于 1MHz,在 2Mbps 帶寬下帶寬小于 2MHz。 nRF24L01 +可以在 2.400GHz 至 2.525GHz 的頻率下工作。 RF 信道頻率設置的編程分辨率為 1MHz。 在 2Mbps 時,信道占用比 RF 信道頻率設置的分辨率更寬的帶寬。 為確保 2Mbps 模式下不重疊的通道,通道間隔必須為 2MHz 或更高。 在 1Mbps 和 250kbps 時,信道帶寬與 RF 頻率的分辨率相同或更低。
RF 通道頻率由 RF_CH 寄存器根據以下公式設置:
F0= 2400 + RF_CH [MHz]
您必須使用相同的 RF 信道頻率編程發射機和接收機才能彼此通信。
1.1.4 接收功率檢測器測量
位于寄存器 09 中的接收功率檢測器(RPD)位 0 觸發接收的功率電平高于-64 dBm,這些功率電平出現在您接收的 RF 信道中。 如果接收功率小于-64 dBm,則 RDP = 0。當 nRF24L01 +處于接收模式時,可以隨時讀出 RPD。 這提供了該頻道當前接收功率電平的快照。 接收到有效數據包后,RPD 狀態將被鎖存,然后指示來自您自己的發射機的信號強度。 如果沒有收到數據包,RPD 在接收周期結束時被鎖存,因為主機 MCU 設置 CE 低或 RX 超時由 Enhanced ShockBurst?控制。 當接收模式啟用且等待時間 Tstby2a + Tdelay_AGC = 130us + 40us 后,RPD 狀態正確。 RX 增益隨溫度變化,這意味著 RPD 閾值也隨溫度而變化。 在 T = -40°C 時,RPD 閾值降低了-5dB,并在 85°C 時增加了+ 5dB。
1.1.5 PA 控制
PA(功率放大器)控制用于設置 nRF24L01 +功率放大器的輸出功率。 在 TX 模式下,PA 控制有四個可編程步驟,參見表 17. PA 控制由 RF_SETUP 寄存器中的 RF_PWR 位設置
1.1.6 RX/TX 控制
RX / TX 控制由 CONFIG 寄存器中的 PRIM_RX 位置 1,并將 nRF24L01 +設置為發送/接收模式。
編輯:hfy
-
收發器
+關注
關注
10文章
3438瀏覽量
106072 -
嵌入式
+關注
關注
5087文章
19146瀏覽量
306147 -
RF
+關注
關注
65文章
3055瀏覽量
167123 -
無線數據傳輸
+關注
關注
1文章
61瀏覽量
19823
發布評論請先 登錄
相關推薦
評論