PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Для новичков (http://pccar.ru/forumdisplay.php?f=9)
-   -   Ардуино подключить к магнитоле (http://pccar.ru/showthread.php?t=20244)

rerur 10.01.2014 14:54

Ардуино подключить к магнитоле
 
Поставлена задача управлять магнитолой с планшета с помощью Arduino nano. Вдохновили успешные реализации на данном форуме.
Все делается мной впервые, поэтому нужна помощь в тупиковой ситуации.

Имеется простая штатная магнитола реализованная на чипе TEF6902A http://www.nxp.com/documents/data_sheet/TEF6902A.pdf
Шина I2C на магнитоле подтянута 10кОм к 3.3В
Напряжения на SDA и SCL 2.2В в спокойном состоянии, при нажатии на кнопки магнитолы появляются импульсы до 3.3В Почему так происходит? Вроде уровни должны падать при передаче.
Подключил Ардуину. В режиме сниффера ничего не читает.
Запускал разные скетчи. Например поиск адресов подключенных устройств заканчивается зависанием. Иногда происходят самопроизвольные действия магнитолы, передается какая-то каша.

В каком направлении смотреть? Какое напряжение должно быть на шине I2C в данном случае?
Сам думаю, что нужно где-то поттянуть. Подскажите.

Vladget 10.01.2014 16:04

Могу ошибиться конечно, но мне так кажется что на соседнем форуме как то больше любителей "ардуины"

s.m. 10.01.2014 17:03

Цитата:

Запускал разные скетчи. Например поиск адресов подключенных устройств заканчивается зависанием. Иногда происходят самопроизвольные действия магнитолы, передается какая-то каша.
Магнитола была включена при этом или выключена? А вообще не нужен поиск адресов - адрес микрухи зашит в нее намертво и есть в даташите, как и полный протокол управления. Что нужно делать в магнитоле c Ардуины?
Если не нужно управление локальное с самой магнитолы - ее проц лучше отключить, сняв с него питание.
Но если проц жив, поставить в сниффере адрес нужного получателя и тупо снять протокол, так гораздо легче разбираться.

s.m. 10.01.2014 17:07

Цитата:

Сообщение от rerur (Сообщение 282872)
Подключил Ардуину. В режиме сниффера ничего не читает.
Запускал разные скетчи.

Здесь были?

rerur 10.01.2014 19:18

Цитата:

Сообщение от s.m. (Сообщение 282883)
Магнитола была включена при этом или выключена? А вообще не нужен поиск адресов - адрес микрухи зашит в нее намертво и есть в даташите, как и полный протокол управления. Что нужно делать в магнитоле c Ардуины?
Если не нужно управление локальное с самой магнитолы - ее проц лучше отключить, сняв с него питание.
Но если проц жив, поставить в сниффере адрес нужного получателя и тупо снять протокол, так гораздо легче разбираться.

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

По даташиту, я адрес узнал, но он не читался. Там два варианта адреса. Выбрал свой вариант - посмотрел на плату контакт адреса не заземлен значит адрес 61. Когда попробовал второй вариант 60, начало что ловиться. Беда в том, что все это не стабильно, какие-то куски доходят обрывками. Может внезапно измениться звук, частота радио, или вообще выключиться.

Оба сниффера работают в логическом плане, что-то же они отлавливают при определенных неведомых условиях.

Отсоединил морду, напряжение на шине немного увеличилось. По ощущением положительных попыток стало больше. Еще когда магнитола нагреется, вообще ничего не ловится.

lti1 10.01.2014 19:29

А логические уровни 3,3 и 5в согласовали?
модуль согласование логических уровней 3,3 и 5в
Вместо BSS138 можно использовать BS170.

rerur 10.01.2014 19:55

Цитата:

Сообщение от lti1 (Сообщение 282903)
А логические уровни 3,3 и 5в согласовали?
модуль согласование логических уровней 3,3 и 5в
Вместо BSS138 можно использовать BS170.

Чувствую, что надо что-то согласовать. Но вроде в моем варианте нет 5В
Как тогда?

lti1 10.01.2014 20:04

Цитата:

Сообщение от rerur (Сообщение 282905)
Чувствую, что надо что-то согласовать. Но вроде в моем варианте нет 5В
Как тогда?

Arduino nano 5 вольт, а на магнитоле у Вас 3.3 вольта.
Цитата:

Сообщение от rerur (Сообщение 282872)
Шина I2C на магнитоле подтянута 10кОм к 3.3В


rerur 10.01.2014 20:12

Спасибо, буду дальше копать.
Почему-то думал что на ардуино 3.3В

lti1 10.01.2014 20:33

Вот еще ссылка на схему согласования уровней, она сложнее, но я именно по ней согласовывал arduino и pioneer по тому как ее раньше нашел, чем ту что выше указал.
В Вашем случае и по первой и по второй схеме резистор в 10 кОм на стороне 3.3 вольта не нужен, он уже стоит в магнитоле.

Вот эту тему еще почитайте.


Часовой пояс GMT +4, время: 21:47.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot