tl_up je pak samotné tlačítko-???myslím si dobře že to brání ke startu if hned od začátku co je tlačítko zmáčknuto...
Kód: Vybrat vše
void changeMenu() {
if (!digitalRead(tlUp)) t_tlUp = 1;
if (!digitalRead(tlDown)) t_tlDown = 1;
if (digitalRead(tlUp) && t_tlUp) {
t_tlUp = 0;
lcd.clear();
menu++;
if (menu > pocetmenumax) menu = 1;
}
if (digitalRead(tlDown) && t_tlDown) {
t_tlDown = 0;
lcd.clear();
menu--;
if (menu < pocetmenumin)menu = 4;
}
}
čekám na zmáčknutí tlačítka pro přepnutí menu ,ale když ho trefím v nésprávný čas ,než se mi zmeří teplota tak se nic neděje....
Kód: Vybrat vše
void menu3() {
lcd.setCursor(0, 0);
lcd.print("Teplota :");
int rawvolts = analogRead(analog0);
float volts = rawvolts/205.0;
float tempCelsius = 100.0 * volts -52;
lcd.setCursor(0,1);
lcd.print(tempCelsius);
lcd.setCursor(6,1);
lcd.print("C");
delay(250);
lcd.clear();
}
Kód: Vybrat vše
void loop() {
changeMenu();
dispMenu();
}
//fce meni menu,flagy asi brani o5tovnemu spustenivcyklu
void changeMenu() {
if (!digitalRead(tlUp)) t_tlUp = 1;
if (!digitalRead(tlDown)) t_tlDown = 1;
if (digitalRead(tlUp) && t_tlUp) {
t_tlUp = 0;
lcd.clear();
menu++;
if (menu > pocetmenumax) menu = 1;
}
if (digitalRead(tlDown) && t_tlDown) {
t_tlDown = 0;
lcd.clear();
menu--;
if (menu < pocetmenumin)menu = 4;
}
}
//tady probiha prepinani
void dispMenu() {
switch (menu) {
case 1:
menu1();
break;
case 2:
menu2();
break;
case 3:
menu3();
break;
case 4:
menu4();
break;
}