СОВРЕМЕННАЯ ЭЛЕКТРОНИКА №3/2013
печивается двухсторонний обмен. При этом данные, поступившие извне че рез UART0, без изменений передаются в UART1 и наоборот. Также во всех ре жимах модуль RTC МК производит не прерывный автономный отсчёт вре мени и даты. По умолчаниюпосле включения пи тания устройство переходит в режим вторичных часов (аббревиатура на ЖКИ «Вт.»). В этом режиме на индика торах отображаются значения време ни, даты и признака достоверности («V» или «A»), поступающие из первич ных часов по радиоканалу. Для поль зовательского редактирования они не доступны. Результаты автономного отсчёта времени и даты в этом режиме нигде не отображаются и недоступны для редактирования; кнопки SB2 – SB4 неактивны. При поступлении каждого пакета данных из первичных часов де сятичная точка второго знакоместа се мисегментного светодиодного инди катора мигает с частотой 0,5 Гц (двух секундный ритм). При пропадании пакетов на приёме мигание точки прекращается, а на индикаторах оста ётся отображение последних приня тых значений даты и времени. Следующий возможный режим – ав тономные часы с коррекцией любыми принятыми данными («Кор.»). В этом режиме устройство отображает значе ния отсчитываемых в модуле RTC вре мени и даты. Для редактирования эти значения недоступны. Десятичная точ ка второго знакоместа мигает с часто той 1 Гц (секундный ритм), вне зависи мости от наличия пакетов на приёме. Поступающие по радиоканалу пакеты анализируются программой МК на предмет корректности формата, а на ЖКИотображается значение признака достоверности, взятое из каждого при нятого правильного пакета. Правильные пакеты подсчитывают ся, и когда их число превышает задан ное (60), текущее содержимое аппарат ных счётчиков времени модуля RTC заменяется на значения времени, взя тые из последнего правильного пакета. Текущее содержимое аппаратных счёт чиков даты RTC при этом не затраги вается, т.е. значение даты не коррек тируется. Таким образом, при поступ лении пакета один раз в секунду коррекция текущего времени посту пившими данными осуществляется один раз в минуту при условии, что все принятые пакеты имели правильный формат. Искажённые пакетыпрограм мой отбрасываются, соответственно, затягивается интервал коррекции. При пропадании пакетов на приёме, уст ройство продолжает автономный от счёт времени и даты и индикацию его результатов сколь угодно длительное время. Кнопки SB2 – SB4 в этом режиме неактивны. Следующий возможный режим – ав тономные часы с коррекцией только достоверными принятыми данными («Кор.V») – отличается от предыдущего только тем, что программа, помимо анализа правильности формата каж дого пакета, анализирует значение признака достоверности. Если при знак достоверности имеет значение, соответствующее достоверным дан ным (0x41, символ 'A' в ASCII коде), то такой пакет подсчитывается програм мой и участвует в коррекции счётчи ков времени RTC, как было описано выше. Таким образом, коррекция RTC осуществляется только в том случае, когда поступившие из радиоканала данные содержат гарантированно до стоверные значения времени и даты. Последний возможный режим уст ройства – автономные часы без кор рекции («Авт.»). В этом режиме уст ройство является обычными часами, производящими отсчёт времени и да ты с отображением его результатов на индикаторах, а отсчитываемые значе ния доступны для пользовательского редактирования. Приём пакетов из ра диоканала ведётся, но принятые дан ные программой не используются и нигде не отображаются, а только пере даются без изменений в консольный порт UART1. В этом режиме кнопки SB2 – SB4 используются для ручной установки значений счётчиков време ни и даты модуля RTC. Кнопка выбора режима SB4 обеспечивает переключе ние всех режимов часов по кольцу. Всего у часов имеется четыре режи ма, каждый из которых индицируется соответствующей буквенной аббреви атурой в правой части нижней строки ЖКИ («Реж.0» – «Реж.3»), а также свече нием десятичных точек соответствую щих знакомест семисегментного ин дикатора. По умолчанию после пере хода устройства в режим «автономные часы» задан режим «Реж.0», в котором кнопки SB2, SB3 неактивны. В режиме «Реж.1» (светится десятичная точка первого знакоместа семисегментного индикатора) кнопкой SB3 можно зада вать значения часов от 0 до 23, а кноп кой SB2 – значения минут от 0 до 59. В режиме «Реж.2» (светится десятичная точка третьего знакоместа) кнопкой SB3 можно задавать значения дней ме сяца от 1 до 31, а кнопкой SB2 – меся цев от 1 до 12. В режиме «Реж.3» (све тится десятичная точка четвёртого знакоместа) кнопкой SB3 можно зада вать значения лет по кольцу от 1990 до 2050, а при нажатии на кнопку SB2 производится обнуление всех счётчи ков времени RTC, включая счётчик се кунд, и установка даты 01.01.2012. Для определения високосного года в модуле RTC производится простое ИНЖЕНЕРНЫЕ РЕШЕНИЯ 54 WWW.SOEL.RU СОВРЕМЕННАЯ ЭЛЕКТРОНИКА ◆ № 3 2013 Рис. 10. Принципиальная схема радиоретранслятора
RkJQdWJsaXNoZXIy MTQ4NjUy