В приемнике используются два прерывания: по переполнению таймера TMR 0 и от изменения сигналов на входе RB0. При поступлении импульса на вход RB0 сохраняются значения текущих регистров. Далее программа проверяет источник прерывания. Если прерывание произошло не по переполнению таймера, то инкрементируется счетчик импульсов. Производится переустановка таймера(3) ( 256 - 120 = 136) и сброс счетчика предделителя. Программа восстанавливает значения регистров, и продолжается работа по индикации. Таким образом, при поступлении импульсов с входа RB0(4) таймер постоянно переустанавливается. Поэтому невозможно прерывание от переполнения таймера до тех пор, пока на входе присутствуют импульсы.
Если на входе длительное время отсутствуют импульсы, то произойдет прерывание от переполнения таймера. Для надежности работы приемника время от прерывания до прерывания немного уменьшено по сравнению с передатчиком и равно 4,38 мс. Каждое прерывание от переполнения таймера подсчитывается счетчиком прерываний. Пауза между импульсами на каждом выходе передатчика равна 80 прерываниям, поэтому счетчик прерываний на приемнике имеет счет до 80. Если за это время не было входных импульсов, то программа перепишет значения регистров счетчиков импульсов в регистры индикации. Индикация обновится. Это будет, происходит каждые 0,35с.
Расчет характеристик сигналов и каналов связи
На
современном этапе развития перед железнодорожным транспортом стоят задачи по
увеличению пропускной и провозной способности, грузовых и пассажирск ...
Проектирование двухполупериодного выпрямителя и Г-образного индуктивно-емкостного фильтра
Электроника
это наука, которая охватывает не только технику слабых токов, но технику
сильных токов, обычно относящихся к электротехнике, поскольку она опер ...
Ошибки позиционирования GPS-приемников в условиях полярных геомагнитных возмущений
Определение своего положения с помощью GPS навигатора,
отдельного прибора, или устройства, встроенного в карманный компьютер или
сотовый тел ...