個人感覺難以捉摸
0.png (81.74 KB, 下載次數(shù): 49)
下載附件
2018-4-29 01:00 上傳
芯片簡介
NRF24L01 是 NORDIC 公司最近生產(chǎn)的一款無線通信通信芯片,采用 FSK 調(diào)制,內(nèi)部集成 NORDIC 自己的 Enhanced Short Burst 協(xié)議。可以實現(xiàn)點對點或是 1對 6 的無線通信。無線通信速度可以達到 2M(bps) 。NORDIC 公司提供通信模塊的 GERBER 文件,可以直接加工生產(chǎn)。嵌入式工程師或是單片機愛好者只需要為單片機系統(tǒng)預留 5 個 GPIO,1 個中斷輸入引腳,就可以很容易實現(xiàn)無線通信的功能,非常適合用來為 MCU系統(tǒng)構(gòu)建無線通信功能。
0.jpg (32.57 KB, 下載次數(shù): 57)
下載附件
2018-4-29 01:00 上傳
5 實際通信過程示波器圖
對于NRF24L01 的編程主要是通過命令(WRITE_REG,READ_REG等等) ,控制線CE、CSN)以及中斷信號 IRQ共同完成的。 對于發(fā)射節(jié)點,如果使能 ACK 與 IRQ 功能,則當通信成功以后(也就是發(fā)射節(jié)點收到了接收節(jié)點送回的ACK信號)IRQ線會置低。 對于接收節(jié)點,如果使能ACK與IRQ功能,則當通信成功以后(主要是根據(jù)Enhanced ShockBurst協(xié)議認為成功收到了有效數(shù)據(jù)寬度的數(shù)據(jù)) IRQ線會置低。 根據(jù)以上兩種情況,用示波器抓了以下幾個圖形,分別介紹如下:
1)發(fā)射節(jié)點 CE 與 IRQ 信號
0.jpg (39.36 KB, 下載次數(shù): 60)
下載附件
2018-4-29 01:01 上傳
黃色信號是 CE,綠色信號是IRQ,當把節(jié)點配置為發(fā)射節(jié)點以后,將要傳送的數(shù)據(jù)通過 SPI_Write_Buf(WRITE_REG + RX_ADDR_P0, TX_ADDRESS, TX_ADR_WIDTH)函數(shù)送到發(fā)送 FIFO 緩沖區(qū)。CE 為高超過 10us,緩沖區(qū)中的數(shù)據(jù)通過無線向外發(fā)出。 如果使能 IQR 的全部功能(TX_DS,RX_DS,MAX_RT)當發(fā)送節(jié)點收到接收節(jié)點發(fā)來的 ACK(表示接收節(jié)點成功收到信號)或是達到最大發(fā)射次數(shù),IRQ 會變?yōu)榈碗娖剑瑫r CONFIG 的相關(guān)標志位()會置 1。清除標志位(向 CONFIG 的標志位寫
1)以后,IRQ 又變?yōu)楦唠娖健?
從 FIG5.1 可以看出,CE 置高后將近 10msIRQ 才置低。IRQ 置低是由于達到最大發(fā)射次數(shù)(MAX_RT=1),出現(xiàn)該情況可能是由于接收節(jié)點的配置與發(fā)射節(jié)點不符(例如發(fā)射接收頻率不同,或者發(fā)射接收字節(jié)不等) ,或者根本就沒有接收節(jié)點(例如接收節(jié)點就根本沒上電) 。
2)SCK 與 IRQ 信號(發(fā)送成功)
0.jpg (38.67 KB, 下載次數(shù): 56)
下載附件
2018-4-29 01:02 上傳
Fig5.2 中綠色信號是 SCK,黃色信號是IRQ。第一批綠色信號表示節(jié)點的配置過程。 MOSI 信號 (Fig5.2 中未顯示出) 在 SCK的下降延送入 24L01節(jié)點。 (配置一個寄存器需要兩組 SCK信號,填充 N字節(jié)的 BUFFER需要 N+1 組SCK信號) 。
配置完信號以后,將 CE(Fig5.2 中未顯出)置高,則 24L01 開始發(fā)送(或接收)數(shù)據(jù),當發(fā)送(或接收)完成以后(或是達到最大發(fā)射次數(shù)) ,IRQ置低。單片機根據(jù)當時的狀態(tài)進行相應的處理。
第二批綠色信號表示單片機在 IRQ 為低時對 24L01 的處理過程。可以是讀FIFO(作為接收節(jié)點時) ,寫 FIFO(作為發(fā)射節(jié)點時) ,或是 Reset 24L01(達到最大發(fā)射次數(shù)時) 。
從Fig5.2可以看到, 從第一批SCK的最后一個信號到IRQ置低大概需要1ms(對比于 Fig5.1 的 12ms) ,說明通信成功(說明 IRQ不是 MAX_RT引起的) 。
3)SCK 與 IRQ 信號(發(fā)送不成功)
0.jpg (35.47 KB, 下載次數(shù): 58)
下載附件
2018-4-29 01:02 上傳
Fig5.3 與 Fig5.2 類似,只不過從第一批最后一個 SCK 信號到 IRQ 置低的時間間隔變?yōu)閷⒔?0ms,表明通信部不成功,IRQ是由于達到最大發(fā)射次數(shù)引起的。
0.jpg (43.49 KB, 下載次數(shù): 60)
下載附件
2018-4-29 01:03 上傳
Fig5.4 中紫色信號是發(fā)射端 CE,綠色信號是接收端 IRQ,黃色信號是發(fā)射
端 IRQ。Fig5.4 表示如下邏輯:
發(fā)射節(jié)點在配置完成以后(配制過程 Fig5.2 未顯示) ,CE 置高,發(fā)射節(jié)點 FIFO中的數(shù)據(jù)發(fā)出;接收節(jié)點成功接收到數(shù)據(jù),IRQ置低(從紫色信號與綠色信號之間的時間間隔可以判斷出通信成功) ;接收節(jié)點自動發(fā)射 ACK(在發(fā)射和接收節(jié)點都使能 ACK) ,發(fā)射節(jié)點收到 ACK后 IRQ 置低,表示發(fā)送成功。 不同通信環(huán)境可能造成發(fā)射節(jié)點的IRQ與接收節(jié)點的IRQ產(chǎn)生將對的相位變化(表現(xiàn)在示波器上面就是黃色信號靠近綠色信號或者遠離綠色信號) 。出現(xiàn)這種情況主要是由于不同的通信環(huán)境造成接收端發(fā)送的 ACK信號要重發(fā)幾次才能被發(fā)送端收到。
完整的pdf格式文檔51黑下載地址(共21頁):
NRF24L01功能使用文檔.pdf
(650.05 KB, 下載次數(shù): 10)
2018-4-27 14:39 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|