Tak nevím, tady chodí perfektně.
// Atmega8 8MHz
// Winavr 20100110
volatile uint8_t sek = 0;
volatile uint8_t flag;
char cas[6];
void timerInit( void);
///////////////////////////////////////////////////////////////////////////
int main(void)
{
uart_init();
timerInit();
uart_putc('0');
uart_n(); // new line
sei();
while(1)//loop demos
{
if(flag)
{
itoa(sek ,cas,10);
uart_puts(cas);
uart_n();
flag=0;
}
}
}
///////////////////////////////////////////////////////////////////////////
void timerInit( void)
{
//Nastavení citace/casovace mod 14
TCCR1A = (1<<WGM11);
TCCR1B = (1<<WGM12) | (1<<WGM13) | (1<<CS12); // FCPU/256
TIMSK=0x04; // Timer(s)/Counter(s) Interrupt(s) initialization
ICR1=31250;
}
//-------------------------------------------------------------------------
ISR(TIMER1_OVF_vect)
{
sek++;
flag=1;
}