#include <LiquidCrystal.h>
int z = 0;
LiquidCrystal lcd(7, 6, 5, 4, 3, 2);
void setup(){
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("Time:00 L1 L2 L3");
lcd.setCursor(9, 1);
lcd.print("0 0 0");
DDRB = 0x0F;
DDRC = 0x00;
PORTC |= 0x01;
PORTB = 0x00;
TCNT2 = 56;
TCCR2A = 0x00; //normal mode
TCCR2B = 2; //หาร 8 clk = 2 MHz Time period = 0.5 uS
TIMSK2 = 0x00; //TOIE2 = 1
sei();
}
void loop(){
if((PINC&0x01)==0){
while((PINC&0x01)==0){}
TIMSK2 = 0x01;
}
}
int k = 0,a=0;
ISR(TIMER2_OVF_vect){
if(k<10000) k+=1;
else {
k=0;a++;
lcd.setCursor(6, 0);
lcd.print(a);
if(a>9){
lcd.setCursor(5, 0);
lcd.print(a);
lcd.setCursor(7, 0);
lcd.print(" ");
}
if(a==5){
PORTB |= 0x01;
lcd.setCursor(9, 1);
lcd.print("1");
}
else if(a==10){
PORTB |= 0x02;
lcd.setCursor(12, 1);
lcd.print("1");
}
else if(a==15){
PORTB |= 0x04;
lcd.setCursor(15, 1);
lcd.print("1");
}
}
TCNT2 = 56;
}