Магнитола на ардуино своими руками

Добавил пользователь Алексей Ф.
Обновлено: 19.09.2024


Мдя. Я помню времена, чтобы запустить MP3 на PC 386DX33 под Win3.11 требовались бубны и магия, похлеще чем сегодняшние проблемки детворы с освоением навыков работы в очередном модном фреймворке.

А теперь это делает обычный ПЛИС за 1$ с кучей готовых паттернов и даже готовго софта.

рандом хороший у тебя. у меня магнитола за 25 косарей и в ней рандом вообще говно какое-то.

Иллюстрация к комментарию

скетчи, девайсы, где ?

Без исходников - это так, похвастаться

Автор, не слушай недоброжелателей - ты это сделал!

Оно еще и работает!

Мне знакомо это ощущение и я знаю, что в такие моменты

очень хочется с кем-то поделиться, показать.

вопрос не в тему, но все же, я купил Digispark Attiny85, но когда вставил в комп, он не определился, а выдал такую ошибку "сбой запроса дескриптора устройства", ошибка 43. Вставлял в ноутбук USB 2.0, Win 10. Но все остальное оборудование через этот порт работает как надо, только эта плата. на других компах проверить не могу. Когда включаю должен же на 5 сек загораться один фонарик, в ожидании загрузки, ну а у меня он как включается, так и не выключается, не выходит наверное из этого режима. Что это может быть?

А вот можно туда еще фильтры добавить? Ну вот на крутых магнитолах есть встроенный звуковой процессор, который отрезает необходимые частоты выше или ниже указанной. с ардуино такое повторить можно?

магнитола? или всё же цифровой плеер

Собрать плеер на базе WTV020-SD-16P и арудино очень просто, проблема только в том, что он будет далеко не всеяден.

Один вопрос. Стоит того?

Чего-то подумалось. Ведь термин "магнитола" подразумевает наличие в составе изделия магнитофона. Надо продумать терминологию.

А так, используемые компоненты умеют читать тэги id3v2?


Установка ArduBlock 2.0 + Работа в онлаин ArduBlock 2.0 + Arduino ide

Пиропечать

Тут отписывался парень,у него ЧПУ-шка,выжигает нихромом.

Владею почти таким же прибором уже 2 года.Пост не для рейтинга,чисто показать,что можно на нем делать.В отличие от многих,я жгу на МДФ и ХДФ(мебельщики поймут)

Заливаю лаком.ваш слуга с женой на фото ниже.За качество фото-не пинайте,чукча выжигатель,чукча не фотограф.

И да!если кому интересно-дам консультации,как обработать фото,какие режимы поставить на иглу-и прочее.

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост

Пиропечать ЧПУ, Самоделки, Arduino, Работа с деревом, Длиннопост


Android IK Пульт управление компьютером на Leonardo Atmega 32u4

Android IK Пульт управление компьютером на Leonardo Atmega 32u4 Ardublock, Arduino, Электроника, Самоделки, Android, Ремонт техники, Электрика, Техника, Видео, YouTube, Длиннопост

Android IK Пульт управление компьютером на Leonardo Atmega 32u4 Ardublock, Arduino, Электроника, Самоделки, Android, Ремонт техники, Электрика, Техника, Видео, YouTube, Длиннопост

"Контурная" методичка про мультиметр

Всем привет!
На связи - клуб любителей электроники "Контур", и сегодня мы выкладываем нашу новую методичку по основам пользования мультиметром. Звучит как клише, правда?
Пользуйтесь на здоровье =)

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

PDF-версию можно будет найти в нашей группе, либо запросить в комментариях.










Кратко об авторе этого выпуска: человек не совсем специалист по электронике, однако вызвался помочь нам с посильной популяризацией радиолюбительства. Его сын пятнадцати лет был первым подопытным читателем и испытателем =)
Сам Константин, а именно так зовут автора данной методички, является ветераном пожарной охраны и специалистом в пожаротушении и проведении аварийно-спасательных работ; со службы из "горячих зон" ушел несколько лет назад, сейчас же руководит отделом промбезопасности всех объектов Дальнего Востока в крупной отечественной компании. А в общем и целом он просто хороший человек, передаем ему большое спасибо ему за помощь! =)


Как я собирал панель приборов Venator. Часть 2

Примерно 2 года назад, я писал пост про сборку панели Venator - Как я собирал панель приборов Venator. Плата тогда получилась дико большой и "костыльной". Освежим воспоминания, глянув на нее:

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

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

Размером она получилась очень большой, много места используется зря. Изготавливать ЛУТом такие платы не очень хорошее занятие. Да и не люблю я ЛУТ, обленился с возможностями Китая.

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

В итоге родился такой вариант платы(размером 100*100мм, для заказа у китайцев):

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

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

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

Пока шли компоненты(почтой), не ногами. Стал думать как прошивать модули esp-8266, запаивать на плату и припаивать провода с переключателем? Слишком долго. В итоге решил сделать макетную плату, на нее поставить панельку. В панельку вставляем модуль и прошиваем модуль.

Нашел готовую 3д модель панельки, напечатал ее на фотополимернике. В качестве контактов использовал проволочки от витой пары. Что получилось в итоге:

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

Далее собираем макетку, и устанавливаем на нее напечатанную панельку. На макетке переключатель режимов и кнопка сброса, а так-же стабилизатор питания. Подключатся к usb-uart преобразователю, он к компу, и дальше шьем прошивку.

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

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

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

Далее я спроектировал корпус для платы. Хотел напечатать его на 3д принтере(напечатал только нижнюю часть), но в дальнейшем пока забросил эту идею. Моделировал во FreeCAD. Сам корпус выглядит вот так:

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

Как пришли почти все комплектующие, начал собирать плату. Ручная сборка занимает много времени, особенно когда компоненты типоразмера 0603. Фото получившейся платы ниже. Так же видна нижняя часть корпуса.

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

Как я собирал панель приборов Venator. Часть 2 3D печать, 3D принтер, Радиоэлектроника, Электроника, Приборная панель, Самоделки, Печатная плата, Arduino, Видео, YouTube, Длиннопост

Видео со всем этим безобразием:

Всем спасибо! До новых встреч!


При повороте сустава, поворачивается Servo на Arduino

При повороте сустава, поворачивается Servo на Arduino Ardublock, Arduino, Электроника, Самоделки, Видео, Видео ВК

При повороте сустава, поворачивается Servo на Arduino Ardublock, Arduino, Электроника, Самоделки, Видео, Видео ВК


Автономный программатор чипов картриджей Mimaki на Arduino

Программатор подойдет для Mimaki ujf3042 и Mimaki ujf6042.

Автономный программатор чипов картриджей Mimaki разработан самостоятельно на абазе микроконтроллера Arduino NANO и дисплее Nextion.

Автономный программатор чипов картриджей Mimaki на Arduino Arduino, Видеоблог, Электроника, Электрика, Самоделки, Ремонт техники, Видео, YouTube, Длиннопост

Также в планах сделать промотор для других типов чипов данного принтера.

Автономный программатор чипов картриджей Mimaki на Arduino Arduino, Видеоблог, Электроника, Электрика, Самоделки, Ремонт техники, Видео, YouTube, Длиннопост

Автономный программатор чипов картриджей Mimaki на Arduino Arduino, Видеоблог, Электроника, Электрика, Самоделки, Ремонт техники, Видео, YouTube, Длиннопост

Надеюсь моя информация будет полезной.

Спасибо! Всем добра!

Автономный программатор чипов картриджей Mimaki на Arduino Arduino, Видеоблог, Электроника, Электрика, Самоделки, Ремонт техники, Видео, YouTube, Длиннопост


Русский Эмулятор Ардуино Просто рай радио любителя) или Ардуинщика))


ArduBlock 2.0 - Пока ценники на Aliexpress высокие, будем использовать симулятор Arduino UNO

Раз уж интересно, вот вам ещё.

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

В общем за пару вечеров разработал комплект плат для Arduino MEGA и собрал автоматку для гибочного пресса.

Установил дисплей LCD2004 и энкодер для настройки параметров. На главной плате (что на верхней стенке шкафа) есть возможность подключения доп модулей по шине I2C, 2-х осей ЧПУ, модулей цифровых и аналоговых входов и выходов. Прелесть в том, что можно сделать почти все что угодно. Этого процессора хватает за глаза.


Когда я решил поменять магнитолу в своей машине, я встал перед выбором — потерять штатное управление звуком кнопками на руле, или же покупать специальный (достаточно дорогой) адаптер.
Потом я подумал, почему бы не сделать такой адаптер самому?
Обзор для тех, кто дружит с паяльником.

Сначала суть проблемы.
Во многих машинах есть штатно установленное управление магнитолой на руле. Кнопки эти работают по принципу резистивной клавиатуры, что позволяет передавать сигнал всего по двум проводам.
Например, нажимаем кнопку увеличения громкости — в цепи появляется сопротивление 130 Ом.
Нажимаем уменьшение громкости — появляется сопротивление 240 Ом и т.п.

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

Когда я поискал такой адаптер для своей машины, оказалось, что он стоит больше 50$. Учитывая, что сама магнитола мне досталась за какие-то смешные 30-35$, я решил попробовать сколхозить адаптер самостоятельно на ардуине. Готовой схемы на тот момент в интернетете не было, пришлось изобретать самому.

Заранее хочу извиниться за возможные неточности и ошибки — я плохо разбираюсь в электронике. Всю информацию по крупицам собирал из гугля. :)

В своем проекте использовал следующие компоненты:
1. Автомобиль Suzuki Swift
2. Автомагнитола Pioneer MVH-X165UI (купил в оффлайне)
3. Arduino Nano, можно и Mini (купил на ebay за 2.5$)
4. MCP4131, цифровой потенциометр на 100k (купил в оффлайне за 1$, почему-то на ebay они достаточно дорогие)
5. Резистор 10k
6. Макетная плата
7. Понижающий конвертер (step down buck converter за 1.5$), чтобы из 12V сделать 5V

Принцип простой — на входе измеряем сопротивление с кнопок на руле. Если сопротивление соответствует нажатию какой-то кнопки, то на выходе на потенциометре выставляем соответствующее сопротивление, требуемое магнитоле.

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


Также в сети обнаружилась следующая схема проводного пульта для магнитолы Pioneer (используется 3.5mm штеккер):

Кнопок Preset Up/Down у меня на руле нет, поэтому я использовал только два контакта на штеккере — Tip и Sleeve.

Т.к. диапазон требуемых магнитоле сопротивлений от 1К до 62К, то я купил микросхему MCP4131 — это цифровой потенциометр на 100К с 129 шагами регулировки. 129 шагов достаточно, т.к. нам не нужна супер точность, магнитола понимает сопротивления с разбросом где-то в 10-20%.
Ну и не обязательно покупать именно MCP4131, думаю, подойдет любой другой digipot с подобными характеристиками.

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

Я не буду объяснять азы работы с ардуиной, есть куча других специализированных ресурсов, где гораздо лучше все описано.


Схема подключения получилась такая:

Сопротивление измеряется на пине A5 с помощью делителя напряжения с резистором 10К.


Потенциометр подключен по следующей схеме:


Фото готовой платы.

С обратной стороны фотографий не сохранилось, т.к. это было год назад и я не планировал писать обзор. Ну и там ничего интересного — куча перемычек и плохая пайка :)

На этом все.
Устройство нормально работает в машине уже около года.
А я сэкономил некоторую сумму денег и получил ценный опыт.

Подключение осциллографа полностью подтвердило эту гипотезу:


Канал A — CS, B — CLK, D — DATA.

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

После этого парктроник был установлен в автомобиль и основное место разработки переместилось туда.

Часть вторая: Слушаем

Схема устройства совершенно не блещет какой-то оригинальностью: используются типовые схемы включения всех составляющих (из их даташитов). На всякий случай вывел почти все свободные порты ввода-вывода на дополнительный разъем (вдруг что-то еще придет в голову в процессе реализации?). Естественно, для программатора развел ICSP.


На первом этапе решил (для простоты) подключиться к диагностическому разъему, благо в нем MS-шина присутствует. Где именно в разъеме следует искать, подсмотрел тут.

Часть третья: Говорим

Собрал дома небольшой тестовый стенд, состоящий из моего устройства и этого дисплея. Отработка на стенде — значительно комфортнее, чем в машине, зимой на улице.

Параллельно нашел замечательный комментарий:

You can send the 3 frames with the following IDs:
0x28F: LCD settings and probably some other settings (you just send the same data you receive in a normal 0x28f frame).
0×290: 0xC0 (first byte) followed by first 5 alfanum signs
0×291: 0×85 (first byte) followed by the next 7 alfanum signs

all of them, just after you receive the 0×291 frame id sent by the HU. This will make your text being visible with almost no flicker at all.
The reason for sending the 0x28F is that it is required for displaying the 0×290 and 0×291 text, otherwise the LCD seems to simply ignore the 0×290 and 0×291.
Another method would be to set a timer with a 150ms interrupt and send the 3 frames described above.

0x28F frame content that I have used:
hex: D1 00 00 00 80 00 00 01

Таким образом, для того, чтобы дисплей отобразил передаваемый текст нужно передавать три посылки (при первых тестах я передавал только две и из-за этого дисплей отказывался отображать мой текст).

Часть четвертая: Логика

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

В домашних условиях написал основную часть кода, на тестовом дисплее все выглядело более-менее прилично. Но после визита в машину, вылезли серьезные…

В общем, работает, но совсем не так, как хотелось бы.



Получилось вот такое устройство:

Часть шестая: Тесты

На видео видно, что вывод практически идентичен, и в некоторых случаях на дисплее Mazda информация появляется на доли секунды раньше (что совсем неплохо).

После того, как были отлажены основные части прошивки, решил установить свою разработку в машину, чтобы уже устроить серьезную тестовую эксплуатацию.


И тут обнаружилась следующая проблема:

Пропала информация блока климат-контроля (правая часть дисплея). Как оказалось, это не единственная пропажа — маршрутный компьютер тоже отказался показывать свою информацию.

  • 0x38A обязательная отправка, без этого не работает маршрутник
  • 0x400 данные маршрутника
  • 0x3BA климат
  • 0x201 текущие параметры (скорость, обороты)

После того, как в код прошивки добавлены правила для прямой трансляции собщений с этими идентификаторами на дисплей — все заработало так, как надо.

Часть седьмая: "… и поскакал!"

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

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

  • средняя скорость,
  • мгновенный расход топлива,
  • средний расход топлива,
  • запас хода на остатке топлива.

Вообще о процессе поиска данных надо рассказать более подробно - это может показаться интересным (и полезным для подобного реверсинжиниринга).

Раз данные есть — нужно их как-то использовать.

Сразу же добавил своему модулю функцию оповещения о незакрытых дверях на скорости выше 10 км/ч.

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

Потом вспомнил, что на Peugeot была штатная функция автоматического запирания дверей на скорости. Очевидно, что тут тоже такую же функцию добавить… но уже не на прототипе (к сожалению, управление центральным замком в Mazda невозможно через CAN-шину, хотя в некоторых других машинах это вполне реально).

Естественно, пригодились все полученные знания в процессе создания и эксплуатации прототипа (тот же резистор на 120Ом в CAN-шине для работы дисплея).

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

Часть восьмая: Продакшн


Устройства произвели не слишком оперативно — на это ушло почти 3 недели. Но почта увеличила срок ожидания еще почти на месяц. Но не будем о грустном, поскольку получилось неплохо:


Часть девятая: Настройки

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

Несколько дней тестировал изделие в своем авто — никаких нареканий, все работает отлично.

Часть десятая: Продолжение?

На текущий момент все платы отправлены их новым владельцам. Как только они будут установлены, надеюсь, получу дополнительные отзывы.
Перед отправкой успел одну из плат подключить к Mazda CX-7 — почти все заработало сразу (некоторые данные маршрутного компьютера закодированы чуть иначе), но в целом — подключение прошло успешно.
Сейчас устройство (с текущей прошивкой) проверено на Mazda3, 5, 6 (там где дисплеи похожи на те, что я использовал в процессе разработки).

После адаптации прошивки, думаю, устройство может оказаться полезным практически на любом современном авто, где вывод на дисплей (или приборную панель) осуществляется через MS-CAN.

Часть последняя: Arduino?

Ответ очень прост: все программирование я делал в среде Arduino.


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

Как я уже писал в предыдущей статье — мне нужно свести в единую кучу информацию с довольно большого количества различных датчиков и механизмов. Пока такой информации было немного — я собирался примостить несколько показометров где придётся. Как-то это было не принципиально. Но вал количества необходимой информации нарастал стремительно и в определённый момент я понял, что отображение всего этого безобразия переросло в отдельную проблему. Увешивать весь салон автомобиля циферблатами я не имел ни малейшего желания. Такого счастия мне не надо:


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

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

1). В случае манипуляций с климат-контролем, управление которого тоже переселяется в самодельный блок управления. Нажал любую из клавиш климат-контроля — на экране СРАЗУ отображается раздел с информацией по этой теме.

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

4). Естественно, в случае включения заднего хода переключаемся на камеру заднего вида.

Все остальное время магнитола выполняет свои штатные функции.

Для более тесной интеграции в автомобиль формирование картинки будет осуществляться непосредственно разрабатываемым компьютером — никаких программ под Андроид я писать не собираюсь…
Только такой подход обеспечивает мгновенную реакцию и надёжную работу экрана.

