[Проект начат]Вывод OSD-оверлея поверх PAL/NTSC – видео при помощи Arduino и MAX7456

Kirov8

✩✩✩✩✩✩✩
16 Июл 2021
4
3
Здрасвствуйте товарищи DIY-щики!

Загорелся я как-то радиоуправляемыми моделями.
Но собрав в корзину все свои хотелки на Алиэкспресс – получил не утешительную сумму >100$
Для меня это как то дохрена, да и руки нам даны не для скуки.

И если вопросы с двигателями/передачей команд и т.п. я решил(Спасибо большое за это форумам и AlexGyver в частности), то осталась последняя задача – вывод данных телеметрии с RC-модели.

И выводить я захотел всё по серьёзному, как у специализированных контроллеров в виде OSD на видео.

OSD это сокращение от On Screen Display, перевод – “на экране дисплея”.
Hbc88bec61213431d8e65133b29ad6ccd7.jpg

Для этих целей у ушлых китайцев есть специализированные модули – minim OSD
minim_OSD.PNGminim_OSD2.PNG
И это хорошее решение… но с одним недостатком – ЦЕНА!
За такую игрушку придётся отдать от 12$ до 16$!
Для такого бомжинера как я это как-то дороговато…
А тем более дорого потому, что по сути все данные модули построены на базе одной микросхемы – MAX7456. Цена которой от 3,5$ при заказе одной, до 11,88$ (2,4$за штуку) при заказе 5шт.
max7456.PNGmax7456_2.PNG
Далее, порывшись в инете, я нашел несколько статей, описывающих работу MAX7456 и платформу Ардуино:
http://mypractic.ru/urok-66-osd-gen...-parametry-podklyuchenie-k-plate-arduino.html
http://mypractic.ru/urok-67-arduino...nekorrektnoj-raboty-ispravlennyj-variant.html


Я крайне признателен автору за работу и спешу поделится ей с вами.
Вот несколько выдержек из его статьи:

______________________________________

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

Подробную информацию о микросхеме MAX7456 можно посмотреть в технической документации фирмы-производителя Maxim Integrated (даташит легко гуглится и довольно таки подробный)

MAX7456 это OSD-генератор. Микросхема позволяет:

- Наложить на стандартный NTSC или PAL видеосигнал текстовую информацию.

- Сформировать видеосигнал с текстовой и псевдографической информацией. Т.е. реализовать функции видеокарты.

Для нас это означает, что MAX7456 может быть использована в Ардуино-системах как для формирования OSD-меню, так и в качестве видеокарты со стандартным видеовыходом.



MAX7456 формирует монохромную информацию, которая накладывается на цветной видеосигнал. Т.е. на цветном изображении, например от видеокамеры, отображаются монохромные символы.



Информация отображается в виде 16 строк по 30 символов в каждой. Каждый символ или знакоместо представляет собой матрицу разрешения 12 x 18 пикселей.

Lesson_66_4.png
Lesson_66_8.png

Номер
вывода​
Название​
Функциональное назначение​
1, 2, 13-16, 27, 28​
N.C.​
Не используются. Ни к чему не подключены.
3​
DVDD​
Цифровое питание. Необходимо установить блокировочный конденсатор 0,1 мкФ между этим выводом и общим проводом (DGND).
4​
DGND​
Цифровая земля.
5​
CLKIN​
Используется для непосредственного подключения кварцевого резонатора частотой 27 мГц или для подачи частоты внешнего генератора.
6​
XFB​
Используется для непосредственного подключения кварцевого резонатора частотой 27 мГц.
7​
CLKOUT​
Выход внутреннего генератора 27 мГц.
8​
CS​
Выбор кристалла, активный уровень низкий.
9​
SDIN​
Сигнал входных данных интерфейса SPI.
10​
SCLK​
Сигнал тактирования интерфейса SPI.
11​
SDOUT​
Сигнал выходных данных интерфейса SPI.
12​
LOS​
Сигнал потери синхронизации.
Переходит в высокий уровень, если во входном видеосигнале микросхема не находит 32 импульса синхронизации подряд.
Переходит в низкий уровень, если получено 32 синхроимпульса.
Выход типа “открытый коллектор”.
Необходимо подключить его через резистор 1 кОм к питанию 5 В.
Высокий уровень означает потерю синхронизации.
17​
VSYNC​
Импульсы вертикальной синхронизации.
Выход типа “открытый коллектор”.
Необходимо подключить его через резистор 1 кОм к питанию 5 В.
18​
HSYNC​
Импульсы горизонтальной синхронизации.
Выход типа “открытый коллектор”.
Необходимо подключить его через резистор 1 кОм к питанию 5 В.
19​
RESET​
Сброс микросхемы. Активный уровень – низкий. Длительность импульса не мене 50 мс.
20​
AGND​
Аналоговая земля
21​
AVDD​
Аналоговое питание. Необходимо установить блокировочный конденсатор 0,1 мкФ между этим выводом и аналоговой землей (AGND).
22​
VIN​
Входной видеосигнал.
23​
PGND​
Земля драйвера выходного видеосигнала. С аналоговой землей (AGND) должен быть соединен только в одной точке.
24​
PVDD​
Питание драйвера выходного видеосигнала. Необходимо установить блокировочный конденсатор 0,1 мкФ между этим выводом и сигналом PGND.
25​
SAG​
Сигнал коррекции выходного видеосигнала. Если коррекция не используется, должен быть соединен с сигналом VOUT.
26​
VOUT​
Выходной видеосигнал.

Из электрических характеристик для нас самое важное:

Напряжение питания микросхемы (выводы DVDD, AVDD, PVDD) – 5 В.

Потребляемый ток:

DVDD до 30 мА;

AVDD до 35 мА;

PVDD до 80 мА.

Цифровые сигналы имеют TTL уровни ( 0 / 5 В ).

Разработчики микросхемы рекомендуют следующую схему подключения.
Lesson_66_9.png
В качестве Csag он использовал танталовый электролитический конденсатор емкостью 100 мкФ (2 конденсатора по 47 мкФ).
Доподлинно известно работоспособность схемы:
Lesson_66_10.jpgLesson_66_11.pngLesson_66_12.jpgLesson_66_13.jpg
Также радует и стандартная таблица символов знакогенератора микросхемы:
ANSI.png
Есть и курсор и прогрессбар и куча полезных(и не очень) символов.

Так же имеется и библиотека Arduino для работы с данной схемой:
https://github.com/neomilium/arduino-max7456
В библеотеке имеется пара скетчей-примеров работы с OSD.

Меня такой вариант вполне устраивает как саму MAX7456, так и все необходимую для ней рассыпуху я или уже нашел (выпаял со старого ТВ), или заказал на АЛИ.
Plug.PNG
Осталась одна проблема.
Я вообще изначально планировал делать плату для схемы при помощи лазерно-утюжной технологии.
Но я уже заказал 5 схем, 10 разъёмов и 20 RCA штекеров.
И травить 5 плат мне как то не очень хочется…
И тут я вспомнил что Гайвер чуть ли не в каждом видосе JLC-PCB рекламирует.
А там вроде как раз 5 плат за заказ.

Идеально!

Но вот в чём вопрос…
Я ни разу не пользовался JLC!
И вроде как можно сесть, включить видос, развести платку…
Но так как это первый раз, я очень боюсь, что разведу её с ошибкой ( схема то для поверхностного монтажа), закажу, подожду месяц, пойму что ошибся, закажу заново, подожду ещё месяц…
и к тому моменту когда правильный заказ придёт, чувствую махну рукой на красоту и соберу всё навесом на соплях…

Собирать я её буду в любом случае…
Но вот от помощи бы не отказался.
Может кто умеет хорошо в разводку плат поз заказ на JLC поможет с гербер-файлом?
Был бы крайне признателен.

А если и нет, то надеюсь моя находка хотя бы пригодится кому-нибудь в проекте.
Так же мне интересно, может кто ещё какое применение или улучшение придумает для данной схемы.
Всем спасибо!
З.Ы. Простите за громоздкое оформление темы.
 
Изменено:

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
@Kirov8, очень полезную тему Вы создали, за что Вам спасибо. У меня давно была мысль выводить на экран телевизора по команде с пульта данные домашней метеостанции. Именно методом OSD, да как-то руки не доходили разобраться во всём этом, а тут наткнулся на Вашу тему. Вот только вынужден Вас огорчить: цена изготовления плат на JLC с доставкой очень сильно кусается. Если нужно не более 5 штук, то лучше утюгом, там не сложная разводка получится. В Sprint Layout можно нарисовать за один вечер, да и гербер в нём же сгенерить, раз уж Вы не умеете в пакеты САПР. А насчёт Ваших опасений ошибиться... Ну, перепроверьте раз 10 - 20. Надо же когда-то начинать.;)
 
