Страница 1 из 2
AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 15:29:33
ne100r
Доброго времени суток
Возникла идея создать робота: Android телефон как мозг и AVR (atmega) как спинной мозг.
- Android: вайфай, камера (или две), сильный процессор и тд
AVR (atmega): управление периферией шасси робота, серво приводы и тд
Ну вообщем Вы такого уже много где видели и тут уже все от фантазии автора зависит.
У меня возникла проблема как соединить Android телефон и AVR (atmega).
Гуглил и находил решения через USB(OTG). Все просто Андроид версии 3+ и VUSB библиотека для atmega.
Но у многих смартфоны ниже этой версии и далеко не у всех новых телефонов есть OTG.
И тут вспомнилось многое количество девайсов которые работают по аудио Jack (считывание с магнитных банковских карт, управление игрушками и много чего другого)
Пробовал найти в интернете что-то готовое для AVR но ничего не нашол
Значит надо создавать самому (у других ведь что-то получилось, значит возможно)
Пробовал реализовать "тональную" модуляцию: разным значениям давать разные звуковые частоты с телефона а на atmega измерять частоту сигнала и так получать сигнал (команды). Но мой "частотомер" давал очень не стабильные результаты.
Вопрос к специалистам, какую модуляцию использовать? возможно есть примеры?
Заранее спасибо за любые подсказки и направления к попыткам.
Думаю это будет интересно многим, поскольку связка Android+AVR открывает большие творческие возможности.
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 15:41:54
vek
Килок не? или старлайн? Все на звуковой частоте
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 16:02:25
ne100r
vek писал(а):Килок не? или старлайн? Все на звуковой частоте
Можете дать линки? а то я рекламу автосигнализаций нахожу.
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 16:15:42
vek
На сайте микрочипа где-то должны быть исходники готовые для ПИК-ов.Не помню где,но и в рунете находил.
А если вам шифроваться не надо,а просто открыто передавать/принимать,то может посмотреть как юсарт работает?
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 16:42:44
ne100r
vek писал(а):А если вам шифроваться не надо,а просто открыто передавать/принимать,то может посмотреть как юсарт работает?
Возможно я не до конца понятно описал идею.
Атмега будет напрямую подключена к аудио выходу телефона (по проводам). Ни о каком перехвате не может быть и речи и шифроваться там просто не уместно.
П.С. Вам случаем за рекламу не платят ? поискал в гугле "юсарт" и нашол
https://www.google.com.ua/search?q=%D1% ... 1%80%D1%82
Перед этим рекламу автосигнализаций находил.
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 16:47:38
vek
Прикольно получилось
Ну тогда почему-бы не посмотреть на UART
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 16:52:51
ne100r
USART это правильно и хорошо.
Но у меня с одной стороны (телефона) стоит звуковая карта, и она мягко говоря не сможет передавать уровни сигнала, она передает изменения уровня (если так можно выразится)
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:07:49
vek
Тогда в чем проблема рулить частотой? Берем огрызок времени T допустим 1 мС. и если за 1 мСек произошло 1 дрыганье, то допустим 0,а если 2 раза, то это 1
как-то так:

Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:19:26
ne100r
Направление мне нравится. Я уже пробовал подобное. Там кроме чистого звука попадает шум (наводки от других частей и схем телефона).
Звук он не идеальный получается. И такой вариант не проходит

Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:31:29
vek
А если линию допустим к земле pull-down-уть?и только с сильной амплитудой брать в расчет?
Или порыть в сторону DTMF ?
И это...А если на выход подавать 100Гц,1кГц,10кГц(скважность 50%).... какою-то определенную
частоту шума много?А если со скважностью побаловаться?Что будет?
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:39:16
ne100r
vek писал(а): Или порыть в сторону DTMF ?
я уже писал что пробовал такое
ne100r писал(а):Пробовал реализовать "тональную" модуляцию: разным значениям давать разные звуковые частоты с телефона а на atmega измерять частоту сигнала и так получать сигнал (команды). Но мой "частотомер" давал очень не стабильные результаты.
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:43:04
ne100r
Думал над вариантом
как-то так:

Но вместо позитивного "дрыга" использовать несущую частоту. Но я не знаю как именно это обработать на стороне atmega
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:44:59
vek
Если стартовую часть бита точно принять,то впринципе остальные проблемы - не проблемы.Только надо поймать первый бит главное.
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:46:35
vek
ne100r писал(а):
Но вместо позитивного "дрыга" использовать несущую частоту
Чего-то я недопонял.
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:53:19
ne100r
vek писал(а):ne100r писал(а):
Но вместо позитивного "дрыга" использовать несущую частоту
Чего-то я недопонял.
Сделать по аналогии ИК сигнала в пульте от телевизора

Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 17:57:04
ne100r

Но в случае пульта ИК приемник делает за меня работу и на выходе уже дает сигнал. А как это сделать на атмеге я не знаю

Как сделать демодулятор?
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 18:28:34
vek
Что будет если на выход подать 1000 гц к примеру. Можешь осцилограмму показать?(в audacity например)
У меня чего-то лыжи не едут.Не пойму с чем мы имеем дело
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 18:45:50
oleg110592
ne100r писал(а):
Пробовал найти в интернете что-то готовое для AVR но ничего не нашол
плохо искали - даже платка с резисторами за 12$ продается
https://www.sparkfun.com/products/10331
проект на японском сайте - перевод английский
http://translate.googleusercontent.com/ ... GBtdeDO50w
пробовал для своих нужд - работало, но не надежно, сейчас если поковыряться на сайте вроде улучшили. Лучше соединять по wifi или по usb - по usb могут самые дешевые китайские планшеты.
Модуляция имхо лучше FSK
http://ru.wikipedia.org/wiki/%D0%A7%D0% ... 0%B8%D1%8F
Еще ссылка, только в одну сторону
http://robots-everywhere.com/re_wiki/in ... audio_port
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Пн окт 07, 2013 18:46:22
uni
Детектирование DTFM - тут описан алгоритм Герцеля для детектирования тонов. Описана программа, которую, я думаю, можно портировать на AVR. Сами исходники там вроде бы не приведены, кто найдёт - скидывайте сюда.
AN045SoftwareDTMFDecoder.pdf [602.83 KiB]
Я нашёл откуда взято, хороший набор апноутов:
Documentation and Applications Notes.
А вот исходник декодера DTFM на Си:
AN045SW.zip.
У них там ошибка на сайте, нужно из ссылок чайниз убирать, чтобы скачать что-то.
Re: AVR (atmega) и Android через аудио Jack
Добавлено: Ср окт 09, 2013 00:24:30
kalobyte
потом дам линк на модем с нормального компутера