Arama butonu
Bu konudaki kullanıcılar: 1 misafir
3
Cevap
716
Tıklama
0
Öne Çıkarma
Arduino IR sensör algılayıcı kod hatası
K
10 yıl
Çavuş
Konu Sahibi

Arkadaşlar merhaba,

Ders projesi olarak bir Arduino ile kontrol edilen IR sensör alıcılarının olduğu bir devre kurdum. Devreyi kısaca özetlemek gerekirse 2 adet sensör IR LED'den sürekli olarak sinyal alıyor. Herhangi bir cisim bu LED ile IR sensör arasına girdiğinde sinyal kesiliyor ve Arduino'ya sinyal gidiyor. Arduino "0" sinyali aldığında bağlantı kesilmemiş (gol yok) durumda "1" sinyali aldığında ise bağlantı kesilmiş (gol oldu) durumda oluyor. Arduino'dan bu sinyal işlenip 2x16 LCD displayde skor tutuluyor.

Devre sorunsuz çalışıyor ancak Arduino ya attığım kod ile LCD ekranda skoru tutamıyorum. Bir sensörden algılıyor ancak diğerinde sapıtıyor. Yazdığım kod herhangi bir hata vermeden Arduino'ya yükleniyor. Kodu aşağıda paylaşıyorum. Eğer sorunu görebilen ve yardımcı olabilecek birileri varsa çok sevinirim. Şimdiden teşekkürler.

Sinyal gelen pinler 6 ve 7.

KOD:


#include <LiquidCrystal.h>

#define irSensorPin1 7
#define irSensorPin2 6

int score1 = 0 ;
int score2 = 0 ;


// Orjinal LCD Ornegindeki kısım bu sekilde degistirilmeli:
LiquidCrystal lcd(13, 12, 11, 10, 9, 8);



void setup(){
pinMode(irSensorPin1, INPUT);
pinMode(irSensorPin2, INPUT);
Serial.begin(9600);
lcd.begin(16, 2);

}

void loop(){

lcd.setCursor(0,0);
lcd.print("TEAM 1 = ");
lcd.print( score1);
lcd.setCursor(0,1);
lcd.print("TEAM 2 = ");
lcd.print(score2);
if ( digitalRead(irSensorPin1) == 1 ){
score1 = score1 +1 ;
}
delay(500);
if ( digitalRead(irSensorPin2) == 1 ){
score2 = score2 +1;
}
delay(500);
Serial.println(digitalRead(irSensorPin2));
}