วันอังคารที่ 6 ธันวาคม พ.ศ. 2559

การใช้งาน  NRF24L01 Module โมดูลสื่อสารไร้สาย NRF24L01 ความถี่ 2.4G ร่วมกับ Arduino


ต่อขาโมดูล nRF24L01 กับ Arduino uno ดังนี้
  • Vcc-3.3V
  • Gnd - Gnd
  • CSN - 7
  • CE - 8
  • MOSI - 11
  • SCK - 13
  • MISO - 12


สำหรับการต่อขาโมดูล nRF24L01 กับ Arduino Mega ดังนี้
  • Vcc-3.3V
  • Gnd - Gnd
  • CSN - 7
  • CE - 8
  • MOSI - 51
  • SCK - 52
  • MISO - 50

การทำงานจะมี 2 ส่วนคือ ภาคส่ง กับภาครับ




โคด NRF24L01 ส่วนของการทำงานภาคส่ง

#include <SPI.h>
#include <nRF24L01p.h>

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

void setup(){
delay(150);
Serial.begin(115200);
SPI.begin();
SPI.setBitOrder(MSBFIRST);
transmitter.channel(90); // ตั้งช่องความถี่ให้ตรงกัน
transmitter.TXaddress("ALL"); // ตั้งชื่อตำแหน่งให้ตรงกัน ชื่อตั้งได้สูงสุด 5 ตัวอักษร
transmitter.init();
}

String message;

void loop(){
 transmitter.txPL("Welcome ArduinoAll"); // ค่าที่ต้องการส่ง
transmitter.send(FAST); // สั่งให้ส่งออกไป
delay(1000);
}



โคด NRF24L01 ส่วนของการทำงานภาครับ

#include <SPI.h>
#include <nRF24L01p.h>

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

void setup(){
delay(150);
Serial.begin(115200);
SPI.begin();
SPI.setBitOrder(MSBFIRST);
receiver.channel(90);  // ตั้งช่องความถี่ให้ตรงกัน
receiver.RXaddress("ALL");  // ตั้งชื่อตำแห่นงให้ตรงกัน ชื่อตั้งได้สูงสุด 5 ตัวอักษร
receiver.init();
}

String message;

void loop(){
if(receiver.available()){
 receiver.read(); // สั่งให้เริ่มอ่าน
receiver.rxPL(message); // สั่งใหอ่านเก็บไว้ที่ตัวแปร
Serial.println(message);
message="";
}
}



หมายเหตุ : ในกรณีที่บอร์ดไม่ทำงาน ลองใส่ตัวเก็บประจุ 0.1uf ที่แหล่งจ่ายไฟขั้วบวกและขั้วลบ จะช่วยแก้ปัญหาได้ เพราะวิธีนี้ช่วยลดสัญญาณรบกวนได้ http://forum.arduino.cc/index.php?topic=171611.0





เเหล่งอ้างอิง

https://www.arduinoall.com/article/10/%E0%B8%AA%E0%B8%AD%E0%B8%99-%E0%B8%A7%E0%B8%B4%E0%B8%98%E0%B8%B5-%E0%B9%83%E0%B8%8A%E0%B9%89%E0%B8%87%E0%B8%B2%E0%B8%99-nrf24l01-module-%E0%B9%82%E0%B8%A1%E0%B8%94%E0%B8%B9%E0%B8%A5%E0%B8%AA%E0%B8%B7%E0%B9%88%E0%B8%AD%E0%B8%AA%E0%B8%B2%E0%B8%A3%E0%B9%84%E0%B8%A3%E0%B9%89%E0%B8%AA%E0%B8%B2%E0%B8%A2-nrf24l01-%E0%B8%84%E0%B8%A7%E0%B8%B2%E0%B8%A1%E0%B8%96%E0%B8%B5%E0%B9%88-2-4g-%E0%B8%A3%E0%B9%88%E0%B8%A7%E0%B8%A1%E0%B8%81%E0%B8%B1%E0%B8%9A-arduino-%E0%B9%83%E0%B8%8A%E0%B9%89%E0%B8%87%E0%B8%B2%E0%B8%99%E0%B9%84%E0%B8%94%E0%B9%89%E0%B8%A0%E0%B8%B2%E0%B8%A2%E0%B9%83%E0%B8%99-3-%E0%B8%99%E0%B8%B2%E0%B8%97%E0%B8%B5