步驟1:NRF24L01功能和規(guī)格
NRF24L01無(wú)線收發(fā)器模塊的功能:
?Cost(對(duì)于類型版本,費(fèi)用在1 $到3 $之間)
?Range
?Availability
?易于使用
NRF24L01無(wú)線收發(fā)器模塊的類型:
NRF24LO1有兩種類型:
?NRF24L01具有天線(在開(kāi)放空間中大約為公里)
?NRF24L01(無(wú)天線)(在開(kāi)放空間中大約為50米)
NRF24L01無(wú)線收發(fā)器模塊的應(yīng)用:
?無(wú)線家庭自動(dòng)化
?Drones遠(yuǎn)程控制
?遠(yuǎn)程傳感器,用于溫度,壓力,警報(bào)等
?機(jī)器人控制和監(jiān)視
NRF24L01無(wú)線收發(fā)器模塊的功耗:
?此模塊的功耗在傳輸過(guò)程中僅為12mA左右
?模塊的電壓范圍是1.9至3.6V
第2步:觀看視頻以了解更多詳情
第3步:要克服的問(wèn)題
許多用戶遇到NRF24L01模塊的問(wèn)題。這些問(wèn)題的根源通常來(lái)自3.3v Power。由于該模塊沒(méi)有足夠的電流能力。這是為什么我建議使用以下任一方式:
?帶有穩(wěn)壓器和旁路電容器的基本模塊,以保持穩(wěn)定性
OR
?從+ 3.3V到Gnd直接在模塊上的3.3 uF至10 uF(MicroFarad)電容器
步驟4:原理圖




CE和CSN引腳可以連接到任何數(shù)字引腳。然后,在RF24庫(kù)中,您可以指定使用的引腳。我選擇了引腳8和9,因?yàn)槲覍⒃谑纠惺褂盟鼈儭?/p>
在我們的例子中,我們將使用Arduino Uno,這就是為什么您應(yīng)該遵循以下說(shuō)明(或遵循上圖)的原因:
MOSI連接到數(shù)字引腳11
MISO連接到數(shù)字引腳12
SCK連接到數(shù)字引腳13
SS(未使用)
注意:使用NRF24L01時(shí),您必須記住這些數(shù)字引腳不可用。
請(qǐng)觀看以下視頻
步驟5:下載RF24庫(kù)
在此項(xiàng)目中,我們使用了RF24庫(kù),該庫(kù)可以在Github上下載:RF24庫(kù)
1。首先,您需要單擊“下載ZIP”按鈕
2。將zip文件解壓縮到您的Arduino主目錄中:Linux/Linux上的Arduino/庫(kù)或Windows中的文檔/Arduino/庫(kù)。
步驟6:發(fā)射器Arduino代碼
發(fā)送器草圖將如下所示:
/** Arduino Wireless Communication Tutorial
* Transmitter Code
*
* by Smart Technology, https://makesmarttech.blogspot.com/
*
* Library: TMRh20/RF24,https://tmrh20.github.io/RF24
*/
#include
#include
#include
#define button 7
RF24 radio(8, 9); // CE, CSN
const byte address[6] = “00001”;
boolean buttonState = 0;
void setup() {
pinMode(button, INPUT);
radio.begin();
radio.openWritingPipe(address);
radio.setPALevel(RF24_PA_MAX);
radio.stopListening();
}
void loop() {
delay(5);
radio.stopListening();
buttonState = digitalRead(button);
radio.write(&buttonState, sizeof(buttonState));
}
第7步:接收器Arduino代碼
接收器草圖將如下所示:
/** Arduino Wireless Communication Tutorial
* Receiver Code
*
* by Smart Technology, https://makesmarttech.blogspot.com/
* Library: TMRh20/RF24, https://tmrh20.github.io/RF24
*/
#include
#include
#include
#define led 7
RF24 radio(8, 9); // CE, CSN
const byte address[6] = “00001”;
boolean buttonState = 0;
void setup() {
pinMode(7, OUTPUT);
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(0, address);
radio.setPALevel(RF24_PA_MAX);
radio.startListening();
}
void loop() {
delay(5);
radio.startListening();
while (!radio.available());
radio.read(&buttonState, sizeof(buttonState));
if (buttonState == HIGH) {
digitalWrite(led, HIGH);
}
else {
digitalWrite(led, LOW);
}
}
第8步:獲得支持

責(zé)任編輯:wv
-
nRF24L01
+關(guān)注
關(guān)注
17文章
331瀏覽量
74814 -
Arduino
+關(guān)注
關(guān)注
190文章
6526瀏覽量
196911
發(fā)布評(píng)論請(qǐng)先 登錄
SI24R2B 單發(fā)Tx發(fā)射芯片功耗低 可兼容NRF24L01P
SI24R1:一款低功耗國(guó)產(chǎn)兼容 NRF24L01+開(kāi)發(fā)資料
Arduino UNO 可視化GT-24工業(yè)級(jí)無(wú)線透?jìng)?/a>
探究博通AFBR - FS50B00:高速光無(wú)線通信收發(fā)器的卓越之選
NRF24L01——2.4GHz無(wú)線通信
探索 THVD24x0:工業(yè)通信的可靠 RS - 485 收發(fā)器解決方案
SI24R1完美代替NRF24L01
使用NRF24l01軟件包注冊(cè)設(shè)備失敗怎么解決?
官網(wǎng)nrf24l01的例程demo會(huì)出現(xiàn)互斥鎖報(bào)錯(cuò)是為什么?
THVD24X2VEVM全雙工RS-485收發(fā)器評(píng)估模塊技術(shù)解析
SI24R1:答題卡方案芯片替代NRF24L01+
NRF24L01項(xiàng)目資料(2.4G通信)實(shí)例項(xiàng)目下載
基于nRF24L01+的2.4GHz無(wú)線模塊設(shè)計(jì)與應(yīng)用
如何使用NRF24L01收發(fā)器模塊在兩個(gè)Arduino板之間進(jìn)行無(wú)線通信
評(píng)論