NRF24L01+PA+LNA là một trong những module wireless với chi phí thấp, đồng thời dễ dàng kết nối với các MCU như ARM/PIC/AVR/STM32 thông qua giao tiếp SPI, được ứng dụng truyền nhận dữ liệu từ xa qua sóng RF giữa các mạch vi xử lý như Arduino, Raspberry,…
Wireless NRF24L01+PA+LNA được thiết kế với bộ khuyếch đại công suất và anten SMA giúp tăng khoảng cách liên lạc không dây lên đến 1Km trong điều kiện không có vật cản.
Chú ý từ nhà sản xuất
chỉ được sử dụng
trong dải 1.9V~3.6V.Thông số kỹ thuật
Pinout:
Pin function:
Pin | Tên | Chức năng | Mô tả |
---|---|---|---|
1 | CE | Ngõ vào số | Pin chọn mode TX hoặc RX |
2 | CSN | Ngõ vào số | Pin chọn chip SPI |
3 | SCK | Ngõ vào số | Pin clock SPI |
4 | MOSI | Ngõ vào số | SPI Slave Data input |
5 | MISO | Ngõ ra số | SPI Slave Data output, với 3 lựa chọn |
6 | IRQ | Ngõ ra số | Pin kết nối ngắt, tích cực mức thấp |
Hướng dẫn sử dụng với Arduino:
Arduino | NRF24L01+PA+LNA |
---|---|
3.3V | VCC |
GND | GND |
D13-SCK | SCK |
D12-MISO | MISO |
D11-MOSI | MOSI |
D10-CS | CSN |
D9 | CE |
Code test:
#include <SPI.h>
#include "RF24.h"
RF24 radio(9, 10);
const uint64_t pipes[2] = {0xF0F0F0F000LL, 0xF0F0F0F0FFLL};
void setup(){
Serial.begin(9600);
radio.begin();
radio.setDataRate(RF24_250KBPS);
radio.setChannel(100);
radio.setRetries(15,15);
radio.openWritingPipe(pipes[1]);
radio.openWritingPipe(pipes[0]);
radio.openReadingPipe(1, pipes[0]);
radio.openReadingPipe(1, pipes[1]);
radio.startListening();
}
void loop(){
char data[32]= "";
Serial.println(data);
byte i = 0;
while (Serial.available() == 0)
{
if(radio.available()){
char data[32] = "";
radio.read(&data, 32);
Serial.print("Receive: ");
Serial.println(data);
}
}
while (Serial.available() > 0)
{
char ch = Serial.read();
data[i] = ch;
delay(5);
}
Serial.print("Sent: ");
Serial.println(data);
radio.stopListening();
radio.write(&data, 32);
radio.startListening();
}
Example_nRF24l01
Lưu ý: Cần thêm thư viện được đính kèm vào thư mục cài đặt của Arduino.