Современная электроника №9/2025
ИНЖЕНЕРНЫЕ РЕШЕНИЯ 46 WWW.CTA.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА • № 9 / 2025 Представляемые часы на микроконтроллере AT89C4051 предназначены для контроля времени в шести часовых поясах. Кроме того, в устройстве имеется функция измерения температуры. Сергей Шишкин Представляемые часы (далее устрой- ство) на микроконтроллере АТ89С4051 для контроля времени вшести часовых поясах включают в себя семь состав- ных частей: плату клавиатуры и шесть электронных часов№1…№6. Электрон- ные часы№1…№6идентичныпо схеме, конструкцииипрограммному обеспече- нию. Принципиальная схема электрон- ных часов№1 (далее часов) представле- на на рис. 1. Принципиальная схема платыклави- атуры представлена на рис. 2. Интуитивно понятный интерфейс устройства приведён на рис. 3. Позиционные обозначения элемен- тов интерфейса: SA1, S1…S5, HG1…HG6, HL1, HL2 на рис. 3 приведены условно. Они показаны для понимания рабо- ты устройства в целом и совпадают с позиционными обозначениями, приве- дёнными на рис. 1 и 2. Цифровое табло устройства содержитшесть строк. Каж- дая строка содержитшесть семисегмент- ных индикаторов и две световые поло- сы. Элементы строки № 1 (HG1…HG6 и световые полосыHL1, HL2) (маркировка строки –МИНСК) установленына часах № 1. Элементы строки № 2 (маркиров- ка МОСКВА) установлены на часах № 2 и т.д. Соединитель Х1 часов№1 подклю- чается к соединителюХ2 платыклавиа- туры (рис. 2). Соединитель Х1 часов№2 подключается к соединителюХ3 платы клавиатурыи т.д. Соответственно, соеди- нитель Х1 часов№6 подключается к сое- динителю Х7 платы клавиатуры. Галетный переключатель SА1 и кноп- ки S1…S5 установлены на плате клави- атуры (рис. 2). SA1 имеет шесть поло- жений (1…6) и шесть направлений и обеспечивает поочередное подключе- ние всей клавиатуры (кнопок S1…S5) к часам № 1…№ 6. Если он установлен в положение «1», то кнопками S1…S5 можно задать параметрыдля часов№1. То есть изменить отображаемые значе- ния на индикаторах строки№1. Если SA1 установлен в положение «2», то кнопка- ми S1…S5 можно задать параметрыдля часов № 2, то есть изменить отобража- емые значения на индикаторах строки № 2 и т.д. На рис. 3 переключатель SA1 установлен в положение «4». Это значит, что кнопками S1…S5 можно задать пара- метры для часов № 4. То есть изменить отображаемые значения на индикато- рах строки№ 4. Рассмотрим работу часов № 1. Они выполнены на базе микроконтроллера фирмыAtmel AT89C4051-24PI ицифровых датчиков температурыDS18S20. В часах два канала измерения температуры, собранных на цифровых датчиках DD3 и DD4, позволяющих контролировать температуру в двух различных точках, например, в комнате ина улице. Погреш- ность измерения температуры опреде- ляется датчикамии составляет порядка ±0,5°С. Десятые доли градуса контролиро- вать не будем, т.е. просто их отбросим. Алгоритмработыс DS18S20 приизмере- нии температуры следующий: ● посылается импульс сброса и прини- мается ответ термометра; ● посылается команда Skip ROM [CCH]; ● посылается команда Convert T [44H]; ● формируетсязадержкаминимум750мс; ● посылается импульс сброса и прини- мается ответ термометра; ● посылается команда Skip ROM [CCH]; ● посылается команда Read Scratchpad [CCH]; ● читаются данные из промежуточного ОЗУ (8 байт) иCRC (контрольная сумма); ● проверяется CRC и, если данные счита- ны верно, вычисляется температура. Более подробная информация о рабо- те, в томчисле о временны́хинтервалах сигналов обменаDS18S20, приведена в [1]. Предусмотрены следующие функции по измерению времени: счёт реально- го времени, индикация текущего вре- мени в 24-часовом формате с индика- цией часов, минут и секунд; установка текущего времени и его корректиров- ка; установка времени включения двух будильников, а также возможность их перепрограммирования. Предусмотрена подача короткого (длительностью 1 с) звукового бип-сигнала в начале каждого часа и включение на 10 с звуковой сигна- лизации с частотой повторения 1 Гц сра- зу после подачи напряжения питания на устройство. Если текущее время совпало с установленным временем включения будильника, на 10 с включается звуко- вая и световая сигнализация с частотой повторения 1 Гц. Кнопки клавиатуры имеют следую- щее назначение: ● S1 (Р) – выбор режима работы часов ( «часы1», «часы2», «температура1», «температура2», «будильник1», «бу- дильник2» ), каждое нажатие данной кнопки переводит устройство в сле- дующий режим в замкнутом цикле; ● S2 (Δ) – увеличение на единицу зна- чения каждого разряда при установ- ке времени часов в режиме «часы2» , а также при установке времени вклю- чения будильника в режиме «будиль- ник1» , «будильник2» , выключение звукового и светового сигналов при включении будильников; ● S3 (В) – выбор разряда при установке текущего значения времени в режиме «часы2» и установке времени сраба- тывания будильника в режимах «бу- дильник1», «будильник2» , в выбран- ном разряде включается точка h; ● S4 (Н1) – кнопка включения/выключе- ния нагрузки, подключённой к соеди- нителю Х2 (нагрузка № 1); ● S5 (Н2) – кнопка включения/выключе- ния нагрузки, подключённой к соеди- нителю Х3 (нагрузка № 2). Разряды индикации интерфейса имеют следующее назначение (спра- ва налево по рис. 1): ● первый разряд (индикатор НG6) ото- бражает цифру 1 в режиме «часы1» , 2 в режиме «часы2» , 3 в режиме «бу- дильник1» , 4 в режиме «будильник2» , символ °С в режимах «температура1» , «температура2» ; ● второй разряд (индикатор НG5) ото- бражает единицы секунд в режимах «часы1» , единицы минут в режимах «часы2» , «будильник1» , «будиль- ник2» , единицы градусов в режимах «температура1» , «температура2» ;
RkJQdWJsaXNoZXIy MTQ4NjUy