- 29a Bùi Xuân Phái, P.Tây Thạnh, Quận Tân Phú, TPHCM
- linhkienduchuy2018@gmail.com
- 0942954739 - 0919900767
Giao miễn phí trong nội thành TPHCM đối với đơn hàng trên 1 triệu đồng
Tặng ngay 50.000đ cho đơn hàng trên 2 triệu đồng
- Module 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
CODE TRUYỀN TÍN HIỆU TX
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(10, 9); // CE, CSN
const byte diachi[6] = "12345"; //Mảng kí tự dạng chuỗi có 6 kí tự
int nutnhan = 7; boolean gtnutnhan = 0;
void setup()
{
Serial.begin(9600);
if (!radio.begin())
{
Serial.println("Module không khởi động được...!!");
while (1) {}
}
radio.openWritingPipe(diachi);
//Lệnh openWritingPipe mặc định là đường truyền 0
//mở 1 kênh có địa chỉ 12345 trên đường truyền 0
// kênh này ghi data lên địa chỉ 12345
radio.setPALevel(RF24_PA_MIN); //Cài bộ khuếch đại công suất ở mức MIN
radio.setChannel(80);
radio.setDataRate(RF24_250KBPS);
radio.stopListening(); //Cài đặt module là TX
if (!radio.available())
{
Serial.println("Chưa kết nối được với RX...!!");
Serial.println("CHỜ KẾT NỐI.......");
}
pinMode(nutnhan, INPUT_PULLUP);
}
void loop()
{
gtnutnhan = digitalRead(nutnhan);
Serial.print("Giá Trị nút nhấn: "); Serial.println(gtnutnhan);
radio.write(>nutnhan, sizeof(gtnutnhan));
delay(500);
}
CODE NHẬN TÍN HIỆU RX
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(10, 9); // CE, CSN
const byte diachi[6] = "12345";
int den = 7;
boolean gtnhan = 0;
void setup()
{
Serial.begin(9600);
if (!radio.begin())
{
Serial.println("Module không khởi động được...!!");
while (1) {}
}
radio.openReadingPipe(0, diachi);
//Lệnh openReadingPipe có số đường truyền từ 0-5
//Nhưng đường 0 đã được dùng cho ghi (mặc định)
//Vì vậy chỉ dùng 1-5, nếu dùng không sẽ bị chồng lấn
//Mở 1 kênh có địa chỉ 12345 trên đường truyền 1
//kênh này chỉ đọc data trên địa chỉ 12345
radio.setPALevel(RF24_PA_MIN);
radio.setChannel(80);
radio.setDataRate(RF24_250KBPS);
radio.startListening();
if (!radio.available())
{
Serial.println("Chưa kết nối được với TX...!!");
Serial.println("CHỜ KẾT NỐI.......");
}
pinMode(den, OUTPUT);
}
void loop()
{
if (radio.available())
{
radio.read(>nhan, sizeof(gtnhan));
Serial.println(gtnhan);
if(gtnhan == 0)
{
digitalWrite(den, HIGH);
}
else
{
digitalWrite(den, LOW);
}
}
}
LINK CÀI THƯ VIỆN NRF24L01
https://github.com/nRF24/RF24
Bình luận