Дисплей от магнитолы к ардуино
Автомагнитола и Ардуино
- Автор темы 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 для автомобиля потребуется сделать трехмерную печать верхней и нижней крышки ЖК-дисплея для его защиты. В машине необходимо предварительно просверлить отверстия для датчиков.
Какие датчики можно подключить к Ардуино
В конечном итоге, пользователь получит отличное приспособление, контролирующие все возможные параметры автомобиля. Список деталей, которые понадобятся для создания этого ЖК-дисплея Ардуино для автомобиля, приведен ниже:
- Адаптер Freematics OBD-II.
- Резервные датчики.
- 7-дюймовый ЖК-дисплей TFT.
- Драйвер для дисплея LCD на базе SPI.
- Микропроцессор Teensy 3.6.
- Специальный уровень Shifter.
- 74HC125 Tri State Buffer IC.
- Карта памяти MicroSD Card.
- Провод, конденсаторы и резисторы.
- Датчик температуры DS18B20.
- Разделитель OBD-II.
- Микроконтроллер Ардуино.
Подключение, запуск и настройка автоустройств на Ардуино
Для загрузки эскиза проекта Ардуино для авто в виде ЖК-дисплея в 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.
- Загрузите эскиз display_code, если вы хотите использовать внутренний температурный датчик модуля OB2 I2C OBD-II.
- Загрузите эскиз display_code_with_new_temperature_sensor, если вы хотите использовать модуль DS18B20.
Вскоре после установки дисплея пользователь поймет, что дисплей работает даже тогда, даже когда автомобиль выключен.
Заглянув в разводку OBD-II, электронщик обнаружит, что линия питания 12 В к разъему OBD-II всегда подключается непосредственно к батарее. Чтобы обойти это, необходимо купить разветвитель OBD-II и отрезать провод, идущий на контакт 16 на одном из двух разъемов на сплиттере, а затем подключить этот разрезаемый провод к добавлению проводки.
Затем, используя мультиметр, необходимо заглянуть в коробку предохранителей на стороне водителя и протестировать существующие предохранители, чтобы узнать, какой предохранитель получил питание после того, как ключ был включен в зажигание.
В конце пользователь подключает добавочный провод к предохранителю, который нужен для того, чтобы дисплей теперь включался только тогда, когда автомобиль работает и находится на ходу. Проведите некоторое исследование того, как правильно добавить схему к вашему автомобилю. Многие подобные проекты описаны на нашем сайте с подробными разъяснениями.
Кроме того, пользователь может добавить кнопку “стоп-старт” на Ардуино для своего дисплея с параметрами для автомобиля.
Читайте также: