Zembla
Hectopat
- Katılım
- 25 Temmuz 2020
- Mesajlar
- 620
- Çözümler
- 13
Arkadaşlar merhaba.
Altta attığım kodda görebileceğiniz üzere 3 numaralı Pin'e bağlı LED'i yakıyorum. Burada problem yok LED yanıyor. Millis fonksiyonu ile belirlediğim sürede If'de çalışıyor içindeki Serial.println() millis'in süresini yazdırıyor. Fakat if'in içerisine girmesine rağmen "digitalWrite(3, LOW);" komutu led'i söndürmüyor. Amacım zaten arduino başladığı andan itibaren yanan led'i belli aralıklarla söndürüp yakmak ama led sönmüyor. Nasıl çözebilirim?
Altta attığım kodda görebileceğiniz üzere 3 numaralı Pin'e bağlı LED'i yakıyorum. Burada problem yok LED yanıyor. Millis fonksiyonu ile belirlediğim sürede If'de çalışıyor içindeki Serial.println() millis'in süresini yazdırıyor. Fakat if'in içerisine girmesine rağmen "digitalWrite(3, LOW);" komutu led'i söndürmüyor. Amacım zaten arduino başladığı andan itibaren yanan led'i belli aralıklarla söndürüp yakmak ama led sönmüyor. Nasıl çözebilirim?
C++:
unsigned long simdikiZaman,oncekiZaman=0;
void setup()
{
Serial.begin(9600);
pinMode(3, OUTPUT);//3 numaralı pin'den çıkışı alıyorum
}
void loop()
{
simdikiZaman = millis(); //millis bilgilerini simdikiZaman adlı değişkene aktarıyorum.
digitalWrite(3, HIGH); // 3 numaralı pin'e bağlı led'i burada yakıyorum.
if(simdikiZaman-oncekiZaman>=1000){ // millis sayacı 1000'e eşit veya büyük olduğunda if çalışıyor.
Serial.println(simdikiZaman); //simdikiZaman değişkenindeki veriler seri monitöre geliyor.
digitalWrite(3, LOW); //Fakat burası çalışmıyor led yanmaya devam ediyor.
//oncekiZaman=simdikiZaman;
}
}
Son düzenleme: