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
Kod:
#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?
 

Çevrimiçi üyeler

Forum istatistikleri

Konular
8,318
Mesajlar
136,660
Üyeler
3,296
Son üye
Uğur Subaşı

Son kaynaklar

Son profil mesajları

mechanic ayhanarican mechanic wrote on ayhanarican's profile.
https://www.allmystery.de almanca biliyorsan burada araştır. Yapay zekada çeviriyor gerçi.
Almanların matematik bilgisi daha iyi oluyor.
“Kendi yolunu çizen kişi, kimsenin izinden gitmez.” – Nietzsche
Kim İslâm’da güzel bir çığır açarsa (güzel bir alışkanlık başlatırsa), onun sevabı ve kendisinden sonra ona uyanların sevapları, onların sevaplarından hiçbir şey eksilmeksizin ona da yazılır.
erdemtr55 taydin erdemtr55 wrote on taydin's profile.
Merhaba Taydin bey,
Gruba spms serisi yapıcak mısınız?
ben 3 sargılı toroid ile 2 adet flyback sürücek bir devre yapmayı düşünüyorum.size soracak sorularım vardı?
Mutluluğun resmi illa güzel çizilmiş tablo olmak zorunda değil.Bazen basit bir çizgi,doğru bir renk,yada küçük bir detay
Back
Top