Нет osd на экране телевизора

Обновлено: 16.05.2024

OSD - On Screen Display - устройство, позволяющее формировать изображения разнообразных значков на экране ТВ. Как правило, OSD-контроллер входит в состав системного контроллера, но в случае данной разработки это не так. OSD-контроллер можно было бы собрать на отдельных микросхемах (~10 корпусов ТТЛ), но это теория. На практике удалось приобрести микросхемы stv9425 (хотя они и стоили почти 140 рублей. ). Это - не единственная интегралка для OSD, довольно длинный список мне удалось найти в инете:

но, как обычно, выбор пал на ту единственную, к которой удалось найти описание и которая была в продаже.

Основное отличие контроллера OSD от, например, видеокарты в компьютере, состоит в том, что видеокарта сама генерирует сигналы развёртки, под которые подстраивается монитор, а OSD-контроллер должен подстраиваться под уже имеющиеся сигналы, полученные от источника основного изображения. Только так можно аккуратно наложить картинку от OSD на картинку от ТВ-центра.

Это довольно продвинутая микросхема. Она существует в нескольких модификациях, но купить удалось только самую сложную версию.

Её характеристики и прочее вы прочтёте в документации, а здесь, как обычно, только краткий обзор и особенности.

  • Она предназначена для формирования изображения в разнообразых условиях, включая компьютерные мониторы. Поэтому верхний предел частоты вывода пикселей - 50 МГц (возможно, вы помните, что верхняя частота ТВ-видео - 5-6 МГц). Мало того, она ещё и пытается точно поддерживать фазы пикселей, поэтому верхняя частота, которая присутствует на кристале - ~200 МГц. Отсюда грустный вывод - несмотря на невысокое энергопотребление, эта микруха "свистит" помехами в широчайшем частотном диапазоне. Впрочем, этот шум давится без особых хлопот.
  • Тем, кто привык к компьютерной графике, с её фиксированной привязкой - адрес_точки позиция_на_экране, может показаться непривычным механизм видеопамяти в этом контроллере - он весь строится на указателях. Что вполне логично - указатель поменять быстрее, чем перемещать содержимое блока памяти. Первый указатель сидит в управляющих регистрах - он указывает на начало видеопамяти. Затем в видеопамяти сидят указатели на строку либо spacer (пропуск нескольких строк), в самой строке живут символы, включая такой интересный символ, как "конец строки" (т.е. до конца данной строки уже ничего не анализируется).
  • В документации нет такого понятия как "максимальное разрешение". Дело в логике работы контроллера - ведь он не сам формирует длительность строки и кадра.
  • В аттрибутах строки есть такой битик как "двойная высота".
  • Фон символов можно задать как фиксированный так и прозрачный.
  • Поддерживается три дискретных цветовых канала (8 цветов) и канал прозрачности (бит, который управляет коммутатором видеопроцессора).
  • Можно задавать собственные символы, в прошивке есть готовый набор латинских букв и других значков. Но символы расположены не совсем по ASCII.
  • Есть ещё ряд увлекательных регистров, которые позволяют плавно задавать положение картинки, её масштаб, подстраивать внутренние генераторы к развёртке данного аппарата и т.д и т.п.
  • Если вместо правильных знаков OSD рисует махровые бегающие полоски - это означает, что внутренние генераторы не удается согласовать с внешней развёрткой. Причины всего три: внешняя развёртка не поступает на входы OSD, неправильно выполнен сброс OSD (по линии RESET), неправильно заполнены регистры настроек OSD. У некоторых экземпляров ТВ такое иногда случалось. Предположительно, это происходило, если сразу после выключения снова включить ТВ. Вероятно, не успевал разрядится конденсатор сброса. В более поздних экземплярах он был уменьшен. Хотя уже при сборке второго экземпляра была отмечена неточность в расчёте значений регистров настройки. И тоже исправлена.
  • Если при включенном OSD резко портится основной видеосигнал (нет цвета, много резких мелких черно-белых точек - это значит, что шум по шинам питания OSD пролез в видеопроцессор.
  • Памяти (1 кб) и возможностей вполне хватает для того, чтобы подключив внешние генераторы развёртки сделать на базе этой микросхемы самостоятельный видеоконтроллер - например, для использования в качестве встроенного дисплея для бытовой аппаратуры (с небольшим кинескопиком от осцилографа). Такой проект (использование малогабаритного кинескопа вместо светодиодных полос) когда-то (годах в 80-х) был в журнале Юный техник (а может и в другом каком-то. ), но он был без вывода значков - только линии уровней сигналов.

Проста, как пять копеек:

NB: в этом ТВ OSD-контроллер не может адекватно работать при отсутствии настройки на станцию. Грустно, но это так. В более правильных ТВ видеопроцессор сам генерирует синхросигналы в отсутствие станции. Здесь они тоже есть, но очень сильно отличные от нужных. Картинка OSD будет рваной и частично уйдёт за пределы видимой области кинескопа.

Читайте также: