Program nie działa jak należy. Dioda świeci stale zamiast migać. Nie mogę znaleźć przyczyny dlaczego.
Częstotliwość taktowania procka(atmega32) 1MHz.
Kod: Zaznacz cały
#include <avr/io.h>
#include <avr/interrupt.h>
int main(void)
{
DDRD = 0xFF;
PORTD = (1<<PD4); //led
//ustawienie timera
TCCR1B |= (1<<WGM12); //tryb ctc
TCCR1B |= (1<<CS12)|(1<<CS10); // preskaler 1024
OCR1B = 1953; //rejestr porównawczy compare match
TIMSK |= (1<<OCIE1B); //zezwolenie na przerwanie
sei();
while(1);
}
ISR(TIMER1_COMPB_vect)
{
PORTD ^= (1<<PD4);
}