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); } } } }
lovely projects in web site
YanıtlaSilhi 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ıtlaSilthanks,.. the best
YanıtlaSilShow muito bom !! Saudações do Brasil !!
YanıtlaSilhey men...
YanıtlaSilWhen I debug it.It have a error:
Error here(RX) :
while(!var){
var = radio.read(data, 1); //error
pz help me fix it.Thank
Your transmitter code does not compile:
YanıtlaSilled_remote:21: error: void value not ignored as it ought to be
var = radio.read(data, 1);
ftgty
YanıtlaSilHola buenas tardes. esto me gusta y funciona muy bien, seria tan amable decirme como añadir 1 servomotor, es para un camion RC
YanıtlaSilGracias
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
merhabalar;
YanıtlaSilwhile ( ! 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
RESPUESTA
Sil