При упоминании сего труда и его плодов в своих сообщениях, соц. сетях, сайтах и проч. прошу давать ссылку на оригинал, т.е. сюда.
Есть у меня наш НИССАН 12, есть в нём кнопки с телефончиком на руле и консоли, есть даже микрофон в стойки водителя, а связи нет...
Хочу что бы она была. Была со штатного места и со штатными кнопками.
Для того что бы повторить нижеописанное, нужно немного уметь паять и кроме 100 ваттного паяльника (который обычно лежит в старом чемодане с инструментом) иметь хотя бы 40 ватный с тонким наконечником (ну или водить знакомство с умеющим человеком)))
А вообще ГЛАЗА БОЯТЬСЯ - РУКИ ДЕЛАЮТ не мне вам об этом рассказывать
Сейчас есть версия поновее, но статью всё равно рекомендую почитать для общего ознакомления.
А за версией 3.0 прошу сюда
Немного Теории и Идеи
Посмотрим схему подключения телефона
Видим, что на здоровенном разъёме телефонного адаптера M145 присутствуют контакты от микрофона (3,4) и вывод на аудиосистему (1,2). Таким образом сюда можно подключить всё что может слушать микрофон и выдавать звук. Телефон не очень удобен, как стационарное оборудование в автомобиле, но вот bluetooth - это что надо. Не станем изгаляться с каким-то специфическим железом. У меня лежала старая гарнитура у которой давно сдох аккумулятор и оторвался микрофон, вот её туда и определим в качестве аудио канала между авто и мобильником.
Тут возникает один момент... для того что бы звук с гарнитуры появился в аудиосистеме нужно контакт 7 замкнуть на массу - это MUTE, по нему аудиоголова понимает, что телефон запрашивает аудиоканал. Если бы в гарнитуре где-то явно появлялся сигнал, что есть звонок или просто она стала активной... было бы проще, но я такого не нашёл. В руководстве пользователя по гарнитурке было сказано, что информационный светоиндикатор мигает раз в секунду, когда есть активность. Это я и использую.
Покупаем вот такую штуку http://ru.aliexpress.com/item/1PCS-N...035011839.html ARDUINO NANO, он будет декодировать состояние гарнитуры и включать MUTE при её активации.
Идём дальше и видим контакты 14 и 15. Нам очень повезло... Я листал схемы нашего авто и только на листе с телефоном эти контакты подписаны j1850+- это значит, что обмен данными между мобильником и авто происходит по старенькому американскому автомобильному протоколу j1850, а +- говорит о том, что используется вариант протокола PWM.
Эта шина объединяет аудио, климат, телефон, кнопочную консоль к которой подключены левые кнопки мультируля (если у вас рестайл) и может что-то ещё. Кстати говоря, идентификационная информация от аудио ходит по этой шине и, если с ней проблемы (с шиной), то вы так же получите надпись SECURE на дисплее. Я не хотел изобретать велосипед и попытался найти в инете готовые формы для декодирования, но постоянно натыкался на часть VPW протокола, по PWM реализации для контроллеров AVR (это наш ARDUINO NANO) я так и не нашёл. Сел таки изобретать велосипед. После его изобретения я случайным образом наткнулся на большой проект по диагностике по ODB, включая так же наш J1850PWM https://code.google.com/p/avrobdii/s...2Ftrunk%2Fcode, где честно позаимствовал идею буферизации принимаемых пакетов.
В общем всё прошло удачно. Все кнопки с консоли декодируются довольно однозначно, а значит при нажатии кнопок с трубкой, мы подаём сигнал на гарнитуру параллельно основной кнопки управления блютушкой (та что для ответа и вызова).
Таким образом имеем: при входящем вызове светодиод начинает моргать раз в секунду и Arduino включает MUTE и держит его пока это светодиод не будет себя вести иначе, в это время мелодия вызова звучит в правом динамике, так как аудиовыход с гарнитуры мы подпояем к необходимым контактам разъёма телефонного адаптера; Мы жмём трубку на руле и Arduino как-бы жмёт на гарнитурке клавишу ОТВЕТ, слышим собеседника в динамике, а микрофон авто уже подключен вместо микрофона гарнитуры и она передаёт наш голос в эфир. ВСЁ РАБОТАЕТ!!!
Теперь Схема
Схема полностью проверена и работоспособна. Единственный недостаток: мне не удалось избавиться от небольшого эха, которое слышат мои собеседники. Штатный микрофон достаточно чувствителен или моих знаний в этой области не достаточно. ИСПРАВЛЕНО
В центре макетной платы модуль Arduino Nano
он установлен в разъёмы на макетке 2 по 15 female header типа этого
под ним штыревой двухрядный разъём pinheader 2х18 типа этого
он спаян на обратную сторону платы и соединяется с первыми двумя рядами большого трёхрядного разъёма телефонного адаптера авто. Контакты с 1-ого по 36-ой.
Ещё ниже разъёмчик штыревой однорядный pinheader как и выше, но он уже выходит на нашу сторону где Arduino и подключает платку Гарнитуры к нашей макетке.
Выводы гарнитуры (микрофон, динамик, питание от батареи, светодиод и кнопка ответа) паяются тонким проводом МГТФ на соответствующие места гарнитуры с одной стороны и разъёма female header (как под Arduino) с другой для стыковки с макеткой.
Вывод кнопки и светодиода я разъясню подробнее с фото позже.
На Элементах U1 и U2 сделаны два стабилизатора напряжения на 5 Вольт для Ардуино и 3.7 Вольта для питания гарнитуры (подстроечным резистором RV1 необходимо настроить стабилизатор на 3.7 вольта перед подключением гарнитуры). Изначально была идея взять 3.3 Вольта с Ардуино, но оказалось, что этого мало для гарнитуры. Она работает, но ругается на низкий заряд батареи.
На Ардуино можно и сразу падать 12 Вольт от авто, но у меня что-то случилось во время экспериментов и пришлось делать внешний источник на 5 Вольт, так как внутренний отказал...
Реле эмитирует нажатие кнопки ответа гарнитуры, можно попробовать и электронное поставить, но у меня такого не оказалось и я установил миниатюрное реле на 12 вольт.
4-ёх контактный разъём J6 нужен для вывода кнопки ответа и\или индикатора состояния гарнитуры на видное место, но я не знаю ещё буду выводить его или нет, но он есть, если что.
Практика или как спаять, если опыта не достаточно.
Для начала переписываем номиналы всех деталек:
-Макетная плата 120мм*80мм, двухсторонняя, лучше с окантовкой по периметру для минуса/земли(массы) как на фото моей платы
-Конденсаторы электролитические (вольты в подписях к коденсаторам 10uF x 25V соблюдать, ёмкость ставить можно больше)
-Конденсатор С4 керамический
-Резисторы мощностью 0,25 Вт
-Подстроечные резисторы я брал вот такие http://www.taydaelectronics.com/medi...top_adj_12.jpg
-Светодиод любого цвета и размера (можно не ставить вообще, т.к. это просто индикатор наличия питания)
-Регуляторы напряжения LM7805 и LM317 в корпусах TOP220 (это большой корпус, с ним удобнее)
-Коннекторы pinheader (папа) (для соединения с авто и гарнитурой) обычно продаются по 40 пинов в линейке.
-Коннектор femaleheader (мама) (для Ардуино и гарнитуры).
-Реле... я использовал то, что было у меня SHARK V23092-A1012-A301, подойдёт любое другое на 12 Вольт, а может и электронное попробуете.
-Транзистор самый обычный BC574
-Диод в катушку реле (1n4148 или 1n4001 или что-нибудь подобное)
Будет нужен паяльник с тонким жалом. Видел в одном магазине (где всё по 38р или уже по 42 ) маленькие паяльнички. Сам не пробовал, но мне кажется на раз должно хватить.
Припой можно уже с канифолью внутри http://www.partsdirect.ru/goods/3498...kqEaAojH8P8HAQ
Канифоль/флюс/пасту какую-нибудь, что бы хорошо паялось (дадут там же в магазине)
Провод МГТФ (монтажный, бледнорыжый такой) для создание электрической связи между деталями, коннекторами и питанием.
Начинаем паять
Я расположил на плате сначала коннекторы, сделал это таким образом
все они выровнены по левому краю.
Коннекторы femaleheader для Ардуино нужно отрезать по размерам, надеть на сам Ардуино и впаять в таком состоянии.
Двойной коннектор pinheader втыкается с обратной стороны платы. (Если двойного нет, то берём длинный однорядный, отрезаем два по 18 и впаивает их в два ряда с обратной стороны платы).
Однорядный коннектор для гарнитуры ставится со стороны Ардуино. Он 10 pin в длину, там 2 лишних их можно убрать вовсе и впаять только 8pin.
Дальше втыкаем элементы регуляторов напряжения, конденсаторы, резисторы и прочее и припаиваем их по ходу втыкания.
При пайке Регуляторов напряжения внимательно смотрите нумерацию ног и что куда идёт. С виду они похожие, но подключаются они по-разному.
На электролитических конденсаторах указана полярность, соблюдаем. У С4 полярности нет.
Все конденсаторы и многие другие элементы одной ногой припаяны к минусу. Я в таких случаях паяю их ближе к окантовке платы и соединяю с ней, а саму окантовку подпаиваю к минусу.
Ножки элементов можно подгибать с обратной стороны платы и спаивать между собой не используя провод МГТФ. А все остальные электрические соединения делаются этим проводом, зачищенным и залуженным по краям на 2мм. как-то так примерно http://www.youtube.com/watch?v=W3IzjLH5FOM
Зачищать этот провод не оч удобно, но кусачками можно принаравиться. А можно взять мысль отсюда http://forum.easyelectronics.ru/view...hp?f=15&t=1756
После сборки выньте Ардуино из разъёмов и подайте напряжение 9-12 вольт на цепь питания (вход LM7805). Замерьте напряжение на 1-ом pin разъёма гарнитуры и крутя RV1 установите его на 3.7 вольта. Замерьте напряжение на 4-ом pin разъёма гарнитуры и крутя RV2 установите его на 0,5 вольта. Установите сопротивление RV3 между минусом и средним выводом в 10кОм - это громкость на динамик, после установки сами отрегулируете как надо вам.
По отдельному желанию (опционально) придумываем кнопку с подсветкой (или просто индикатор), подключаем к J6. Только для того что бы душа была спокойна при виде вспыхивающего огонька сигнала БТ гарнитуры где-нибудь на видном месте, что бы все видели, что такая штука есть и чувство удовлетворённости было совсем уж полным.
Я пока не добрался до этой опции и приходится хвастаться голословно, так как новоиспечённый адаптер не виден пассажиру
Подпайка гарнитуры
Наверно, для не оч опытного паятеля это будет самая трудная задачка, но я надеюсь, что этот паятель уже набил руку на основной плате и набравшись опыта легко справиться с задачей
Для начала разбираем гарнитуру и делаем фото, прикидываем что и куда будем паять
![]()
Минус микрофона можно не выводить, так как он общий с питанием, а вот минус динамика выводим. Само питание подводим вместо батарейки.
Провод МГТФ напаиваем так, что бы хвосты проводов уходили в одном направлении, пока особо не отмеряем их длинну, а делаем с запасом. Позже мы возьмём все их в кучу и разом обрежем под одну длину.
Отпаиваем имеющиеся провода и получаем готовые площадки для основного питания, микрофона и динамика.
Остаётся подпояться к светоиндикатору и кнопке.
Светоиндикатор (он же светодиод) оьычно включается через транзистор, корой можно увидеть рядом на платке и проследить от светодиода по дорожке. Вот моя платка:
Нужно напаять провод между светодиодом и транзистором прям на ножку транзистора, что бы провод крепче держался.
Затем кнопка.
С ней я немного помучился (минут 10). Смотря на плату кажется, что в кнопке два контакта, так как мы видим 4 вывода и к каждому что-то подходит. У меня поэтому и две реле установлено и 10-ти пиновый разъём подключения гарнитуры, хотя можно обойтись и восемью пинами, так как там всего один контакт,а 4 вывода для того чтобы кнопка крепче держалась и они попарно запаралеленны.
К самим ножкам паять сложно. Рекомендую подпаиваться к элементам, через которые проходят дорожки от кнопок
Я паял и с одной стороны
и другой
В результате получилось довольно крепко. Прозвонил тестером: между собой не коротит, при нажатии на кнопку провода замыкаются, на корпус самой кнопки, на минус питания не коротит тоже.
Потом отмеряем длинну получившегося пучка проводов до будущего коннектора (у меня где-то 6 см), откусываем все разом и припаиваем к будущему разъёму согласно схеме.
у меня тут коннектор длинный, я его позже откусил бокорезами по размеру.
В итоге получилось так
На всякий случай проверяем тестером, нет ли короткого замыкания между плюсом и минусом, между минусом и остальными проводами.
Втыкаем в основную доску, прошиваем, устанавливаем в авто.
Программное обеспечение
Здесь https://drive.google.com/open?id=0B1...0dEMmxKRjkyenc найдёте код для Ардуино, программу которая поймёт и прошьёт и драйвер для Ардуино с коммуникационным чипом CH340. Возможно у вас будет другая микросхема USB преобразователя, но и на неё найти драйвер не составит труда.
Что бы залить прошивку в Ардуино, установите CodeBlocks-Arduino из архива, разархивируйте папку с проектом prima_bt в
место, где нет в пути русских букв, запустите файл prima_bt.cbp.
Подключите через USB (можно прям не снимая с платы) Ардуино, установите драйвер (появиться дополнительный СОМ port в диспетчере устройств), в CodeBlocks нажмите кнопку F9. В результате проект соберётся и запуститься Arduino Builder. Нажимаете на СОМ port подключенного Ардуино (у меня COM11)? происходит прошивка (3-4 секунды). Всё. Можно втыкать в авто и пробовать.
В файлах исходника есть инфа и о других кнопках клавиатуры, но она не используется и закомментирована. Если кто захочет использовать, а сам не разберётся - обращайтесь.
============================================================ =================
Вот моя плата. Так как она периодически доделывалась и переделывалась, выглядит не презентабельно. Там аж два реле установлено, так как изначально я думал, что кнопка на гарнитуре замыкает два контакта... я ошибался.
Сверху модуль Arduino Nano, одиночный ряд подключения бт гарнитуры и сама гарнитура, с обратной стороны двухрядное соединение к разъёму под подлокотником (самому большому трёхрядному)
Думал как Всё установить, но оказалось, что плата как-раз входит плашмя в тыл подлокотника.
Взял кусок двухстороннего чёрного монтажного скотча (толстого такого на вспененной полимерной основе) и прилепил плату к пластику вот так:
там сверху видать как торчит немного скотча монтажного.
Вот подальше
А вот уже закрыто. Пепельница, кстати не мешает
Спинки передних сидений постоянно чумазые, так как моя детвора не стесняется, когда сидит вальяжно на самых удобных местах нашего авто. Так что не пинайте...
В принципе... всё![]()