Именно потому так много времени у меня заняла тема формирования качественного низкочастотного композитного видеосигнала для подачи на RCA-вход камеры заднего вида 2DIN-магнитолы.

На пике коронобесия я снял с автомобиля магнитолу, снял со стены телевизор, поскрёб по сусекам в поисках кой-какого электронного барахла и устроил себе недельную самоизоляцию на своём домашнем рабочем месте…

Самое забавное — я так и не сумел вывести монохромное изображение на экран магнитолы. Чего я только не пробовал… На экране жк-телевизора картинка отображалась без особых танцев с бубнами, а на экране магнитолы в лучшем случае мелькали куски изображения. Вероятно чип магнитолы слишком требователен к качеству формируемого видеосигнала…

Даже тяжёлая артиллерия в виде Arduino DUE с библиотекой от stimmer`а ничего не изменила в итоге — изображение всё также еле угадывалось по отрывочным всполохам.
На экране телевизора картинка была устойчивая и даже цветная, но гадкая до неприличия именно из-за своей цветности. Кто видел расфокусированный кинескопный цветной телевизор — тот поймёт.

Когда руки у меня опустились, я в полном расстройстве чуфств перелопатил свое творение под формирование VGA-сигнала буквально тремя резисторами. По всем прикидкам изображение должно быть намного лучше — так оно и вышло. Картинка на компьютерном мониторе получилась просто зашибись:


На экране жк-телевизора она смотрелась несколько хуже, но не принципиально.

Такое качество изображения меня вполне устраивало, но всё портило одно обстоятельство — на моей автомагнитоле нет ни VGA-входа, ни HDMI.

Деваться было не куда — я решил не терять более своего драгоценного времени и в вопросе формирования композитного видеосигнала отдался на откуп профессионалов.
Нормальные герои всегда идут в обход?

Благо поиск фабричного конвертера из VGA в RCA долго времени не занял:


Не знаю, сколько такое устройство стОит на самом деле — мне оно обошлось в пределах 20уе.
Поиск в интернэте дал только один вариант в Алма-Ате и я поскакал быстрее покупать агрегат, пока он не исчез из наличия.

Сама коробочка небольшая, греется при работе прилично… Я её не вскрывал, но судя по всему слепить подобное из говна и палок будет несколько проблематично даже при сильном желании.
Функционал устройства приятно впечатлил, картинка с компьютера на экране телевизора отображалась очень даже прилично — для кыно вариант в самый раз. Молодцы китайцы. А вот надписи на экране были практически нечитаемы — реальное разрешение у композитного сигнала некудышнее. Увы…

На экране магнитолы картинка меня качеством не впечатлила — изображение было слегка замыленное и мерзко дрожащее. Ситуацию заметно улучшило переключение видеокодека на формат NTSC-J. Даже NTSC-M слегка хуже, а PAL в своём многообразии так весь отстой полный. Понятно, что это уже определяется уровнем качества видеовхода магнитолы(на телевизоре такой заметной разницы нет), но настроение мне это слегка попортило.

После всех ковыряний итог получился такой:


Фотографии неудачные — смартфон очень плохо берёт прямые источники света.
В реальности изображение довольно качественное. Так выглядят чистые цвета:


Что мне и требовалось.
Картинка низкого(320*240) разрешения, сформированная всё той же связкой Arduino DUE с библиотекой stimmer`а в версии VGA, пропущенная через конвертор с расстояния вытянутой руки смотрится чуть хуже, но тоже вполне достойно:


Проект можно посмотреть здесь — stimmer.github.io/DueVGA/
Проблема только одна — библиотека stimmer`а написана 7 лет назад и фактически брошена автором на призвол судьбы — не фиксится и не развивается более.


Мне же нужна приличная графика, чтобы формировать подобные вещи:



Потому мне необходим инструмент помощней.
А раз уж я переключился с формирования композитного сигнала на формирование VGA — то и выбор мой расширился на порядки.

Формирование VGA намного проще — потому готовых проектов для повторения просто море.
Потому я в ближайшее время собираюсь таки заказать себе ESP32 и поиграться с ним — он должен формировать в разы лучшее изображение(от 640*480 и выше при 64 цветах) при меньшей вероятности затыков от выполнения параллельных задач, которых у меня будет много.

Определюсь с окончательной платформой и начну уже наконец реальное строительство своего газодизеля.

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