Arduino kodunun mesafe sensörüne ait olan kısmı nasıl silinir?

546637

Decapat
Katılım
21 Mayıs 2022
Mesajlar
164
Bu kodlardan mesafe sensörü ile alakalı olan kısımları kaldırıp diğer kısımları ona göre düzeltmem lazım.
Ben mesafe sensöründen bağımsız olsun istiyorum.
Kodu aşağıya kısmına bıraktım.

Not: Motor sürücü ile alakalı bazı kodlar eksik fakat montaj sonrası düzelteceğim.
 

Dosya Ekleri

  • KOD.txt
    1,9 KB · Görüntüleme: 47
Kodları bu şekilde atman daha iyi olur.

C:
#include <IRremote.h>
const int ir_kumanda_pini=2;
const int OUT1=8;
const int OUT2=7;
const int OUT3=6;
const int OUT4=5;
const int motor_kontrol_1=9;
const int motor_kontrol_2=10;
const int echoPin=11;
const int trigPin=12;
int hiz=80;
IRrecv ir_alicim(ir_kumanda_pini);
decode_results results;

#define yukari_ok 16718055  //İLERİ GİT:YUKARI OK
#define asagi_ok 16730805   //GERİ GİT:AŞAĞI OK
#define sol_ok 16716015     //SOLA DÖN:SOL OK
#define sag_ok 16734885     //SAĞA DÖN:SAĞ OK
#define kare 16756815       //HIZ AZALT:KARE TUŞU
#define yildiz 16738455     //HIZ ARTTIR:YILDIZ TUŞU
#define ok 16726215         //DURDUR:OK TUŞU

void setup(){
pinMode(OUT1,OUTPUT);
pinMode(OUT2,OUTPUT);
pinMode(OUT3,OUTPUT);
pinMode(OUT4,OUTPUT);
pinMode(motor_kontrol_1,OUTPUT);
pinMode(motor_kontrol_2,OUTPUT);
pinMode(echoPin,INPUT);
pinMode(trigPin,OUTPUT);

digitalWrite(motor_kontrol_1,LOW);
digitalWrite(motor_kontrol_2,LOW);
digitalWrite(OUT1,LOW);
digitalWrite(OUT2,LOW);
digitalWrite(OUT3,LOW);
digitalWrite(OUT4,LOW);

ir_alicim.enableIRIn();
}

void loop(){
int mesafe=mesafe_olcumu();
if(mesafe>40)
{
  if(ir_alicim.decode(&results))
  {
    switch(results.value)
    {
      case kare:
      if(hiz<255)
      hiz+=5; //hiz=hiz+5
      break;

      case yildiz:
      if(hiz>80)
      hiz-=5; //hiz=hiz-5
      break;

      case yukari_ok:
      motor_hareketleri();
    }
  }
}
}

int mesafe_olcumu()
{
 long sure,mesafe;
 digitalWrite(trigPin,LOW);
 delayMicroseconds(2);
 digitalWrite(trigPin,HIGH);
 delayMicroseconds(10);
 digitalWrite(trigPin,LOW);
 sure=pulseIn(echoPin,HIGH);
 mesafe=sure/29.1/2;
 delay(50);
 return(mesafe);
}

void motor_hareketleri(int deger1,int deger2,int deger3,int deger4,int hiz)
{
 digitalWrite(OUT1,deger1);
 digitalWrite(OUT2,deger2);
 digitalWrite(OUT3,deger3);
 digitalWrite(OUT4,deger4);
 analogWrite(motor_kontrol_1,hiz);
 analogWrite(motor_kontrol_2,hiz);
}
 

Technopat Haberler

Geri
Yukarı