Atmega16 16 Mhz
Делаю таймер с коэффициентом деления 1024 16 000 000 / 1024 = 15625
Далее делаю прерывания по совпадению и сраниваюс 312. 15625 / 312 =50 Это 50 раз в секунду получается
Но sec не увеличиваться =(
Код: Выделить всё
void init_cnt2(void)
{
cnt2step=0;
TIMSK=(1<<OCIE1A);
TCNT1=0;
OCR1A=312;
TCCR1A=(1<<WGM12);
TCCR1B=(1<<CS12)|(1<<CS10);
}
ISR(TIMER1_COMPA_vect){
cnt2step++;
if (cnt2step>50)
{
cnt2step=0;
sec++;
}
}
в
int main(void)
{
...
init_cnt2();
sei();
...
Что делаю не так??? или что то забыл ?


