Современная электроника №1/2020

ИНЖЕНЕРНЫЕ РЕШЕНИЯ 66 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 1 2020 устройство работает в режиме «Ин- тервал 1», в данном разряде инди- цируется «1», при работе в режиме «Интервал 2» индицируется «2», при работе в режиме «Интервал 3» ин- дицируется «3»; − разряд 2 отображает пробел; − разряды 3…7 показывают в часах и минутах (значения разделены сим- волом «:») начало интервала в ото- бражаемом режиме работы устрой- ства; − разряд 8 отображает пробел; − разряды 9…13 отображают в ча- сах и минутах (значения разделе- ны символом «:») конец интерва- ла в отображаемом режиме рабо- ты устройства; − разряд 14 отображает пробел; − разряд 15 отображает флаг RAZ, разрешающий включение нагру- зок во всех запрограммированных интервалах; − разряд 16 отображает курсор (во всех режимах сразу после подачи напряжения питания). После подачи питания устройство переходит в режим «Интервал 1». В первом разряде второй строки дис- плея индицируется «1». Только в дан- ном режиме можно устанавливать или корректировать текущее время. Для этого необходимо кнопками S3 или S4 подвести курсор к изменяемым разря- дам текущего времени и кнопкой S2 изменить значение разряда. Для уста- новки начального и конечного зна- чений интервалов необходимо про- делать аналогичные операции. Теку- щее время и флаг RAZ отображаются во всех режимах. Для программирова- ния подключаемых нагрузок необхо- димо подвести курсор к нужному раз- ряду и кнопкой S2 изменить его зна- чение. Каждое нажатие кнопки S2 в данном случае инвертирует преды- дущее состояние разряда. После пода- чи питания при инициализации в раз- ряды 10…15 первой строки заносится «1» (нагрузки отключены). Для разре- шения управления нагрузками необ- ходимо флаг RAZ (отображаемый в 15-м разряде второй строки на дис- плее индикатора) установить в едини- цу. Для этого кнопками S3 или S4 сле- дует подвести курсор к данному раз- ряду и кнопкой S2 установить нужное значение. Каждое нажатие кнопки S2 в этом случае инвертирует предыду- щее состояние данного разряда. Изме- нение режима работы (перебор про- граммируемых интервалов времени), как уже упоминалось ранее, осущест- вляется кнопкой S1. Таким образом, устанавливая пока- зания каждого разряда индикатора, можно оперативно выставить требуе- мое текущее время, границы интерва- лов и каналы управления нагрузками в данных интервалах. Изменить флаг RAZ можно только в режиме «Интервал 1». Границы интервалов можно пере- программировать. В приведённом на рисунке 2 примере дисплей индика- тора отображает текущее время 12 ч 43 мин. 56 с, в режиме работы «Интер- вал 3» запрограммировано включение нагрузок 3, 4. Однако нагрузки вклю- чены не будут, поскольку флаг RAZ не установлен. Пьезоэлектрический излучатель ВА1 включается с вывода 7 микроконтрол- лера DD3. Сигнал с выхода 3 микро- контроллера DD3 через резистор R4 с периодичностью 1 с включает свето- вую полосу HL1 в соответствии с алго- ритмом работы устройства. С порта РВ микроконтроллер DD3 управляет ЖК-индикатором HG1 и клавиатурой (кнопки S1…S5) через регистр DD1. Для функционирования клавиатуры также задействован вывод 6 микроконтрол- лера DD3. Резистор R4 – токоограни- чительный для световой полосы HL1. Питающее напряжение поступает на плату реле с соединителя Х5. Конден- саторы С4…С6 отфильтровывают пуль- сации в цепи питания +5 В. ЖК-индикатор HG1 работает в режи- ме 4-разрядной шины данных. Для передачи данных в ЖК-индикатор HG1 задействована старшая тетрада байта, пересылаемого микроконтроллером в порт РВ1. С вывода 8 микроконтрол- лера DD1 поступает сигнал, инфор- мирующий индикатор о типе переда- ваемых данных (RS=1 – данные, RS=0 – сигнал). С вывода 9 микроконтроллера DD3 поступает строб-сигнал, по пере- паду которого из 1 в 0 осуществляет- ся запись данных в индикатор. В чте- нии данных из индикатора необхо- димость отсутствует, поэтому вывод 5 (R/W) подключён к общему прово- днику. С переменного резистора R3 на вывод 3 индикатора поступает напря- жение, уровень которого регулирует контраст формируемого индикато- ром изображения. В двухстрочном дис- плее курсор автоматически сдвигается с первой на вторую строку после дости- жения 40-го знакоместа. Если дисплей содержит в строке 16 символов, то для перехода на вторую строку необходимо снова устанавливать адрес ячейки виде- опамяти индикатора (DD RAM). Систе- ма команд индикатора HG1 приведена в таблице. Подробное описание инструкций, а также таблицу знакогенератора индикатора можно найти в интерне- те или в каталогах фирмы-производи- теля. Следует отметить, что подобные индикаторы со встроенным микро- контроллером – очень гибкие изделия, позволяющие оптимизировать схемо- технический узел базовый микрокон- троллер – индикатор и организовы- вать различные режимы ввода в него информации. Вывод информации из базового микроконтроллера в индика- тор легко оформить в виде процеду- ры. Как видно из схемы, для подклю- чения индикатора задействовано 6 линий порта Р1. Программное обеспечение микро- контроллера полностью обеспечива- ет реализацию алгоритма работы элек- тронных часов. Задача «часовой части» программы – формирование точных временны ′ х интервалов длительно- стью 1 с – решена с помощью преры- ваний от таймера Т/C1 и счётчика на регистре R25 (sek1), который подсчи- тывает количество прерываний. Когда оно достигает определённого значения, текущее время увеличивается на 1 с. В памяти данных микроконтроллера по Система команд индикатора HG1 Инструкция Код Время исполнения, мкс RS R/W DB7 DB6 DB5 DB4 DB3 DB2 DB1 DB0 Очистка дисплея 0 0 0 0 0 0 0 – 0 0 82–1640 Возврат в начало 0 0 0 0 0 0 0 0 1 * 40–1640 Установка режима ввода 0 0 0 0 0 0 0 1 I/D S 40 Дисплей включить/ выключить 0 0 0 0 0 0 1 D С B 40 Сдвиг курсора и дисплея 0 0 0 0 0 1 S/C R/L * * 40 Установка функций 0 0 0 0 1 DL N F * * 40 Установка адреса GG RAM 0 0 0 1 Acg 40 Чтение флага BF и счётчика AC 0 1 BF AC 1 Запись данных GG или DD RAM 1 0 Записываемые данные 40 Чтение данных GG или DD RAM 1 1 Читаемые данные 40 Примечание: * – безразличное состояние.

RkJQdWJsaXNoZXIy MTQ4NjUy