Этот фрагмент кода написан для Atmega8 взято из clapper circuit using Atmega8. Может ли кто-нибудь конвертировать этот фрагмент кода для Atmega16 с небольшим объяснением. Поскольку я пытаюсь реализовать то же самое для Atmega16 и иметь некоторые проблемы с частью таймера.Реализация кода таймера для Atmega8 в Atmega16
#define BURST_TIME 70
#define READY_TIME 150
#define TIME_OUT 300
void timer_init()
{
TIFR |= (1<<TOV0);
//set interrupt on overflow
TIMSK |= (1<<TOIE0);
TCNT0 = 223;
}
ISR (TIMER0_OVF_vect)
{
TCNT0 = 223;
timer++;
if (timer == BURST_TIME)
{
burst = 1;
ready = 0;
} else if (timer == READY_TIME)
{
burst = 0;
ready = 1;
} else if (timer == TIME_OUT)
{
timer = 0;
burst = 0;
ready = 0;
first = 0;
stop_timer();
}
}
void start_timer()
{
TCCR0 |= (1<<CS02);
}
void stop_timer()
{
TCCR0 &= ~(1<<CS02);
}