Nano как внешний IO модуль

xbaa0bab
Offline
Зарегистрирован: 05.07.2017

Здравствуйте, друзья!

Как-то информация попадалась, но сейчас никак не могу найти, поэтому смею задать вопрос в форуме.

Задача такая: получить некий сигнал (аналоговый, хотя и дискретный тоже) в Android-устройство (но также и в PC, просто задача схожая и универсальная)

Nano в этом случае больше не как контроллер, а как внешний IO модуль. В андроид собираюсь воткнуть через OTG.

Правильно ли я понимаю, что это возможно? Штатно USB на ардуине, как я понимаю, используется для работы по протоколу STK500, реально же задействовать его (как виртуальный COM-порт) просто для опроса входов ардуины? Вроде бы слышал о том, что надо закоротить ресет на ардуине, и тогда все будет работать в обход контоллера...?

Или надо писать скетч, чтобы ардуина отвечала по USB-интерфейсу хостовому приложению? Это же будет мешать нормальной работе бутлоадера и протоколу STK500? Прошу небольшой ликбез по теме, запутался. Опыта с ардуиной пока ноль.

Аппаратно, как мне известно, там стоит преобразователь USB-RS232. Мне важно понять, как добиться на этом RS232 данных о входах контроллера с минимальными вмешательствами, чтобы ардуина продолжала нормально прошиваться из Arduino Studio. Впрочем, может и не с минимальными вмешательствами, мне пока не понятны возможности, которые имеются. Какие есть варианты?

Спасибо!

b707
Offline
Зарегистрирован: 26.05.2017

xbaa0bab пишет:

Задача такая: получить некий сигнал (аналоговый, хотя и дискретный тоже) в Android-устройство (но также и в PC, просто задача схожая и универсальная)

Nano в этом случае больше не как контроллер, а как внешний IO модуль. В андроид собираюсь воткнуть через OTG.

Правильно ли я понимаю, что это возможно? Штатно USB на ардуине, как я понимаю, используется для работы по протоколу STK500, реально же задействовать его (как виртуальный COM-порт) просто для опроса входов ардуины? Вроде бы слышал о том, что надо закоротить ресет на ардуине, и тогда все будет работать в обход контоллера...?

Входы ардуины - это входы контроллера. И без контроллера вы никаких данных со входов не получите. Поэтому ваша идея делать что-то в обход - неверная.

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

Клапауций 112
Клапауций 112 аватар
Offline
Зарегистрирован: 01.03.2017

все твои вопросы базируются на полном незнании аппаратной части дуино-платы.

учи матчасть, подаван, и да прибудет с тобой сила

http://arduino.ru/Hardware/ArduinoBoardDuemilanove

http://arduino.ru/Hardware/ArduinoBoardNano

xbaa0bab
Offline
Зарегистрирован: 05.07.2017

Вспомнил. Контроллер в постоянный ресет уводят для того чтобы плату ардуино перевести в режим адаптера USB-RS232, это к моему вопросу отношения не имеет.

Из предложеных ссылок не очень понятно мне кое-что.

Вопрос можно переформулировать: можно ли устроить обмен данными с ардуиной через USB, не ломая работу загрузчика?

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

ПРавильно понимаю?

b707
Offline
Зарегистрирован: 26.05.2017

xbaa0bab пишет:

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

ПРавильно понимаю?

Да, так  и есть. Делается элементарно, проще чем мигание диодом. Мой самый первый проект, с которым пришел на ардуино - был датчик температуры с выводом данных в ком-порт через Нано...

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

xbaa0bab пишет:

Вспомнил. Контроллер в постоянный ресет уводят для того чтобы плату ардуино перевести в режим адаптера USB-RS232

Неверно, USB-UART.  Не путайте UART с RS232.

strarbit
Offline
Зарегистрирован: 12.06.2016
Клапауций 112
Клапауций 112 аватар
Offline
Зарегистрирован: 01.03.2017

xbaa0bab пишет:

ПРавильно понимаю?

иди нахуй, тупица или тролль.

xbaa0bab
Offline
Зарегистрирован: 05.07.2017

Да, я помню, ttl уровни там.

xbaa0bab
Offline
Зарегистрирован: 05.07.2017

СПасибо за ролик! Не совсем то, что мне нужно, но это тоже интересно.