Module thu phát RF NRF24L01 2.4Ghz với Arduino

Module RF 2.4GHz NRF24L01+ sử dụng chip truyền sóng NRF24L01+ mới nhất từ hãng Nordic với nhiều cải tiến so với chip NRF24L01 cũ về tốc độ truyền, khoảng cách, độ nhạy, bổ sung thêm pipelines, buffers, và tính năng auto-retransmit nhưng vẫn tương thích ngược với phiên bản cũ về cách sử dụng …, NRF24L01+ hoạt động trên dải tần 2.4GHz và sử dụng giao tiếp SPI, khoảng cách tối đa trong điều khiện không vật cản lên đến 100m.

Thông số kỹ thuật:

  • Điện thế hoạt động: 1.9~3.6VDC
  • Tần số thu phát: 2.4GHz.
  • Truyền được 100m trong môi trường mở với 250kbps baud.
  • Tốc độ truyền dữ liệu qua sóng: 250kbps to 2Mbps.
  • Tự động bắt tay (Auto Acknowledge).
  • Tự động truyền lại khi bị lỗi (auto Re-Transmit).
  • Multiceiver – 6 Data Pipes.
  • Bộ đệm dữ liệu riêng cho từng kênh truyền nhận: 32 Byte separate TX and RX FIFOs.
  • Các chân IO đều chịu được điện áp vào 5VDC.
  • Lập trình được kênh truyền sóng trong khoảng 2400MHz đến 2525MHz (chọn được 125 kênh).
  • Thứ tự chân giao tiếp : GND,VCC,CS,CSN,SCK,MOSI,MISO,IRQ
  • Kích thước: 15 x 29mm

Tài liệu tham khảo:

Sơ đồ các chân trên mạch:

Sơ đồ chân Module thu phát RF NRF24L01 2.4Ghz
Sơ đồ chân Module thu phát RF NRF24L01 2.4Ghz
Module thu phát RF NRF24L01 2.4Ghz

Sơ đồ mạch:

Sơ đồ mạch Module thu phát RF NRF24L01 2.4Ghz
Sơ đồ mạch Module thu phát RF NRF24L01 2.4Ghz

Sơ đồ kết nối:

Sơ đồ kết nối Module thu phát RF NRF24L01 2.4Ghz
Sơ đồ kết nối Module thu phát RF NRF24L01 2.4Ghz

————————–CODE THAM KHẢO————————-

Thư viện SPI.h

Thư viện nRF24L01.h

Thư viện RF24.h

CODE Phát:

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

//create an RF24 object
RF24 radio(9, 8);  // CE, CSN

//address through which two modules communicate.
const byte address[6] = "00001";

void setup()
{
  radio.begin();
  
  //set the address
  radio.openWritingPipe(address);
  
  //Set module as transmitter
  radio.stopListening();
}
void loop()
{
  //Send message to receiver
  const char text[] = "Hello World";
  radio.write(&text, sizeof(text));
  
  delay(1000);
}

CODE Thu:

#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>

//create an RF24 object
RF24 radio(9, 8);  // CE, CSN

//address through which two modules communicate.
const byte address[6] = "00001";

void setup()
{
  while (!Serial);
    Serial.begin(9600);
  
  radio.begin();
  
  //set the address
  radio.openReadingPipe(0, address);
  
  //Set module as receiver
  radio.startListening();
}

void loop()
{
  //Read the data if available in buffer
  if (radio.available())
  {
    char text[32] = {0};
    radio.read(&text, sizeof(text));
    Serial.println(text);
  }
}

HÌNH THỰC TẾ

Mạch thu phát wifi ESP8266 uart ESP-01S
Mạch thu phát wifi ESP8266 uart ESP-01S
Mạch thu phát wifi ESP8266 uart ESP-01S
Mạch thu phát wifi ESP8266 uart ESP-01S
Module thu phát RF NRF24L01 2.4Ghz
Module thu phát RF NRF24L01 2.4Ghz

Leave a Reply

Your email address will not be published. Required fields are marked *