Изменено:

bort707

★★★★★★✩
21 Сен 2020
3,056
910
@PiratFox, когда это изготовление печаток у китайцев стало " очень дорогим "? В прошлом году заказывал один раз за 6.40$ с доставкой, другой за 9 баксов. Не думаю что это дорого
Хотя я на месте автора при выборе между голым чипом за 3 бакса и готовой платой за 12 выбрал бы плату. Неужели свое время по сборке девайса не стоит даже 10 баксов? Тем более если делать не самому, а заказывать на jlc
 
Изменено:

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
@bort707, так ведь всё относительно. Если для ТС имеет значение каждый доллар(см. выше), то... Но тогда, ИМХО, заказывать ничего и не нужно. Простейшая разводка, делается утюгом. По затратам времени - день на всё про всё. Готовы 5 плат. Зачем платить что-то. Может, ТС своё время ценит в ничего, как знать(не хочу никого обидеть). Как-то так. ;)
 

Kirov8

✩✩✩✩✩✩✩
16 Июл 2021
4
3
Нашел ещё пару источников по теме:
Русский язык на MAX7456
Нашел Англоязычный проект на тему. У них нашел много инфы и гербер того, что они наворотили. Но сам ещё толком не смотрел и НЕ ПРОВЕРЯЛ!
Кидаю просто для ознакомления:
Англоязычный проект DIY OSD на MAX7456
Гербер того что они наворотили.
 

PiratFox

★★★★★✩✩
13 Фев 2020
1,706
474
@Kirov8, что Вам мешает самому сгенерить этот проклятый гербер? Ну Sprint Layout жеж есть.
 

Kirov8

✩✩✩✩✩✩✩
16 Июл 2021
4
3
Нашел интересный вариант.
Как многие и писали - заказывать плату у китайцев( на том же JLC) не совсем выгодно: плата+доставка обходятся почти столько же, сколько и готовый модуль. Это раз.
Вторая проблема - если вы как и я используете разношорстные б/у компоненты выпаянные с разного старого хлама - подобрать обвязку точно в габарит разводки на плате - сложно, делать плату с универсальной разводкой под все элементы - муторно.
Да и схема сама по себе простая.
Мне подсказали неплохой альтернативный вариант - переходники с TSSOP 28.
Стоят копейки, паяются легко, идут по 5 штук и позволяют собрать платку на основе многоногих микросхем поверхностного монтажа на обычной макетке.
1111.PNG
Спасибо добрый человек, я вот про них не знал.
И, честно, имел опыт припаивания 20-ногой микросхемы к обычной макетке - и это трэш.
 

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
Время назад, я на каком-то форуме такое осд на атмега8 видел. Оно там конечно имело свои нюансы (не все так красиво как на МАХ, имхо на нем тоже не так чтобы сильно красиво), но вполне работало.
 

DimoNET

✩✩✩✩✩✩✩
29 Сен 2021
2
0
мне кажется схемы по выводу тестовых таблиц на телик были на таком же принципе может просто найти у тв мастеров ненужные на авито за 1коп
 

DimoNET

✩✩✩✩✩✩✩
29 Сен 2021
2
0
1632939951616.png за 5.13уе купил на атмел328p
Micro модуль OSD Mini на экране Дисплей FPV видео верхний модуль для APM Naze32 CC3D SP Racing F3 Контроллер полета Квадрокоптер | Электроника | АлиЭкспресс (aliexpress.ru)
описалово OSD для ArduPilot Mega - система наложения данных телеметрии на полетное видео. — Паркфлаер (parkflyer.ru)
настройки программирования итд, подключил свою, правда огорчение ей для полноценной работы надо контроллер полета увидеть. у меня нет, машинка и самолет без них справляются.
так что передает картинку и говорит жду сердцебиение контроллера )

ааа нет досмотрел под пломбой AT7456 тем более 2 микрухи за 5уе, брал для квадрика..
Но у меня задача передать OSD на видео аналаго цифровое к регистратору в стандарте HDTVI,2Мегапикселя... попробую подключить эту отпишусь..
а идея в том что бы расширить возможности видео наблюдения и любого другого видео канала обагатить доп инфой
 
Изменено:

PavelBogomaz

✩✩✩✩✩✩✩
12 Авг 2024
1
0
Если проект совсем не протух, готов внести свой вклад.
Выкурил все попавшиеся библиотеки, написал несколько своих заплаток и все прилично работает.
Использовал как посредника minimOSD.
 

Вложения