#include <Bounce2.h>
#define btnRed 3
#define btnblue 4
#define btnyellow 5
#define tipka4 2
volatile byte stanje = LOW;
int ledPin = 10;
int stevec;
bool zadnjeStanje = HIGH;
unsigned long zadnjiOdboj = 0;
unsigned long zakasnitevOdboja = 300;
Bounce2::Button tipka1, tipka2, tipka3 = Bounce2::Button();
void setup(){
Serial.begin(115200);
pinMode(ledPin, OUTPUT);
tipka1.attach(btnRed, INPUT_PULLUP);
tipka2.attach(btnyellow, INPUT_PULLUP);
tipka3.attach(btnblue, INPUT_PULLUP);
tipka1.interval(10);
tipka2.interval(10);
tipka3.interval(10);
Serial.begin(115200);
}
void loop(){
tipka1.update();
tipka2.update();
tipka3.update();
if (tipka1.pressed()){
stevec++;
Serial.println(stevec);
}
if (tipka2.pressed()){
stevec--;
Serial.println(stevec);
}
if (tipka3.pressed()){
stevec=0;
Serial.println(stevec);
}
int stanje = digitalRead(tipka4);
if(stanje != zadnjeStanje && (millis() - zadnjiOdboj) > zakasnitevOdboja){
zadnjiOdboj = millis();
zadnjeStanje = stanje;
if(zadnjeStanje == HIGH){
stevec++;
Serial.println(stevec);
}
}
digitalWrite(ledPin,stanje);
}
void ISR_tipka(){
delay(100);
stanje = !stanje;
}