top of page

Arduino RC alıcı





alıcı kodları

#include <SPI.h>

#include <nRF24L01.h>

#include <RF24.h>

#include <Servo.h>

Servo myservo;

RF24 radio(8, 7); // burada siz nrfnin ce pinini ve cns pinini nereye bağladıysanız o pinleri yazın

const byte address[6] = "00001";

boolean button_state = 0;



int motor_data;

int motor_rpwm=5;

int motor_lpwm=3;


int servo_data;


int data[6];

void setup()

{


pinMode(motor_rpwm, OUTPUT);

pinMode(motor_lpwm, OUTPUT);

Serial.begin(9600);

myservo.attach(6);

radio.begin();

radio.openReadingPipe(0, address);

radio.setPALevel(RF24_PA_MAX);

radio.startListening();

}




void loop()

{

if (radio.available()){

radio.read(data, sizeof(data)); //Veri okuması

motor_data= map(data[0],0,1023,0,255);// map komutu ile data[1] den 0 ile 1023 arası gelen değeri 0 ile 255 arasına çevirdik

servo_data=map(data[1],0,1023, 0,180);

myservo.write(servo_data);

delay(5);

if(data[2] ==1){

analogWrite(motor_rpwm, 255-motor_data); // analog olarak yazdırma yaptık

analogWrite(motor_lpwm,0);

delay(5);

}

else{

analogWrite(motor_lpwm, 255-motor_data); // analog olarak yazdırma yaptık

analogWrite(motor_rpwm,0);

delay(5);

}


}

else{


analogWrite(motor_lpwm, 0);

analogWrite(motor_rpwm, 0);

}

delay(5);

}





Verici kodları

#include <SPI.h>

#include <nRF24L01.h>

#include <RF24.h>

#include <Servo.h>

Servo myservo;

RF24 radio(8, 7); // burada siz nrfnin ce pinini ve cns pinini nereye bağladıysanız o pinleri yazın

const byte address[6] = "00001";

boolean button_state = 0;



int motor_data;

int motor_rpwm=5;

int motor_lpwm=3;


int servo_data;


int data[6];

void setup()

{


pinMode(motor_rpwm, OUTPUT);

pinMode(motor_lpwm, OUTPUT);

Serial.begin(9600);

myservo.attach(6);

radio.begin();

radio.openReadingPipe(0, address);

radio.setPALevel(RF24_PA_MAX);

radio.startListening();

}




void loop()

{

if (radio.available()){

radio.read(data, sizeof(data)); //Veri okuması

motor_data= map(data[0],0,1023,0,255);// map komutu ile data[1] den 0 ile 1023 arası gelen değeri 0 ile 255 arasına çevirdik

servo_data=map(data[1],0,1023, 0,180);

myservo.write(servo_data);

delay(5);

if(data[2] ==1){

analogWrite(motor_rpwm, 255-motor_data); // analog olarak yazdırma yaptık

analogWrite(motor_lpwm,0);

delay(5);

}

else{

analogWrite(motor_lpwm, 255-motor_data); // analog olarak yazdırma yaptık

analogWrite(motor_rpwm,0);

delay(5);

}


}

else{


analogWrite(motor_lpwm, 0);

analogWrite(motor_rpwm, 0);

}

delay(5);

}

150 görüntüleme0 yorum

Son Yazılar

Hepsini Gör
bottom of page