Таким образом, расчетный интервал между
прерываниями от таймера, равный 50 мс, складывается из величин t зад, t загр и
времени счета таймера - t сч. С учетом того, что длительность машинного цикла равна
12 тактам генератора,получим для минимальной величины t зад:
50000 мкс = [ 3,66667 + 12 + (65536 - К пересч)] * 1,08509.
Отсюда К пересч = 19472 (4C10h). Для
максимальной величины задержки получим К пересч = 19473 (4C11h). Выберем
первую величину как константу пересчета, загружаемую в таймер T/C0. Абсолютная погрешность
периода прерываний от таймера составит 1 мкс.
Если программные счетчики после момента времени t1 оказываются
равными нулю, то в программе обработки прерывания от таймера происходит переход к опросу
параметра. Легко видеть, что момент начала опроса - t3 всегда сдвинут относительно t1 на
величину t2-t1, определяемую временем выполнения команд до входа в подпрограмму, плюс величину
t3-t2, определяемую временем от начала подпрограммы до момента запуска АЦП.
Все указанные величины всегда имеют одну и ту же длительность.
Поэтому погрешность периода опроса параметра всегда будет определяться только величиной
константы Т, а именно 20 * Т * 1 мкс. При максимальной величине Т, равной
60 с, абсолютная погрешность периода опроса составит 1,2 мс, а относительная - 0,002%. |
|
|