07.02.2011, 12:17 | #1 |
Пользователь
Регистрация: 19.07.2008
Возраст: 41
Город: Алматы
Регион: Казахстан
Машина: 2006\Subaru\Legacy
Сообщений: 49
|
История одного радио для CarPC
Ну вот и у меня дошла очередь до радио.
Желание было давно, но все время что-то мешало. Идея сделать радио была либо из оставшейся без дела родной головы легаси, либо из, лежавшей без дела, магнитолы пионер, которая, в свою очередь, была первой переделкой в моей машине. Выбор пал на пионер... Моделька магнитолы - DEH-5850 Изучение схемы тюнера показало что .... да ничего особо сначала не показало.... Решено было что вскрытие покажет, но не тут то было... Внутри корпуса тюнера две микрухи c гордой надписью Pioneer PM4013A и PM4014A. Поиск в гугле мне ничего не дал, только заказ данных чипов. Далее была попытка соснифать пакеты с помощью осцила с лоджик аналайзером. Тут был первая удача - стал понятен протокол - SPI и разобран пакет смены частоты радио. Но все оказалось не так просто. Оказалось что тюнеру необходим так же сигнал на включение. Далее была проделана та же процедура "снифанья" и анализа пакетов включения, но не тут-то было, на осциле мы нашли 30 байт данных, но, к сожалению, при отправке их тюнеру он никак не реагировал и категорически не хотел включаться. После этого был собран анализатор пакетов SPI и трансляции их в ком-порт на демоборде Pickit2 PIC16F887. Оказалось что всего байт летит 525 , и послать их все уже более проблематично... Целый месяц ушла упорная борьба найти таки этот уникальный пакетик чтобы включить тюнер, но напрасно. Ситуация осложнялась тем, что клоки и дата у процессорного блока пионера были не совсем стандартные, и еще CE (chip enable) работал не в ту сторону. Каждый пятый байт съезжал на 1 бит... При очередном заседании и мольбе над тюнером, мой друг Антон буквально ткнул пальцем в небо и поменял 1 байт из 30, которые мы слали тюнеру для его включения. И вот она удача - тюнер включился! Но радости было немного... Оказалось что по дефолту он включается на тихом уровне громкости (я так и не узнал есть ли у него цифровая регулировка уровня сигнала, но судя по схеме, за громкость отвечал уже другой блок...). Далее долгие и безуспешные попытки были найти этот заковыристый пакетик из 5 байт, который отвечал за "громкость". Тем временем приехала платка Кипарисс. Очень здоровский лоджик аналайзер! С ее помощью были соснифаны все те же байты, передаваемые тюнером на включение. И вот спустя еще несколько дней, злощастный пакет был найден! Дело оставалось за малым - сделать интерфейс для тюнера. Для этого был взят МК PIC16F628, единственное но было в том, что у него нет аппаратного SPI. Но ситуацию это не испортило, т.к. уже были наработки по программной реализации SPI на этом МК. Для питания тюнера понадобилось 3.3В для цифровой части и 8.4В (и где они только взяли такое напряжение... ) для аналоговой. Питание для цифровой части выполнено на микросхеме 1117(3.3), а аналоговой - на LM317. В готовый корпус едва поместился сам блок тюнера, но место для разъемов все-таки нашлось. Вот собственно и вся история. В заключении хотелось бы сказать ОГРОМНОЕ спасибо моему другу Антону, без которого этот проект не был бы реализован. Ниже несколько фотографий. пс. Разъем, торчащий из радио - это штатный разъем для антенны субару. 1. Плата тюнера со снятой крышкой 2. Почти готовый блок (еще без разъемов) 3. Вид со стороны платы 4. Готовое утройство |
07.02.2011, 12:30 | #2 |
Administrator
Регистрация: 15.06.2005
Город: Москва
Регион: 77, 97, 99, 177
Машина: Lexus RX400h
Сообщений: 832
|
Протоколом поделишься?
__________________
Все для arduino. |
07.02.2011, 13:50 | #3 |
Пользователь
Регистрация: 19.07.2008
Возраст: 41
Город: Алматы
Регион: Казахстан
Машина: 2006\Subaru\Legacy
Сообщений: 49
|
А пожалуйста, мне не жалко!
C6 00 16 4E 03 turn on C7 33 32 68 00 vol up 81 37 10 8D 48 freq change C6 00 62 4E 01 turn off по частоте: второй и третий байты (37 и 10, в данном примере - 103.5 МГц) второй байт - младший байт третий байт - старший байт Шаг - 0.05 МГц Есть одно но - необходимо сделать реверсию байт чтобы понять смысл, пример, для 103.55Мгц байт будет B7, а весь пакет 81 B7 10 8D 48 |
07.02.2011, 14:53 | #4 |
Старший Пользователь
Регистрация: 09.11.2007
Возраст: 37
Город: Москва
Регион: 77, 97, 99, 177
Машина: Suzuki Skywave 400
Сообщений: 504
|
Эх, где бы мне такой тюнер взять. Ща копаюсь с тюнером на TDA7540, на него есть ДШ, но достался он мне со сломанной магнитолой, так что снифить нечего.
Команды инициализации у него представляют себе какой-то тихий ужас. Причём на плате стоит ЕЕПРОМ, в котором хранятся калибровочные данные, которые надо считать, а потом записать обратно в тюнер. В общем, чума ))) Уже почти готов бросить это дело и потратиться на рабочую магнитолу, чтобы всё слизать оттуда ))) Кстати, 8.5В видимо стандарт для магнитол какой-то. |
07.02.2011, 15:52 | #5 |
Пользователь
Регистрация: 19.07.2008
Возраст: 41
Город: Алматы
Регион: Казахстан
Машина: 2006\Subaru\Legacy
Сообщений: 49
|
Ну на моем тюнере тож стоит ЕЕПРОМка и туда тож что-то пишется...
Например туда записываются данные о радиостанциях. Но мне это не нужно, и я ее не юзаю, хотя на плате на всякий случай развел и распаял. Думаю что и в вашем примере похожая ситуация, тем более у вас есть даташит! Вам только читать и делать! |
07.02.2011, 16:14 | #6 |
Старший Пользователь
Регистрация: 09.11.2007
Возраст: 37
Город: Москва
Регион: 77, 97, 99, 177
Машина: Suzuki Skywave 400
Сообщений: 504
|
Там даташит явно для тех, кто всю жизнь разрабатывал цифровые тюнеры ))) Куча аббревиатур, которые нифига не гуглятся...
И к тому же у меня такое чувство, что сам по себе тюнер тоже подубитый, ибо работает нестабильно, иногда прижмёт ACK, иногда нет (протокол i2c)... И чип греется оч подозрительно. По разводке несколько раз проверял, всё правильно. А в еепромке явно хранятся какие-то данные нужные для запуска тюнера, ибо есть даже даташит именно на тюнер, а не на мк, там хоть какие-то стандартные значения даны, но половину этих значений предлагают читать из еепромки (для разных стран - разные адреса). Проблема в том, что до неё я пока вообще достучаться не могу... |
07.02.2011, 16:22 | #7 | |
Administrator
Регистрация: 15.06.2005
Город: Москва
Регион: 77, 97, 99, 177
Машина: Lexus RX400h
Сообщений: 832
|
Цитата:
__________________
Все для arduino. |
|
20.02.2011, 16:27 | #8 |
Пользователь
Регистрация: 14.10.2010
Возраст: 41
Город: Одесса
Регион: Украина
Машина: Mazda 323F
Сообщений: 60
|
А как управляется?
с какойто програмки? |
20.02.2011, 16:30 | #9 |
Пользователь
Регистрация: 19.07.2008
Возраст: 41
Город: Алматы
Регион: Казахстан
Машина: 2006\Subaru\Legacy
Сообщений: 49
|
Управляется из моей программы-оболочки, которая сейчас в процессе обработки.
Но есть просто демка. При желании можно сделать плагин для ЦФ, но не нравится мне она.... |
20.02.2011, 21:51 | #10 |
Модератор
Регистрация: 27.05.2008
Возраст: 50
Город: Пермь
Регион: 59
Машина: INDESIT/2007
Сообщений: 1,330
|
Плагин нужен. И то с чем он работает.
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | Поиск в этой теме |
|
|