Частотомер


Частотомер - часть 3


Это время в зависимости от частоты выбранного кварцевого резонатора подбирается предварительной установкой регистров таймера TMR1.

В последующих циклах отработки паузы постоянно проверяется состояние флага счета. Как только флаг счета станет равным нулю, что говорит о прекращении времени измерения, начинается процесс извлечения значения предделителя таймера TMR0 (досчитывание, рис. 1.3). Дело в том, что непосредственная запись и считывание значения предделителя невозможно, но легко реализуется программно. Для этого на вход RA4 с выхода RA5 подаются импульсы, которые сформированы программно. При каждом импульсе значение предделителя увеличивается на единицу и одновременно с этим увеличивается значение младшего регистра счета L_B. Предварительно младший регистр  счета обнуляется. Значение таймера TMR0 непосредственно переписывается в старший регистр счета H_B. После каждого сформированного программно импульса на предделитель проверяется изменение значения таймера. Если значение таймера изменилось, то досчитывание заканчивается. Таким образом осуществляется досчитывание значений предделителя до нуля, тем самым определяется значение предделителя, которое было после окончания прохождения измеряемых импульсов. Значение предделителя будет равно инвертированному значению младшего регистра счета L_B.

Программа переходит к перекодировке 32 разрядов двоичного числа в 9 разрядов двоично–десятичного числа. Девять разрядов для индикации не используются, но желательны для правильного отображения старшего разряда в режиме времени измерения 10 секунд. Например, если в режиме измерения 1 секунда три старших разряда будут равны 278, то в режиме 10 секунд двойка уйдет за пределы индикатора, а число 78 будет высвечиваться в старших разрядах индикатора. Таким образом можно точнее определить значение измеряемой частоты.

После окончания перекодировки сбрасываются все флаги. На время досчитывания запрещаются прерывания по переполнению таймера TMR1, а после окончания досчитывания выполняется новая установка регистров таймера, и разрешаются прерывания.


Начало  Назад  Вперед



Книжный магазин