19-06-2020, 18:27
Hej wszystkim,
próbuję zrobić swój pierwszy "projekt" z arduino uno.
Całość ma działać tak, że każde wciśnięcie wyłącznika krańcowego dodaje +1 do licznika a osobny przycisk zeruje licznik.
Problem w tym, że w obecnej sytuacji żeby wyzerować licznik muszę przytrzymać przycisk zerowania oraz krańcówkę.
Proszę o podpowiedź co trzeba zmienić.
Pin 5 to przycisk do zerowania, Pin 4 to krańcówka
Kod:
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
double licznik =0;
void setup() {
lcd.begin(16, 2);
lcd.print("Licznik wody:");
pinMode(5, INPUT_PULLUP);
pinMode(4, INPUT_PULLUP);
}
void loop() {
if (digitalRead (5) == LOW) {(licznik = 0);}
if (digitalRead (4) == HIGH) {(licznik = licznik+ 1);}
lcd.setCursor(0, 1);
while (digitalRead (4) ==HIGH) {
delay(100);}
lcd.print(licznik * 0.0313);
lcd.setCursor(8, 6);
lcd.print("m3");
}
próbuję zrobić swój pierwszy "projekt" z arduino uno.
Całość ma działać tak, że każde wciśnięcie wyłącznika krańcowego dodaje +1 do licznika a osobny przycisk zeruje licznik.
Problem w tym, że w obecnej sytuacji żeby wyzerować licznik muszę przytrzymać przycisk zerowania oraz krańcówkę.
Proszę o podpowiedź co trzeba zmienić.
Pin 5 to przycisk do zerowania, Pin 4 to krańcówka
Kod:
#include <LiquidCrystal.h>
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
double licznik =0;
void setup() {
lcd.begin(16, 2);
lcd.print("Licznik wody:");
pinMode(5, INPUT_PULLUP);
pinMode(4, INPUT_PULLUP);
}
void loop() {
if (digitalRead (5) == LOW) {(licznik = 0);}
if (digitalRead (4) == HIGH) {(licznik = licznik+ 1);}
lcd.setCursor(0, 1);
while (digitalRead (4) ==HIGH) {
delay(100);}
lcd.print(licznik * 0.0313);
lcd.setCursor(8, 6);
lcd.print("m3");
}