|
nRF24L01芯片是一款專供單片機(jī)的射頻收發(fā)芯片。工作于2.4GHz~2.5GHz ISM頻段。融合了shockburst技術(shù)。
我先列出該芯片的硬件參數(shù)資料:
至于每個引腳的具體用途,可以參見技術(shù)手冊。
nrf24l01p.png (115.05 KB, 下載次數(shù): 63)
下載附件
2018-9-6 11:05 上傳
一個nRF24L01簡易發(fā)射系統(tǒng)應(yīng)該具有以電路:最小系統(tǒng)電路,供電系統(tǒng),下載程序接口,5v轉(zhuǎn)3.3v電路,nRF24L01模塊接口等等
24L01.png (446.5 KB, 下載次數(shù): 62)
下載附件
2018-9-6 11:06 上傳
上面是nRF24L01模塊的電路原理圖,實話說我現(xiàn)在的能力不足,還無法指出各部分電路的作用,因此在這里就不多做解釋了。不過我還是盡可能的給出芯片的一些參數(shù),電路設(shè)計的時候不要違背這些參數(shù)。
最小系統(tǒng)加載芯片后的電路圖
nrf24l01p11.png (83.22 KB, 下載次數(shù): 54)
下載附件
2018-9-6 11:08 上傳
OK硬件的知識我們說到這里,下面來看一看軟件的實現(xiàn)。我已經(jīng)在截圖中解釋的很清楚了,但是仍然有必有對于一些新手做一些拓展性的指導(dǎo),因為這將可能使你進(jìn)一步了解通信這個行業(yè)。在我看來,使用一個芯片是一件十分容易的事情,并且當(dāng)你使用芯片越來越多的時候你就會覺得越來越輕松。我們正在寫的這個無線通信協(xié)議,在我看來一共只有兩個問題在困擾我們:1配置,2數(shù)據(jù)傳輸。當(dāng)我們配置好模式之后,我們只需要給芯片我們要傳輸?shù)臄?shù)據(jù)即可。那么我們該如何配置芯片的參數(shù)呢?先來想一想無線發(fā)射的一些基本問題(這里加入了一些安全性的保證): 1我需要知道發(fā)射和接受端的地址,2我需要有一個應(yīng)答機(jī)制,這樣會保證我的數(shù)據(jù)傳輸?shù)臏?zhǔn)確性,那么我怎么實現(xiàn)這個機(jī)制呢?通信原理中要求我先配置應(yīng)答模式,其次我需要配置未產(chǎn)生應(yīng)答是的工作方式。3這個是關(guān)于24L01的自身設(shè)定了,該芯片具有六個通信信道,我要設(shè)置具體哪個信道在工作。4關(guān)于傳輸?shù)膯栴},我應(yīng)該要求一次性傳輸幾個字節(jié)。這些都是必須要規(guī)定的,當(dāng)然在下面我的代碼中也確確實實的配置了這幾個方面的東西。
下面是關(guān)于24L01的模式配置過程:
另外關(guān)于通信的一個最簡單問題就是SPI通信協(xié)議,這個相信學(xué)習(xí)通信的小伙伴們應(yīng)該不會不知道才對,這里我只提供了用單片機(jī)模擬SPI通信的一段代碼,至于想深入了解SPI的請出門右轉(zhuǎn)。大家都看到了,我在配置這個芯片的同時需要一個寫入狀態(tài)的函數(shù),那么這個函數(shù)是什么樣子的呢?
這里有些命令我寫在宏定義中,可能你看不到了,不過沒關(guān)系,這種東西網(wǎng)上多的是嘛,度年會很親切的。
配置模式已經(jīng)完畢了,下面來看一下數(shù)據(jù)的發(fā)送和接受:
nrf24l01p12.png (115.12 KB, 下載次數(shù): 58)
下載附件
2018-9-6 11:09 上傳
從這里我可以看出,其實當(dāng)擁有了裝載數(shù)據(jù)的函數(shù)之后,發(fā)射都是十分簡單的事情,主要我們把數(shù)據(jù)裝載到芯片中就可以了,那么這個裝載的SPI函數(shù)是什么呢?
技術(shù)支持:13682455391
|
|