ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
1034917 Топик полностью
fk0, легенда (09.09.2020 12:29, просмотров: 748) ответил FDA на Вообще-то я нигде не писал про компилятор mikroC. Пользуюсь XC8 последней версии. Просто от mikroE хорошая прога по расчёту коэффициентов. В даташите довольно мутно описан момент с генерацией прерывания по переполнению таймера. По идее оно должно возникать тогда, когда значение таймера достигнет величины PR2. То есть, если я записываю туда 250, то через 250 тактов произойдут два события:
В даташите как раз очевидно написано, мол сброс и тактирование постскалера на следующем такте (Генерал опять нихера Ctrl-V не работает, уже и браузер один у всех и ОС одна, результат -- проблемы с переводами строк, двоятся): 

In normal operation, TMR2 is incremented from 00h on

each clock (FOSC/4). A 4-bit counter/prescaler on the

clock input gives direct input, divide-by-4 and

divide-by-16 prescale options; these are selected by

the prescaler control bits, T2CKPS<1:0> of the T2CON

register. The value of TMR2 is compared to that of the

period register, PR2, on each clock cycle. When the

two values match, the comparator generates a match

signal as the timer output. This signal also resets the

value of TMR2 to 00h on the next cycle and drives the

output counter/postscaler.


И там же формула приведена, для PWM, где везде PR2+1. Из чего я заключаю, что паделка от microe считает правильно. Почему: получается, что таймер считает от 0 до PR2 включительно. Поэтому PR2+1. Когда именно он там drives the postscaler не принципиально.

[ZX]