leoniv.diod.club

Система управления телевизором

Дело было в 90-х. Тогда был дефицит всего, в том числе, телевизоров. Сборку телевизоров вовсю вел завод "Горизонт", но кроме того телевизоры собирались разными мелкими фирмами, и даже студентами в общежитиях. Не всегда просто повторялась конструкция промышленного телевизора. Могли вноситься какие-то доработки и дополнения, типа оснащения телевизоров пультом ДУ и декодером PAL. Тогда была сделана своя, полностью оригинальная система управления телевизором на базе микроконтроллера КР1830ВЕ31. По сегодняшним меркам, конечно, ничего удивительного. Но в те времена, когда даже пульт ДУ был далеко не в каждом телевизоре, система казалась крутой.

Самодельный блок управления телевизором был полностью совместим как конструктивно, так и электрически с модулем синтезатора напряжений МСН-501, который устанавливался в телевизоры "Horizont" 51CTV-510.

Рис. 1. Передняя панель блока управления.

Конструктивно блок управления представляет собой две платы, соединенные множеством проводов и скрепленные с помощью резьбовых стоек. Основой блока является микроконтроллер КР1830ВЕ31 с внешним ПЗУ. Для формирования напряжения настройки используется 10-разрядный ЦАП КР571ПА1, а 4-разрядные ЦАП-ы регулировок собраны на резисторах.

Рис. 2. Печатные платы блока управления.

Графический OSD (On-Screen Display) реализован на простой логике: счетчик пикселей и строк, экранное ОЗУ, тактовый генератор на КР1533АГ3, синхронизирумый строчными СИ. В свое время пришлось довольно долго повозиться, чтобы обеспечить отсутствие дрожания пикселей вдоль строки. Знакогенератор находится в памяти программ, процессор загружает в экранное ОЗУ картинку в графическом виде. Поддерживается 4 цвета. Все выводимые на экран символы и буквы имеют черную окантовку, что делает их заметными на любом фоне.

Рис. 3. Основное меню.

Рис. 4. Меню настройки.

В меню настройки можно вызвать на экран текущий канал (Call). Можно запустить автоматическую настройку (Auto). Причем каналы записываются в память не с первого номера, а с любого указанного. Это позволяет автоматически сканировать эфир, не нарушая порядка уже сохраненных каналов. Новые найденные каналы можно перенести на нужный номер, используя Call и Save. Набор предустановок (Memory) позволяет для каждого канала выбрать свой варинт настроек яркости, контрастности, насыщенности, громкости. Поиск (Search) можно производиить в любом направлении (в стандартном Horizont - только вперед).

Рис. 5. Ручная настройка.

Ручная настройка (Fine) позволяет запомнить любое значение напряжения настройки, при этом можно выключить АПЧГ.

Рис. 6. Меню установка часов.

В меню установки часов (Clock Preset) можно установить текущее время, дату, день недели и перейти в следующее меню. Особенность данного блока управления - применение часов Dallas с встроенной литиевой батарейкой. Даже при отключении телевизора от сети ход часов не нарушается. Это особенно актуально в условиях наших энергосетей, где перебои электроснабжения - обычное дело. А еще бывали случаи, когда напряжение сети подскакивало до 380 вольт. В таких условиях оставлять телевизор в дежурном режиме весьма рискованно.

Рис. 7. Меню таймера.

Меню таймера (Timer) позволяет вывести в любое установленное время на экран телевизора заданное сообщение.

Рис. 8. Меню набора текста.

Сообщение набирается с помощью матрицы букв.

Рис. 9. Меню таймера выключения.

Таймер выключения можно запрограммировать на любое время.

Рис. 10. Меню будильника.

Будильник позволяет включить телевизор в заданное время на заданном канале.

Рис. 11. Меню установки громкости будильника.

И даже можно задать громкость будильника. Например, если вечером кто-то смотрел телевизор на очень малой громкости, это не помешает будильнику включить телевизор на заданной повышенной громкости.

Рис. 12. Меню дня недели будильника.

Будильник срабатывает лишь в определенные дни, которые можно задать в специальном меню. Например, в выходные дни будильник можно выключить.

Рис. 13. Меню отображения.

Меню отображения (Display) позволяет задать элементы, которые всегда индицируются на экране. Можно включить индикацию номера канала, системы цветного телевидения, текущего времени, времени таймера, индикацию секунд текущего времени.

Рис. 14. Все элементы отображаются.

Рис. 15. Отображается только время.

Обычно использовался только вывод времени.

Рис. 16. Меню общих установок.

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

Рис. 17. Меню описания аппарата.

В исходной версии поддерживалось два языка - английский и русский. В своем экземпляре я оставил только английский, но пункт меню переключения языков удалить забыл. В своем экземпляре я добавил еще информацию о владельце: адрес и телефон.

Рис. 18. Регулировка громкости.

Рис. 19. Регулировка контрастности.

Рис. 20. Регулировка насыщенности.

Рис. 21. Регулировка яркости.

Основные параметры регулируются так же, как и в штатной системе управления.

Рис. 22. Запоминание настроек.

Имеется возможность сохранять 10 варинтов настроек параметров изображения, каждый из которых можно вызвать кнопкой Memory.

Рис. 23. Меню информации.

В любой момент на экран можно вывести информацию о номере канала, диапазоне, системе цветного телевидения, АПЧГ, текущем времени и дате, установках таймера и будильника.

Рис. 24. Ввод двухзначного номера канала.

Двухзначные номера каналов набираются так же, как и в штатной системе управления. Но все это пришлось реализовывать в программе, даже уплывающий вдаль и уменьшающийся в размерах номер канала.

Не знаю, есть ли смысл выкладывать схему этого устройства. С этим есть определенные проблемы, она в формате OrCAD 4.42, на сегодняшний день мне ее нечем открыть. В будущем, возможно, конвертирую в какой-то распространенный формат. Что касается исходника, то это вообще страшная вещь: 5500 строк на ассемблере с редкими комментариями. Этот проект был одним из первых моих проектов на микроконтроллерах. Начинал я его делать на самодельном компьютере "Специалист", используя самодельный транслятор с ассемблера MCS-51. И только в середине проекта у меня появился 386-й компьютер.

Links:
  1. Пост в ЖЖ на эту тему: 1
Ридико Леонид Иванович www.leoniv.diod.club e-mail: wubblick@yahoo.com