Arduino kararlı sayaç. Bir projemde buton ile sayı saydırmam gerekiyordu ve azaltmam. Bilindik yöntemlerde aklımdaki gibi yaptım tabiki kararsız çalıştı. Sonra multimetre ile ölçtüm ki butonda basılı olması bile akım var. Bende 10k direnç ekledim ama yine kararsız. Detaylar konu devamında…
Arduino kararlı sayaç yapımı
Sonra baktım ki olmuyor bunda kontrol gibi bir mekanizma lazım çünkü karttaki işlemci ben butona basıp çekme anımda bile bu işi defalarca yapıp 4 5 sayı atlıyor. Öyle derken böyle derken kontrol mekanizmasını oluşturdum ve işlemi tamamladım. Bende sorunsuz bir şekilde çalıştı. Umarım işinize yarar ben kombi termostatı yapımında kullandım. Küçük bir video görebilirsiniz konu sonunda.
const int buton = 7; // artırma butonu const int buton_2= 4; //azaltma butonu int sayac = 0; // sayımızı tutacak değişken int butonDurumu = 0; // ilk butonu sıfırlıyoruz basılı olarak görünce 1 olacak int sondurum = 0; // butonu tekrar sıfırlıcaz ki saymasın bi daha int butonDurumu_2 = 0; //bunlarda ikinci buton için aynı şeyler int sondurum_2 = 0; void setup() { pinMode(buton, INPUT); pinMode(buton_2, INPUT); Serial. begin(9600); } void loop() { butonDurumu = digitalRead(buton); butonDurumu_2 = digitalRead(buton_2); if (butonDurumu != sondurum) { if (butonDurumu == HIGH) { sayac++; Serial.println(sayac); } delay(50); } if (butonDurumu_2 != sondurum_2) { if (butonDurumu_2 == HIGH) { sayac--; Serial.println(sayac); } delay(50); } sondurum = butonDurumu; sondurum_2 = butonDurumu_2; }
Video: