Arduino "pulseIn" hatası

musa_46

Yeni Üye
Katılım
22 Ağustos 2023
Mesajlar
3
Araba projesinde yarıya geldim aşağıdaki kodlarımda herhangi bi sıkıntı görünmüyor. ancak "pulseIn" hatası alıyorum. kodları ve hata mesajı aşağıdaki gibidir. yardımcı olur musun?

KODLAR
C++:
#include <IRremote.h>
const int ir_kumanda_pini = 2;
const int OUT1 = 5;
const int OUT2 = 6;
const int OUT3 = 7;
const int OUT4 = 8;
const int motor_konrol_1 = 9;
const int motor_konrol_2 = 10;
const int echoPin = 11;
const int trigPin = 12;
int hiz = 150;
IRrecv ir_alicim(ir_kumanda_pini);
decode_results results;
void setup() {
  pinMode(OUT1, OUTPUT);
  pinMode(OUT2, OUTPUT);
  pinMode(OUT3, OUTPUT);
  pinMode(OUT4, OUTPUT);
  pinMode(motor_konrol_1, OUTPUT);
  pinMode(motor_konrol_2, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(trigPin, OUTPUT);
  digitalWrite(motor_konrol_1, LOW);
  digitalWrite(motor_konrol_2, LOW);
  digitalWrite(OUT1, LOW);
  digitalWrite(OUT2, LOW);
  digitalWrite(OUT3, LOW);
  digitalWrite(OUT4, LOW);
  ir_alicim.enableIRIn();
  Serial.begin(9600);
}
void loop() {
  int mesafe = mesafe_olcumu();
  Serial.println("Mesafe: " + String(mesafe) + " cm");
  if (ir_alicim.decode(&results)) {
    switch (results.value) {
      case 16718055:  // İleri
        ileri();
        break;
      case 16730805:  // Geri
        geri();
        break;
      case 16716015:  // Sol
        sola_don();
        break;
      case 16734885:  // Sağ
        saga_don();
        break;
      case 16738455:  // Hız Arttır
        hiz_arttir();
        break;
      case 16756815:  // Hız Azalt
        hiz_azalt();
        break;
      case 16750695:  // Dur
        dur();
        break;
    }
    ir_alicim.resume();
  }
}
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 ileri() {
  digitalWrite(OUT1, HIGH);
  digitalWrite(OUT2, LOW);
  digitalWrite(OUT3, HIGH);
  digitalWrite(OUT4, LOW);
  analogWrite(motor_konrol_1, hiz);
  analogWrite(motor_konrol_2, hiz);
}
void geri() {
  digitalWrite(OUT1, LOW);
  digitalWrite(OUT2, HIGH);
  digitalWrite(OUT3, LOW);
  digitalWrite(OUT4, HIGH);
  analogWrite(motor_konrol_1, hiz);
  analogWrite(motor_konrol_2, hiz);
}
void sola_don() {
  digitalWrite(OUT1, HIGH);
  digitalWrite(OUT2, LOW);
  digitalWrite(OUT3, LOW);
  digitalWrite(OUT4, HIGH);
  analogWrite(motor_konrol_1, hiz);
  analogWrite(motor_konrol_2, hiz);
}
void saga_don() {
  digitalWrite(OUT1, LOW);
  digitalWrite(OUT2, HIGH);
  digitalWrite(OUT3, HIGH);
  digitalWrite(OUT4, LOW);
  analogWrite(motor_konrol_1, hiz);
  analogWrite(motor_konrol_2, hiz);
}
void hiz_arttir() {
  hiz = min(hiz + 10, 255);
}
void hiz_azalt() {
  hiz = max(hiz - 10, 0);
}
void dur() {
  digitalWrite(OUT1, LOW);
  digitalWrite(OUT2, LOW);
  digitalWrite(OUT3, LOW);
  digitalWrite(OUT4, LOW);
  analogWrite(motor_konrol_1, 0);
  analogWrite(motor_konrol_2, 0);
}
HATA MESAJI
C:\Users\MUSAM~1\AppData\Local\Temp\ccA87HU1.ltrans0.ltrans.o: In function `mesafe_olcumu':
C:\Users\Musa M\Documents\Arduino\sketch_aug22a/sketch_aug22a.ino:78: undefined reference to `pulseIn'
collect2.exe: error: ld returned 1 exit status

exit status 1

Compilation error: exit status 1
 
Last edited by a moderator:
çö
Tanımlanmamış fonksiyon 'pulseIn'

Kodların içinde 'pulseIn' diye bir fonksiyon yok diyor. Baktım gerçekten yok. :)
çözümü hakkında yarımcı olur musun yeni düzenlemeyi atayım oradan bakıp,

#include <IRremote.h>

const int ir_kumanda_pini=2;
const int OUT1=5;
const int OUT2=6;
const int OUT3=7;
const int OUT4=8;
const int motor_konrol_1=9;
const int motor_konrol_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 //İleri Gitme
#define asagi_ok 16730805 //GERİ
#define sol_ok 16716015 //SOL
#define sag_ok 16734885 //sağ
#define kare 16756815 //hız azalt
#define yildiz 16738455 // hız arttır
#define tus_sıfır 16750695 // aracı durdur

void setup() {
pinMode (OUT1,OUTPUT);
pinMode (OUT2,OUTPUT);
pinMode (OUT3,OUTPUT);
pinMode (OUT4,OUTPUT);
pinMode (motor_konrol_1,OUTPUT);
pinMode (motor_konrol_2,OUTPUT);
pinMode (echoPin,INPUT);
pinMode (trigPin,OUTPUT);
digitalWrite (motor_konrol_1,LOW);
digitalWrite (motor_konrol_2,LOW);
digitalWrite (OUT1,LOW);
digitalWrite (OUT2,LOW);
digitalWrite (OUT3,LOW);
digitalWrite (OUT4,LOW);
ir_alicim.enableIRIn();
Serial.begin(9600);
}
void loop() {
int mesafe=mesafe_olcumu();
Serial.println(mesafe);
}
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);
}
 
İş yerindeyim. Çok müsait olamıyorum. Başka biri yardımcı olursa sevinirim.

Projeni biraz detaylı anlat, resimlendir. Ne yapmaya çalışıyorsun? Kodları bir yerden aldıysan hiç değiştirmediğin halini koy buraya.
 
aynı kodları başka pc ye kopyaladım hiç değişiklik yapmadan çalıştı :)
Teşekkür ederim.
 
Arduino IDE Versiyon hatası olabilir.

i (I) harfiyle l (L) harfi karışmış olabilir..
 
Hangi kartı kullanıyorsunuz? Arduino IDE mi kullanıyorsunuz? Araçlar menüsünden doğru kartı seçtiğinize emin misiniz?
 

Forum istatistikleri

Konular
5,844
Mesajlar
99,702
Üyeler
2,481
Son üye
rfdog12

Son kaynaklar

Son profil mesajları

gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Back
Top