من یک جفت از این ماژول ها رو راه اندازی کردم ولی مشکل این جاست که ارتباط یک طرفه است. یعنی مثلا برای من فقط میتونم روی com6 بنویسم و روی com8 بخونم ولی وقتی روی com8 مینویسم چیزی رو com6 نشون نمیده.
کسی نظری یا راه حلی سراغ داره؟؟/
نمایش نسخه قابل چاپ
من یک جفت از این ماژول ها رو راه اندازی کردم ولی مشکل این جاست که ارتباط یک طرفه است. یعنی مثلا برای من فقط میتونم روی com6 بنویسم و روی com8 بخونم ولی وقتی روی com8 مینویسم چیزی رو com6 نشون نمیده.
کسی نظری یا راه حلی سراغ داره؟؟/
سلام دوستان
من میخوام با ماژول NRF یک فرستنده گیرنده راه بندازم که هنگامی که در برد اول پایه ی 14 یک شد در برد دوم این پایه یک بشه
من از دو تا آردوینو 2560 و دو تاماژول NRF24L01 استفاده کردم
برنامه برد اول که فرستنده است رو این طور نوشتم:
#include <SPI.h>
#include <Mirf.h>
#include <NRF24L01.h>
#include <MirfHardwarespiDriver.h>
int led = 14;
int i;
void setup() {
pinMode(led, INPUT);
Serial.begin(9600);
Mirf.spi=&MirfHardwareSpi;
Mirf.init();
Mirf.setRADDR((byte*)"clie2");
Mirf.setTADDR((byte*)"clie1");
Mirf.payload=sizeof(unsigned long);
Mirf.config();
byte rf_setup=0;
Mirf.readRegister(RF_SETUP , &rf_setup,sizeof(rf_setup));
if(rf_setup!=0)
Serial.println("beginning");
else
{Serial.println("no signal");
while(rf_setup=0);}
delay(1000);
}
void loop() {
pinMode(led, INPUT);
if(digitalRead(led)==HIGH)
{
i=0;
Mirf.send((byte*)&i);
}
}
برنامه برد دوم که گیرنده هست رو این طور نوشتم:
#include <SPI.h>
#include <Mirf.h>
#include <NRF24L01.h>
#include <MirfHardwarespiDriver.h>
int led = 14;
int i;
void setup() {
pinMode(led, OUTPUT);
Serial.begin(9600);
Mirf.spi=&MirfHardwareSpi;
Mirf.init();
Mirf.setRADDR((byte*)"clie1");
Mirf.setTADDR((byte*)"clie2");
Mirf.payload=sizeof(unsigned long);
Mirf.config();
byte rf_setup=0;
Mirf.readRegister(RF_SETUP , &rf_setup,sizeof(rf_setup));
if(rf_setup!=0)
Serial.println("beginning");
else
{Serial.println("no signal");
while(rf_setup=0);}
delay(1000);
}
void loop() {
while(!Mirf.dataReady())
{
Mirf.getData((byte *) &i);
digitalWrite(led, HIGH);
}
}
اما هیچ جوابی نمیگیرم . به محض اتصال برد دوم به تغذیه LED متصل به پایه 14 برد دوم روشن میشه و روشن میمونه
اگه کسی در این مورد میدونه لطفا بگه من چه کار کنم؟؟؟؟؟؟؟؟؟؟:confused:
دوستان من هم به مشکلی شبیه به دوستمون برخودم که اطلاعات چهار بایتی دریافت میشن
با توجه به اینکه طول داده را در هر دو برد 16 تعریف کردم ولی در سمت گیرنده اطلاعات به اندازه ه چها بایت اول داده ارسالی دریافت و به اندازه ی طول داده ی ارسالی؛اون چهار بایت اول کپی میشن در ارایه ی دریافتی
مثلا اگه ارسال کنم: "mohammad"
این دریافت میشه: "mohamoha"
دوست من شما هم به فروم nrf سر بزنید و از اون کداستفاده کنید
من عینا از کد اول فروم استفاده کردم:( ولی
وظیفه هر پایه ماژول چیه و باید به کجا ول بشه؟
دوسن من این ماژول ها 3.3 هستند شما که به 5 وصل نکردید انشاءالله
سلام دوستان
من میخام از دوتا برد pro mini و دوتا گیرنده فرستنده nrfاستفاده کنم
میشه کمک کنید پایه های ce ,csn به کدوم پین بردم باید وصل کنم
خیلی احتیاجمه لطفا کمک کنید مرسی