В начале хочу раздать благодарности:
Chip'у и его теме Инструкции, драйвера для подключения Штатного монитора в Toyota Lexus за саму идею, подтверждение ее возможности, а также кучу инструкций по сбору и подключению CarPC на этом форуме
Cайту Toyota Corolla MP3 Project за схему, прошивки, информацию о работе AVCLan.
Теперь по существу. Прочитав схему Chip'a мне тоже захотелось подключить к своей голове компьютер и задействовать штатный тачскрин. Но цена на готовый адаптер для меня была высоковата, да и руки чесались собрать что-нибудь подобное самому.
Это мой первый собранный CarPC и первый опыт работы с микроконтроллерами, так что не судите строго.
Адаптер эмулирует CD-чейджер, при активации его со штатной головы, подается сигнал на включении адаптера AZ-FM (подробнее о нем можно прочитать здесь Адаптер подключения звука от CarPC к штатному усилителю на Toyota Lexus (опять спасибо Chip'у). Так же адаптер выдает в com-порт информацию считываемую с шины AVCLan (в ней и содержится инфа о нажатиях на тачскрин). В дополнение к этому он может передавать команды в шину.
Что он не делает в отличии от адаптера Chip'a:
1. и самое главное - не активирует RGB вход. Для активации я использую штатную навигацию. Я отключил от нее разъем с RGB (№5 по инструкции Chip'а), оставил только контакты Lan TX-, Lan TX+ (5 и 10 контакты по инструкции Chip'a). Я понимаю, что это не очень красиво, зато сильно ускорило реализацию проекта. Для эмуляции навигации нужно было провести достаточно много работы. Chip со товарищами эту работу проделали, но у них проект коммерческий и я даже не тешил себя мыслью, что они могут этой информацией поделиться.
2. не коммутирует звук от навигации.
3. Используется дефицитный нынче com-порт вместо USB
4. Может еще чего просмотрел.
Схема:
За основу была взята схема с сайта Toyota Corolla MP3 Project, я ее дополнил только ключем для управления адаптером AZ-FM.
Вид собранного адаптера:
А это адаптер установленный в компьютер вместе с AZ-FM
Подключается адаптер через com-порт на внутренний разъем на материнской плате. Потому как так-же было на оригинальной схеме, а переделать на USB у меня в тот момент не хватило квалификации. Есть в этом и плюсы: нет проблем при просыпании из hibernate.
Схема с платой в формате EAGLE Layout editor:
avclan-mini-shema.rar
Прошивка:
avclan-mini-hex.rar
В адаптер залит бутлоадер с сайта MicroSyl он позволяет перепрошивать контроллер через com-порт. Достаточно кратковременно выключить/включить ACC в машине и новая прошивка залита.
За основу прошивки взята оригинальная прошивка с сайта Toyota Corolla MP3 Project. Я ее только дополнил циклическим буфером для выдачи лога на com-порт. Т.к. без него, из-за большого трафика в шине AVCLan у меня в машине, адаптер не мог зарегистрировать CD-чейнджер, вместо этого он пытался передать полученные в шине данные на com-порт.
Софт:
avclan-mini-soft.rar
1. Калибратор тачскрина avclan-mini-calibrate.exe, запускаем жмем четыре раза на экран. Данные записываются в файл avclan.ini. Предварительно туда-же нужно записать параметры com-порта.
2. Драйвер тачскрина avclan-mini-driver.exe, берет данные из файла avclan.ini. В нем нужно описать в каком виде приходят координаты от головы (скорее всего потребуется только поменять адрес головы). А также в нем можно прописать действия на принимаемые от головы команды (например нажатия кнопок) в секциях [action_nnn].
Действиями могут быть посылка нажатия кнопок или запуск приложения.
3. Терминал предназначен для исследования работы AVCLan.
В окне терминала выводятся принимаемые с шины данные (их можно фильтровать задав фильтр в файле terminal.ini секция [filter]
А также можно передавать команды в шину с помощью соответствующих полей и кнопок F1-F8 (можно например поменять баланс, тембр, переключиться на радио и т.д.)
В зависимости от головы может потребоваться поменять в прошивке значения адресов головы и cd-чейнджера. Адрес головы нужно смотреть в терминале, этот адрес будет источником большинства сообщений. Адрес чейнджера или 360 или 240.
Адаптер эксплуатируется с лета прошлого года. Все работает стабильно. Правда активацию CD-чейнджера я довел до ума только этой весной, поэтому про стабильность этой части пока рано говорить.
Ну вот собственно и все. Прошивки и весь софт с исходниками, т.к. в основном я только обобщил чужой отыт и наработки, отдаю все обратно в свободное использование. Надеюсь, мой опыт будет кому-то полезен.
Ну а если кто-нибудь мне поможет в реализации эмуляции навигации (точнее активации RGB входа) будет совсем замечательно.
Еще заметил такую особенность: на моей голове 16030 разрешение тачскрина при работе с навигацией довольно грубое (где-то 36*22 пикселя, пишу по памяти, могу соврать, но порядок цифр такой). Но если войти в сервисное меню головы и там выбрать проверку тачскрина, то по выходу из сервисного меню разрешение становиться 1*1 пиксел и сохраняется до перезагрузки головы. Т.е. разрешение тачскрина на самом деле высокое и голова специально его загрубляет для навигации. Может кто знает как заставить голову не делать этого?