NRF24L01

NRF24L01  เป็นโมดูลรับส่งข้อมูลไร้สายที่ความถี่ 2.4 GHz ติดต่อกับแบบ SPI ใช้พลังงานต่ำ  ใช้ไฟเลี้ยง 3.3 V แต่สามารถใช้ระดับแรงดันในการติดต่อ 5V ได้ปกติ **เวลาใช้งานจะต้องใช้คู่กัน 2 ตัว**

**** เวลาใช้งานจะต้องจ่ายไฟเลี้ยงให้กับโมดูลไม่เกิน 3.3 V เท่านั้น ส่วน PIN อื่นๆใช้ 5V ต่อได้ปกติครับ****

NRF24L01 + and NRF24L01 the difference between:

NRF24L01 +: 250K 1M 2M three speed, nRF24L01: 1M 2M two speed control mode RF parameters are the same

NRF24L01 launch 11.3mA 0dBm receiving the 12.3mA NRF24L01 + emission 11.3mA 0dBm receiving 13.5mA



การต่อวงจร

Arduino   NRF24L01
3.3V VCC
GND GND
pin 7 4 CNS หรือ CS
pin 8 3 CE
pin 11 6 MOSI
pin 12 7ึ MISO
pin 13 5 SCK


ดาวน์โหลด Library NRF24L01

การใช้งานจะมี 2 ส่วนคือ ตัวรับ ตัวส่ง

โค้ด NRF24L01 ส่วนของตัวส่ง

#include

#include

String message;

nRF24L01p transmitter(7,8);//CSN,CE

void setup()

{

  Serial.begin(115200);

  SPI.begin();

  SPI.setBitOrder(MSBFIRST);

  transmitter.channel(88); // กำหนดช่องสื่อสาร

  transmitter.TXaddress("AAA"); // ตั้งชื่อตำแหน่งให้ตรงกันระหว่างตัวรับ ตัวส่ง (ได้สูงสุด 5 ตัวอักษร)

  transmitter.init();

}

void loop()

{

  transmitter.txPL("www.ArduinoThai.com Test");  // ข้อความที่ต้องการส่ง

  transmitter.send(FAST); // สั่งให้ส่งส่งข้อความออกไป

  delay(1000);

}



โค้ด NRF24L01 ส่วนของตัวรับ

#include

#include

String message;

nRF24L01p receiver(7,8);//CSN,CE

void setup()

{

  Serial.begin(115200);

  SPI.begin();

  SPI.setBitOrder(MSBFIRST);

  receiver.channel(88);  // ตั้งช่องสื่อสารให้ตรงกันระหว่างตัวรับตัวส่ง

  receiver.RXaddress("AAA");  // ตั้งชื่อตำแหน่งให้ตรงกันระหว่างตัวรับ ตัวส่ง (ได้สูงสุด 5 ตัวอักษร)

  receiver.init();

}

void loop(){

  if(receiver.available())

  {

    receiver.read(); // สั่งให้อ่านค่าที่ส่งมา

    receiver.rxPL(message); // สั่งให้อ่านเก็บไว้ที่ตัวแปร

    Serial.println(message); // แสดงค่าออกทาง Serial Monitor

    message="";

  }

}

ความคิดเห็น

บทความที่ได้รับความนิยม