Проектирование абонентского вызывного устройства ведомственной системы персонального радиовызова на основе микроконтроллера КР1830ВЕ51, страница 6

Через порт Р1 формируется аппаратным способом адресный код пейджера.

С помощью внешнего тактового генератора осуществляется синхронизация микроконтроллера импульсами с частотой 4 МГц, поступающими на вход XTAL1.

На входе /ЕА=0, что блокирует доступ к внутреннему ПЗУ микроконтроллера и разрешает генерирование управляющих стробов /PSEN, необходимых в работе с внешней памятью программ.

Как внешняя память для программ микроконтроллера используется микросхема К573РФ5 (DD3) емкостью - 2 Кбайта, представляющая собой перепрограммируемое ПЗУ (EPROM) со стиранием ультрафиолетовым излучением и записью электрическими сигналами. Она находится в режиме чтения 8-разрядного кода из ячейки с адресом, установленным на входах А10 … А0. При подаче управляющего строба на вход /OE осуществляется чтение из памяти. Прочитанный код с выходов микросхемы DD3 с третьим состоянием поступает на мультиплексированную шину адрес/данные,  которая подключена к порту Р0 микроконтроллера.

Во всех машинных циклах чтения ПЗУ микросхема 561ИР6 (DD2) используется для хранения младшего байта адреса (А7 … А0). Эта микросхема представляет собой 8-разрядный регистр КМОП с большими функциональными возможностями. Он содержит два канала параллельного обмена (DA и DB), каждый из которых может быть входным, а другой - выходным. Возможен также режим последовательного ввода/вывода. Требуемый режим работы устанавливается путем подачи низкого или высокого логических уровней на управляющие выходы A/S, P/S, AE, A/B. При включении регистра DD2 по схеме рис. 6 (A/S = 0, P/S = 0, AE =1, A/B = 1) обеспечивается параллельный синхронный ввод адреса с магистрали МП-системы (из порта Р0). Он поступает на канал DA, который фиксируется в регистре по спаду импульса ALE, поступающего на тактовый вход С, записанный младший байт адреса через канал OB из регистра выдается на адресные входы ПЗУ.

Снятие напряжения питания на ПЗУ в выключенном пейджере осуществляется выключателем SA, а кнопки SB1, SB2, SB3 предназначены для управления функциями устройства.

Когда замыкается кнопка SB1, на резисторе R3 формируется импульс высокого уровня, который поступает на вход RST общего сброса микроконтроллера. Постоянная времени дифференцирующей цепи C3R3 подбирается такой, чтобы сигнал высокого логического уровня на входе RST удерживался бы не менее двух машинных циклов (24 периода кварцевого резонатора).

При выключении пейджера, т.е. общем сбросе микроконтроллера, флаги IT0 и IT1 регистра TCON, которые управляют типом входов /INTO и /INT1, обнуляются. Тем самым программируется динамический по срезу (по переходу из 1 в 0) тип входов /INTO и /INT1. При замыкании кнопок SB2 и SB3 формируются импульсы низкого уровня, по срезу которых осуществляются прерывания. Продолжительности импульсов прерываний определяются постоянными времени C2R2 и C1R1. Логические элементы DD4.1 - DD4.3 объединены в логическую схему для формирования сигналов, поступающих на узел пьезоэлектрического излучателя. На пьезоизлучатель поступают импульсы с частотой индикации (Fинд = 4096 Гц), если Р3.5 = 1, или импульсы с частотой Fвыз, если Р3.6 = 1.

Пьезоэлектрический излучатель НА (пьезоэлемент с акустическим резонатором типа ЗП-1) подключается к выходу логической схемы через буферные элементы DD5.1 и DD5.2, которые обладают повышенной нагрузочной способностью. При включении элемента HA между выходами элементов DD5.1 и DD5.2 буде обеспечиваться наибольшая громкость на частотах Fинд и Fвыз.

К линии Р3.7 микроконтроллера подключается светодиодный излучатель HL для формирования светового сигнала вызова.


  1. Алгоритм управляющей программы вызывного устройства и его описание

Общий алгоритм работы абонентского устройства приведен на рис.7. В своем исходном состоянии (пейджер выключен) микроконтроллер находится в режиме останова с пониженной мощностью (PD = 1), выход из которого возможен только путем общего сброса.

В выключенном состоянии флаг режима хранит значение FR = 0, поэтому при сбросе (первое нажатие кнопки ''ВКЛ'') после задания адреса стека и разрешения прерываний по входам /INT0 и /INT1 по флагу FR = 0 устанавливается режим просмотра таблицы сигналов вызова. Первым будет прочитано сообщение (номер сигнала вызова), хранящееся по адресу 60h. По каждому сообщению вычисляется адрес соответствующей ему подпрограммы формирования, осуществляется формирование сигналов и их выдача.

            Переход к следующему в списке сообщению осуществляется путем прерывания /INT1 (нажатие кнопки ''ПРИН'') при флаге FR = 0. После просмотра последнего сообщения из таблицы вызовов происходит переход к ее начальному адресу (зацикливание).

Выход из режима просмотра осуществляется по прерыванию /INT0 (нажатие кнопки ''ВЫКЛ'') при флаге FR = 0, при этом создается условие для последующего перехода в режим приема сообщений или для перехода в режим останова (устанавливается флаг режима FR = 1) и определяются нужным образом линии порта Р3 (линии вывода сигналов вызова и индикации). Последнее необходимо, потому, что при прерывании /INT0 (в случайное время) программа формирования и вывода сигналов вызова может быть прервана в точке, когда эти линии находятся в состояниях, не соответствующих режиму просмотра таблицы вызовов. Далее микроконтроллер переходит в режим холостого хода (ожидание включения режима приема сообщений или выключения пейджера) посредством установки флага IDL = 1.

Повторное нажатие кнопки ''ВЫКЛ'' приводит к выключению пейджера по прерыванию /INT0 при состоянии флага FR = 1. До включения режима микропотребления сбрасывается флаг режима, выводится звуковая посылка длительностью 0,5 с (индикация выключения пейджера), а в таблицу списка вызовов заносится код-маркер окончания сеанса работы пейджера (при просмотре таблицы вызовов коду окончания сеанса работы пейджера соответствует непрерывная звуковая посылка с частотой Fинд), выдается сигнал выключения питания ВЧ-тракта.