|
Merhaba arduino due ile dijital kumbara için bir yazılım var. PWM pinlerinden aldığım çıkışlarda 1. ve 4. pinler düzgün çalışıyor ama diğer pinler kendi kendine değer arttıyor. Neden bilmiyorum. Ne zaman LOW olursa o zaman değeri arttır diyorum ama o pinden jumper veya bir kabloyla çıkış alınca kendi kendine okumaya başlıyor. Kablo sabit kalınca sıkıntı olmuyor. Ne şekilde pinlere ayar yapabilirim? 1. pinle 4. pin normalken diğerleri neden farklı çalışıyor anlamıyorum #include <Wire.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd = LiquidCrystal_I2C(0x27, 16, 2); #define PIN_1_TL 1 #define PIN_50_KR 2 #define PIN_25_KR 3 #define PIN_10_KR 4 bool tl_1; bool kr_50; bool kr_25; bool kr_10; int cnt_1_tl; int cnt_50_kr; int cnt_25_kr; int cnt_10_kr; double total; void setup() { Serial.begin(9600); pinMode(PIN_1_TL, INPUT); pinMode(PIN_50_KR, INPUT); pinMode(PIN_25_KR, INPUT); pinMode(PIN_10_KR, INPUT); lcd.init(); lcd.setBacklight(1); lcd.setCursor(0, 0); lcd.print("Kumbara"); } void loop() { if (digitalRead(PIN_1_TL) == LOW && tl_1) cnt_1_tl++; if (digitalRead(PIN_50_KR) == LOW && kr_50) cnt_50_kr++; if (digitalRead(PIN_25_KR) == LOW && kr_25) cnt_25_kr++; if (digitalRead(PIN_10_KR) == LOW && kr_10) cnt_10_kr++; total = cnt_1_tl + 0.5 * cnt_50_kr + 0.25 * cnt_25_kr + 0.1 * cnt_10_kr; tl_1 = digitalRead(PIN_1_TL) == HIGH; kr_50 = digitalRead(PIN_50_KR) == HIGH; kr_25 = digitalRead(PIN_25_KR) == HIGH; kr_10 = digitalRead(PIN_10_KR) == HIGH; printMoney(); } void printMoney() { lcd.setCursor(0, 1); lcd.print("Para : "); lcd.print(total); lcd.print(" tl "); } |
|
_____________________________
|




Yeni Kayıt

Konudaki Resimler






