2000متر اشتباه است. همون 1800متری بهتر هست
نمایش نسخه قابل چاپ
سلام دوستان
من دو تا ماژول فرستنده nrf خریدم و میخوام با دو تا آردوینو نانو راهشون بندازم. ولی متاسفانه به یه مشکل عجیب خوردم که هر جا میگردم کسی رو پیدا نمی کنم مثل من به این مشکل خورده باشه. من کتابخونه rf24 رو گرفتم و در پوشه کتابخونه ها گذاشتم. حالا تو نرم افزارم می تونم include بکنمش ولی وقتی اینکارو میکنم و میخوام برنامه رو کامپایل کنم بهم کلی ارور میده. خیلی گیج شدم لطفا راهنماییم کنید.
فایل پیوست 1330
دوستان خواهشا راهنمایی کنید. خیلی سردرگم شدم.
اول نسخه 1.6.4 رو نصب کردم. اون کلن هنگ میکرد تو کامپایل کردن. بعد 1.6.3 رو گرفتم و نصب کردم که کلی خطا میده.
برنامه و خطاهایی که میده رو قرار میدم. لطفا اگر ممکنه راهنمایی کنید.
بابا یه جوونمرد پیدا نمیشه به من بگه چرا هر کتابخونه ای که من استفاده میکنم اینقدر خطا میده بهم؟
هر کدی از کدای اینجا رو که من کامپایل میکنم کلی خطا میده
ازکتابخونه mirf استفاده کنید بهتر و راحتتره :cool:
فک کنم مشکل از کتابخونه ادد کردن شماست.
شما پوشه ی کتابخونه را توی my document کپی کنید و یکبار برنامه آردینو را ببندید و باز کنید خودش اتوماتیک میاد توی مثالها!
من الان مثال client کامپایل میکنم اروری نمیده!
سلام دوباره.
یک سوال دیگه برام پیش اومده دوستان. ممنون میشم کمک کنید.
کد زیر رو من برای گیرنده استفاده کردم:
موقع کامپایل کردن به کد زیر گیر میده:کد:/* YourDuinoStarter Example: nRF24L01 Receive Joystick values
- WHAT IT DOES: Receives data from another transceiver with
2 Analog values from a Joystick or 2 Potentiometers
Displays received values on Serial Monitor
- SEE the comments after "//" on each line below
- CONNECTIONS: nRF24L01 Modules See:
http://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo
1 - GND
2 - VCC 3.3V !!! NOT 5V
3 - CE to Arduino pin 9
4 - CSN to Arduino pin 10
5 - SCK to Arduino pin 13
6 - MOSI to Arduino pin 11
7 - MISO to Arduino pin 12
8 - UNUSED
- V1.00 11/26/13
Based on examples at http://www.bajdi.com/
Questions: terry@yourduino.com */
/*-----( Import needed libraries )-----*/
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
/*-----( Declare Constants and Pin Numbers )-----*/
#define CE_PIN 9
#define CSN_PIN 10
// NOTE: the "LL" at the end of the constant is "LongLong" type
const uint64_t pipe = 0xE8E8F0F0E1LL; // Define the transmit pipe
/*-----( Declare objects )-----*/
RF24 radio(CE_PIN, CSN_PIN); // Create a Radio
/*-----( Declare Variables )-----*/
int joystick[2]; // 2 element array holding Joystick readings
void setup() /****** SETUP: RUNS ONCE ******/
{
Serial.begin(9600);
delay(1000);
Serial.println("Nrf24L01 Receiver Starting");
radio.begin();
radio.openReadingPipe(1,pipe);
radio.startListening();;
}//--(end setup )---
void loop() /****** LOOP: RUNS CONSTANTLY ******/
{
if ( radio.available() )
{
// Read the data payload until we've received everything
bool done = false;
while (!done)
{
// Fetch the data payload
done = radio.read( joystick, sizeof(joystick) );
Serial.print("X = ");
Serial.print(joystick[0]);
Serial.print(" Y = ");
Serial.println(joystick[1]);
}
}
else
{
Serial.println("No radio available");
}
}//--(end main loop )---
/*-----( Declare User-written Functions )-----*/
//NONE
//*********( THE END )***********
خطایی که میده اینه:کد:done = radio.read( joystick, sizeof(joystick) );
من تو آموزشایی که تو اینترنت گذاشتن نگاه کردم دیدم همین کد رو بدون مشکل استفاده کردن و همچین خطایی نداشتن. اگر چیزی به ذهنتون میرسه خوشحال میشم بدونم. بازم ممنونکد:
reseiver.ino: In function 'void loop()':
reseiver.ino:59:12: error: void value not ignored as it ought to be
Error compiling.
من یک جفت از این ماژول ها رو راه اندازی کردم ولی مشکل این جاست که ارتباط یک طرفه است. یعنی مثلا برای من فقط میتونم روی 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 به کدوم پین بردم باید وصل کنم
خیلی احتیاجمه لطفا کمک کنید مرسی
سلام
ببخش بردم اگر 5 باشه چطور 3.3 کنم
سلام ممنون از راهنمایی
دو تا سوال
صفحه اول که نوشته شده فقط برای برد uno یعنی پایه های ce , csnبا برد uno یکیه ؟؟
چون دوستمون تو مثالش نوشته 9 و 10؟؟
دوم اینکه میشه مدل رگولاتور و بگید من الکترونیکی نیستم
ممنون از کمکتون
ببینید سیم بندیتون رو دقیقا دقیقا مطابق صفحه اول ببندید.
اینم رگولاتور
ماژول رگولاتور 3.3v - تنظیم کننده ولتاژ Ams1117
سلام ایا پایه های cn,csn برد uno با pro mini یکی هستش؟؟؟
بلی بلی
ببین دست من خودش گفته مثلا مثلا cs رو بزن به پایه 10
تو هم بزن 10 پرو مینی
سلام
من با این ماژول nrf24l01+ میخواستم سرعت موتور براشلس رو کنترل کنم
اساتید و همچنین مهندسان عزیز کمک کنن *"گل*
بعد از این که با انکدر شمردینش با کد لینک زیر بفرستینش:
http://forum.arduino.ir/8/21/144.html
سلام
من از نانو استفاده کردم و چهارتا nrf گرفتم برای کاری که میخواستم انجام بدم.
مشکل اینجاست که تو سه تا از nrf ها تو کامپایل کردن با ارور زیر مواجه میشم، لطفا راهنمایی کنید.
avrdude: ser_open(): can't set com-state for "\\.\COM4"
سلامی دوباره
ببخشید که بد گفتم
دوتا آردواینو که به هرکدوم یه nrf وصل شده، یکی به عنوان فرستنده و یکی به عنوان گیرنده.
مشکل کار اینجاست که تو کامپایل برنامه(همون اولین برنامه ای که تواین تاپیک نوشته شده) ارور دارم ومشکل از برنامه هم احتمالا نیست ،چون تو کامپایل یه nrf ارور نمیده وبدون مشکله.
فکر کردم nrf دومی مشکل داره،واسه همین چندتادیگه هم خریدم. اما بازم نمیشه کامپایل کرد و ارور میده....
avrdude: ser_open(): can't set com-state for "\\.\COM4
ببینید این که کامپایل نشه یا آپلود نشه به سلامت NRFشما ربط چندانی نداره
ببینید روی آردوینو نانوتن کدهای ساده مثل چشمک زن بدون ارور آپلود میشن؟
اگه اره یعنی نانوتون سالمه
قدم بعد تست nrf هست
روی نانو تست شده nrf تست شده رو بزارید ببینید کد آپلود میشه یا نه؟
اگه شد یعنی کل سخت افزار شما سالمه
بله کدهای دیگه مثل چشمک زن راحت آپلود میشن
وحتی یه ماژول nrfهم با هر دوتا آردواینو تست کردم و هم ماژول سالمه و هم دو تا آردواینو ها.
حالا سه تا nrf دارم که نو اند!!!
ولی وقتی برنامه رو کامپایل میکنم ارور دارم
و تا اونجایی که من فهمیدم ارور مربوط به اینه که اصلا پورت کام با اتصال هرکدوم از این سه تا nrf جدید، درست شناسایی نمیشه.
nrf رو جدا کنید بعد آپلود کنید.
ببینید بعد که بهش وصل کنید درست کار میکنه یا نه!
چه عجیب!!
سلام
آیا میشه با این ماژول این کار رو انجام داد
۱: نام ssid رو مطابق میل تعغیر بدیم
۲: توی دستگاه های پرتابل و یا کانکشن وایرلس وقتی روی اسم این ماژول کلیک میکنیم و کانکت رو میزنیم . به طور ******پیشفرض یک صفحه لود بشه ؟
سلام دوستان عزیز
چطور میشه چنتاا برد اردیونو رو ک به هر کدوم یک nrf هستشو شبکه کرد که با هم در ارتباط باشند