#include <LiquidCrystal_I2C.h>
int cislo = 0;
bool boolik = true;
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(cislo);
DDRD &= ~(1<<2);
PORTD |= 1<<2;
EIMSK |= 1<<INT0;
SREG |= 1<<7; // povolenie celkovo interruptov
EICRA |= 1<<ISC01; // nastevenie reakcie (rising/falling)
EICRA &= ~(1<<ISC00); // nastevenie reakcie (rising/falling)
DDRD &= ~(1<<3);
PORTD |= 1<<3;
EIMSK |= 1<<INT1; //zapnutie interrupt na porte 2
EICRA |= 1<<ISC11; // nastevenie reakcie (rising/falling)
EICRA &= ~(1<<ISC10); // nastevenie reakcie (rising/falling)
}
void loop() {
if(boolik)
{
gago();
boolik = false;
}
}
ISR(INT1_vect)
{
cislo++;
boolik = true;
}
ISR(INT0_vect)
{
cislo--;
boolik = true;
}
void gago()
{
lcd.setCursor(0,0);
lcd.print(" ");
lcd.setCursor(0,0);
lcd.print(cislo);
}