nRF24L01 Remote Control LED


nRF24L01 ile Kablosuz LED Kontrol Devresi


Arduino ile nRF24L01 modülün kullanımı için basit bir uygulama yaptım.




#include  <SPI.h>                     // SPI Arayüzünü dahil ettik.
#include  "RF24.h"                    // RF24 kütüpanelerini dahil ettik.
byte data[1];                         // Göndereceğimiz data değişkenini oluşturduk.
const uint64_t pipe = 0xF0F0F0F0A1LL; // Paralel veri yolu adresleri tanımlamasını yaptık.
RF24 radio(9,10);                     // Modülün CE pinini 9.pin CS pinini de 10.pine bağlayacağımızı belirttik.

void setup(){
 pinMode(3, INPUT_PULLUP);            // Arduino'nun 2.pinini dahili dirençli giriş olarak ayarladık.
 pinMode(5, INPUT_PULLUP);            // Arduino'nun 4.pinini dahili dirençli giriş olarak ayarladık.
 pinMode(7, INPUT_PULLUP);            // Arduino'nun 6.pinini dahili dirençli giriş olarak ayarladık.
 radio.begin();                       // Kablosuz iletişimi başlattık.
 radio.openWritingPipe(pipe);         // Gönderim yapacağımız kanalın ID'sini tanımladık.
}

void loop(){
 if(digitalRead(3)==HIGH || digitalRead(5)==HIGH || digitalRead(7)==HIGH){
  data[0]=0;
 }
 if(digitalRead(3)==LOW){
  data[0]=1;
 }
 if(digitalRead(5)==LOW){
  data[0]=2;
 }
 if(digitalRead(7)==LOW){
  data[0]=3;
 }
 radio.write(data, 1);                 //Sonra da bu mesaj gönderilsin.
}


#include <SPI.h>                       // SPI Arayüzünü dahil ettik.
#include "RF24.h"                      // RF24 kütüpanelerini dahil ettik.
byte data[1];                          // Göndereceğimiz data değişkenini oluşturduk.
boolean var;                           // Bit şeklinde var değişkeninini oluşturduk.
const uint64_t pipe = 0xF0F0F0F0A1LL;  // Paralel veri yolu adresleri tanımlamasını yaptık.
RF24 radio(9,10);                      // Modülün CE pinini 9.pin CS pinini de 10.pine bağlayacağımızı belirttik.

void setup(){
 pinMode(3, OUTPUT);                    // Arduino'nun 2.pinini çıkış olarak ayarladık.
 pinMode(5, OUTPUT);                    // Arduino'nun 4.pinini çıkış olarak ayarladık.
 pinMode(7, OUTPUT);                    // Arduino'nun 6.pinini çıkış olarak ayarladık.
 radio.begin();                         // Kablosuz iletişimi başlattık.
 radio.openReadingPipe(1,pipe);         // Veri alacağımız kanalın ID'sini tanımladık.
 radio.startListening();                
}

void loop(){
 if(radio.available()){
   var = false;
   while(!var){
     var = radio.read(data, 1);   
      if(data[0] == 0){
      digitalWrite(3, LOW);
      digitalWrite(5, LOW);
      digitalWrite(7, LOW);
      }
      if(data[0] == 1){
      digitalWrite(3, HIGH);
      }
      if(data[0] == 2){
      digitalWrite(5, HIGH);
      }
      if(data[0] == 3){
      digitalWrite(7, HIGH);
   }
  }
 }
}
 

10 yorum:

  1. lovely projects in web site

    YanıtlaSil
  2. hi sir, i have to control the robot car project. Where the rear wheels in the form of a dc motor is controlled with flex sensors and front wheels in the form of a servo motor controlled by the accelerometer sensor. Robot controller with a car connected with nrf24l01. if one of the sensors to control I can. but if it combines both to control I can not. Both sensors transmit data simultaneously . dc motors and servo motors confused receive data so that its movement is chaotic. How should I fix this? can you help me.? Can I send my program to you and you see.? Please. My email: rema_adhe@yahoo.com

    YanıtlaSil
  3. Show muito bom !! Saudações do Brasil !!

    YanıtlaSil
  4. hey men...
    When I debug it.It have a error:
    Error here(RX) :
    while(!var){
    var = radio.read(data, 1); //error

    pz help me fix it.Thank

    YanıtlaSil
  5. Your transmitter code does not compile:

    led_remote:21: error: void value not ignored as it ought to be

    var = radio.read(data, 1);

    YanıtlaSil
  6. Hola buenas tardes. esto me gusta y funciona muy bien, seria tan amable decirme como añadir 1 servomotor, es para un camion RC
    Gracias
    Saludos desde España
    Merhaba, iyi günler. Bunu beğendim ve çok iyi çalışıyor, bana 1 servo motor nasıl ekleyeceğimi söylemek çok hoş olurdu, bu bir RC kamyonu için.
    Teşekkür ederim
    İspanya'dan selamlar
    Hello good afternoon. I like this and it works very well, it would be so kind to tell me how to add 1 servomotor, it is for an RC truck
    Thank you
    Greetings from Spain

    YanıtlaSil
  7. merhabalar;
    while ( ! var ) {
    var = radio.read( veri,1) ;

    kısmında 'veri' was not declared in this scope
    kısmınındaki hatayı düzeltemiyorum
    yardımcı olursanız sevinirim

    YanıtlaSil