بسم الله الرحمن الرحیم
این ماژول ساخت شرکت نوردیک بوده و با فرکانس 2.4 و تکنولوژی GFSK کار میکند، همان تکنولوژی مورد استفاده در بلوتوث! البته بردش بسیار بالاتر از بلوتوث هست. نکته ای که راجب این ماژول در فضای اینترنت پر شده و درست هم هست اینه که ماژولها چینی هستن و اصلا برد نامی خودشون رو نمیتونن بدن و یه ماژول 12 هزار تومنی رو از eca میگیرید میبینید روش نوشته 100 متر برد ولی در عمل تو فضای باز با خازن موازی و... 50-60 متر هم بهتون برد نمیده! ولی مثلا یه 100 هزار تومنی تایوانیش تا 1000 متر هم ممکن هست در شرایط ایده ال بهتون برد بده. پس در خرید ماژول دقت کنید و جنس اصل رو خریداری کنید اگر برد و کیفیت کار براتون مهم هست وگرنه دو تا 10 تومنیش هم برای روشن/خاموش کردن 4 تا رله و یه ماشین کنترلی و... از چند ده متری کافیه.
دیتا ریت جنس اصلش تا 2 مگابیت هم میرسه و حتی دیده شده ویدئو میفرستن باهاش! ولی دردسر های خودشم داره.
برخی مشخصات:
دیتا ریت: ۲ مگا بیت بر ثانیه
جریان مصرفی: آماده باش 22 میکرو آمپر - دریافت دیتا با ۲ مگا بیت بر ثانیه ۱۲٫۳ میلی آمپر(بسیار کم مصرف)
ولتاژ تغذیه: 1.9 تا 3.6 ولت(اصلا بالای 3.6 ولت رو امتحان نکنید که مثل من چیپ میسوزونید)
۶ لوله دیتا MULTICEIVER برای ارتباط چند ماژول به هم و ایجاد شبکه محلی
نوع ارتباط با آردوینو و میکرو: isp و پین های CE/SCN/MISO/MOSI/SCK/RESET/3.3V
شما دو پین CE و SCN رو در کد تعریف میکنید و بعد به هر کدوم از پینها که خواستین متص میکنید
تغذیه باید از طریق 3.3 ولت صورت بگیره واگر از یک رگلاتور مجزا و خازن مولتی لایر 104 هم برای تغذیش استفاده بشه بهترم میشه.
پین IRQ هم فعلا باهاش کاری نداریم. اتصالات به این شکل هست:
VCC==>3.3V
GND==>GND
8==>CSN
7==>CE
13==>SCK
11==>MOSI
12==>MISO
کد فرستنده:
//کد فرستنده
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(7, 8); // CE, CSN تعیین پایه های
const byte address[6] = "00001";//آدرس کانال ارتباطی که باید با گیرنده یکی باشه
void setup() {
radio.begin();
radio.openWritingPipe(address);
radio.setPALevel(RF24_PA_MIN);
radio.stopListening();
}
void loop() {
const char text[] = "Hello World";//متن تست در سریال مانیتور
radio.write(&text, sizeof(text));
delay(1000);//تاخیر نمایش پیام
}
کد گیرنده:
//کد گیرنده
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
RF24 radio(7, 8); // CE, CSN
const byte address[6] = "00001";
void setup() {
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(0, address);
radio.setPALevel(RF24_PA_MIN);
radio.startListening();
}
void loop() {
if (radio.available()) {
char text[32] = "";
radio.read(&text, sizeof(text));
Serial.println(text);
}
}
بعد از اتمام کار نرم افزار آردوینو رو باز کنید و در بخش سربرگها TOOLS و بعد PORT رو انتخاب کرده و پورت COM مربوط به برد آردوینو گیرنده رو انتخاب کنید و به سریال مانیتورش برید، اگر Hello World رو پشت سر هم نمایش میداد شما موفق به برقراری ارتباط شدید.