Potřebuji generovat přerušení každou 1ms F_CPU/Početet_přerusení_za_sekundu/předdělička 1Mhz/1000/8=125
V datasheetu je naspáno, že PRITM0 musí mít nastaveno 0 pro chod časovače0
nastavil sejm Timer 0 na CTC módu
nastavil počáteční hodnotu
maximální honotu při jejímž přetečení dojde k přerušení
povolil přetečení
a nastavil předděličku
Ale žádné přerušení se nekoná, myslím si, že chybu budu mít nejspíš v nastavení to módu CTC, ale když píšou že to ma být v bitu TCCR0A, tak jse to tam dal.
Nemáte tušení, co jsem udělal špatně?
Kód: Vybrať všetko
ISR(TIMER0_COMPA_vect){
//
}
int main(void)
{
//TIMER0
PRR &= ~(1 << PRTIM0);//PRTIM0 = 0, enable Timer0
TCCR0A |= (1<<CTC0) ;// set Timer0 on CTC mode
TCNT0 =0; // start value
OCR0A = 124; // top value for overflow
TIMSK0 |= (1<<TOIE0); // overflow interput enable
TCCR0A |= (1<<CS01); // prescaler 8
sei();
while(1){
//
}