Дисплей от магнитолы к ардуино

Обновлено: 01.07.2024

Автомагнитола и Ардуино

  • Автор темы profyev
  • Дата начала 28 Сен 2018

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

profyev

28 Сен 2018 97 5 35

Всем доброго времени суток!

Есть магнитола в авто, нужно симулировать органы управления с передней панели: 3 кнопки и инкрементальный энкодер. Если с кнопками проблем нет, то энкодер победить не получается. От него выходят 9 ножек: две это кнопка энкодера, еще 2 замыкаются (через раз), когда поворачивается ручка, а все остальные ноги - не известно. но пи этом энкодер в магнитоле работает, т.е. проц понимает направление вращения колеса. Кто поможет победить энкодер?

Wan-Derer

Команда форума

profyev

28 Сен 2018 97 5 35

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

profyev

28 Сен 2018 97 5 35

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

Решил познакомиться с Arduino, в качестве первого задания выбрал работу с панелькой от магнитолы PANASONIC CQ-DFX683N. Саму магнитолу у меня украли много лет назад, а панелька дождалась своего звёздного часа.
Вложение 44417

Нагуглилась сервисная инструкция на магнитолу, разборка подтвердила, что дисплеем управляет чип 75854. Для связи чипа c процессором головы используется протокол CCB Вложение 44418, формат пакетов описан в документации на 75854 Вложение 44419. На панель подаётся два напряжения питания +5В и +9..10В. По линии +5В измеренное потребление составляет 6мА при передаче данных и 0,2мА при отображении (режимы энергосбережения не изучал); по линии +9В - 60..65мА в зависимости от отображаемой информации

Первым делом подпаялся к контактам разъёма панели - для этого идеально подошёл 14-жильный шлейф с IDC-разъёмом [шлейф с IDC-разъёмом.
Вложение 44421
Собрал в кучу панель, ардуино и два преобразователя напряжения, обмотав всё клубком проводов.

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

Сам дисплей состоит из 8 знакомест по 13 сегментов, т.е. на него можно вывести не только цифры, но и страшненькие буквы, и множества служебных знаков. Первый вариант скетча просто зажигал все сегменты, следующий зажигал их последовательно, группами и т.д. В результате через пару часов я получил таблицу в Excel, в которой были прописаны 8*13 сегментов. Никакой системы в нумерации сегментов нет - почти случайный порядок. В дальнейшей по этой таблице составлял маски для отображения символов.
Вложение 44422

Итого, скетч на ардуино считывает из последовательного порта 32 байта и отправляет их в панель. Программ на PC формирует эти самые 32 байта и отправляет в порт. Вся логика реализована на PC (знакогенератор, формирование битовых масок, прокрутка текста и проч).

Следующие задачи:
- попробовать использовать не аналоговые пины ардуины, а цифровые;
- перенести знакогенератор в ардуино и научить её самостоятельно прокручивать текст (нужен простейший управляющий протокол);
- считать состояние кнопок;
- научить ардуину прикидываться HID-клавиатурой;
- …
- купить нормальную магнитолу, научиться не только писать на дисплей, но и считывать с него, написать “всеобъемлющую универсальную программу с неограниченными возможностями” (с) и вывести информацию с дисплея магнитолы на экран андроид-устройства.

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

В процессе имел тяжёлый опыт с Visual Studio Community: примеры работы с последовательным портом не работали никак от слова вообще. Ни в C++, ни в VB. Потом наткнулся на блог одного инженера, который подтвердил, что MS-реализация работы с COM-портом - одна из худших. При этом processing и putty работали совершенно нормально. В итоге остановился на Lazarus.

Доброго времени!
Имеется дисплей от рено симбол.
Модель AFFA2++
Код производителя P8200028364 A
Хочу построить на его базе что-то типа метеостаеции. Нравится он мне тем, что он уже имеет часы и термометр. А остальная часть дисплея использовалась для вывода информации с магнитолы. Одна строка на 8символов. Так же он имеет поддержку матричной клавиатуры 3х3. И умеет управлять подключеным к нему устройством (магнитолой) по той же шине, что передается ияформация на дисплей.
Уперся в протокол передачи данных
По описанию производителя говорится, что протокол используется I2C. На сколько я понял I2C использует два проводника (data и clock), но тут используется 3 контакта (data, clock и mrq). Пробовал подключаться по дата и клок и запускать скетч multyspeedI2Cscaner. Он ничего не находит.
Помогите разобраться в проблеме.
Я не прошу сделать все за меня- я прошу помочь мне сд
Если нужны распиновки все выложу.елать все самому.
С чего начать идентефикацию протокола и как в этом всем разобраться?
Благодарю.

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


Возможность применения Arduino в автомобиле для его улучшения

Самый распространенный проект на Ардуино для автомобиля – установка в машине ЖК-дисплея с особыми функциями и показателями.

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

Если Аrduino для автомобиля совместим с IDE Teensy 3.6, то читается анимированный растровый образ машины и резервные датчики. Каждый из четырех датчиков на своем месте, так же, как и анимационная картинка автомобиляоторая меняет цвет, исходя из того, насколько близко объект находится к машине (только зеленый означает <5 футов, зеленый и желтый означает <2,6 фута и зеленый, желтый, а красный означает <1 фут).


Этот Ардуино проект для авто очень сложный, потому что резервные датчики взаимодействуют с приемопередатчиком, а затем отображают информацию на маленький ЖК-дисплей.

Проприетарный протокол связи не является типичным, как например, I2C, UART, CAN, USB и так далее. Свойства протокола могут различаться в каждом случае, в зависимости от поставщика.

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

Биты под номерами 0-5 не несут никакой существенной информации и не кодируются.иты 6-8 соответствуют датчикам с названиями A, B, C или D. Необходимо загрузить эскиз в IDE Arduino, который считывает датчики и выводит данные через последовательную консоль.

Основными причинами, по которым нужно использовать Teensy 3.6 вместо UNO, остается скорость, с которой Teensy может читать SD-карту и отображать изображение с помощью драйвера дисплея RA8875. При использовании UNO процесс займет около 8 секунд, в то время как с Teensy 3.6 займет 1,8 секунды.

Для дальнейшего конструирования проекта с Аrduino для автомобиля потребуется сделать трехмерную печать верхней и нижней крышки ЖК-дисплея для его защиты. В машине необходимо предварительно просверлить отверстия для датчиков.

Какие датчики можно подключить к Ардуино

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

  1. Адаптер Freematics OBD-II.
  2. Резервные датчики.
  3. 7-дюймовый ЖК-дисплей TFT.
  4. Драйвер для дисплея LCD на базе SPI.
  5. Микропроцессор Teensy 3.6.
  6. Специальный уровень Shifter.
  7. 74HC125 Tri State Buffer IC.
  8. Карта памяти MicroSD Card.
  9. Провод, конденсаторы и резисторы.
  10. Датчик температуры DS18B20.
  11. Разделитель OBD-II.
  12. Микроконтроллер Ардуино.


Подключение, запуск и настройка автоустройств на Ардуино

Для загрузки эскиза проекта Ардуино для авто в виде ЖК-дисплея в Teensy 3.6 вам необходимо установить Teensyduino. Затем вам нужно будет заменить библиотеки Adafruit_RA8875 и Adafruit_GFX в расположении библиотеки Teensy (а не на вашем типичном месте в документах). На Mac операционной системе нужно щелкнуть правой кнопкой мыши по значку приложения Arduino в приложениях, а затем перейти в:

/Содержание/Java/hardware/teensy/avr/libraries

В Windows данная папка находится под основным диском C, в файлах программ x86, Arduino, а затем в папке с аппаратным обеспечением. Как только вы это сделаете, вам нужно будет изменить расположение эскиза в приложении Arduino, отредактировав его в настройках – обычно библиотеки “Тинси” размещаются по следующему адресу:

/Applications/Arduino.app/Contents/Java/hardware/teensy/avr

Из-за проблемы с внутренним температурным датчиком пользователь устанавливает температурный датчик модуля DS18B20.

В zip-файле, который находится по ссылке выше, вы увидите 4 эскиза Аrduino.

  1. Загрузите эскиз display_code, если вы хотите использовать внутренний температурный датчик модуля OB2 I2C OBD-II.
  2. Загрузите эскиз display_code_with_new_temperature_sensor, если вы хотите использовать модуль DS18B20.


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

Заглянув в разводку OBD-II, электронщик обнаружит, что линия питания 12 В к разъему OBD-II всегда подключается непосредственно к батарее. Чтобы обойти это, необходимо купить разветвитель OBD-II и отрезать провод, идущий на контакт 16 на одном из двух разъемов на сплиттере, а затем подключить этот разрезаемый провод к добавлению проводки.


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

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

Кроме того, пользователь может добавить кнопку “стоп-старт” на Ардуино для своего дисплея с параметрами для автомобиля.

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