Jak napisać szkic Arduino i aplikację na Androida, aby rozmawiać ze sobą przez standardowy kabel USB?


Odpowiedzi:


6

Urządzenia z Androidem zwykle nie mają hosta USB: oczekują, że zostaną podłączone do inteligentniejszych urządzeń, takich jak komputer. To samo dotyczy Arduino. Z tego powodu Arduino stworzyło Mega ADK (czyli zestaw rozwojowy akcesoriów ).

Mega ADK i Due działają jak hosty USB i można je podłączyć bezpośrednio do telefonu z Androidem. Jeśli masz już płytę, inną opcją jest zdobycie osłony hosta USB, aby dodać możliwości hosta USB.

Twój szkic pokaże telefonowi, jakie to akcesorium, a Twój telefon pobierze odpowiednią aplikację ze sklepu.

Jest książka o podłączaniu Arduino do Androida .


Istnieją konwertery z hosta mini USB na USB-A.
apnorton

@anorton Tak: to są kable OTG ... zobacz mój post.
Anonimowy pingwin

Założenie tej odpowiedzi było nieaktualne wiele lat przed opublikowaniem - większość współczesnych urządzeń z Androidem miała obsługiwać hosta USB, choć zdarzają się przypadki, gdy pewne dziwactwo projektu powoduje, że jest zepsuta.
Chris Stratton

3

Nigdy nie wspominałeś o swoim modelu tabletu ... ani modelu Arduino

Istnieje kilka tabletów zaprojektowanych do pracy z dyskami flash USB i drukarkami. Nazywa się to OTG (w ruchu.

Potrzebujesz:

  • Tablet obsługujący OTG
  • Adapter OTG, który pasuje do gniazda USB tabletu i jest kompatybilny
  • Aplikacja Arduino Uno Communicator
  • Arduino Uno (lub klon) [Uwaga: Mówi, że działa z Atmega16U2 lub Atmega8U2 zaprogramowanym jako konwerter USB-na-szeregowy, więc przypuszczam, że to obejmie kilka płyt więcej niż Uno.)

Inną alternatywą jest sprawdzenie Bluetooth (uwaga: właśnie wybrałem losowy link, ale istnieją setki podobnych adapterów BT)


Należy pamiętać, że standardowy tryb hosta USB Android nie obsługuje napędów flash z żadną funkcjonalnością systemu operacyjnego (choć robi to kilka wersji) - raczej udostępnia dość surowy interfejs API hosta USB dla kodu aplikacji.
Chris Stratton

2

Protokół USB wymaga, aby jeden koniec był „hostem”, a drugi koniec „peryferyjnym” i nie działa, jeśli urządzenia na obu końcach kabla są „urządzeniami peryferyjnymi”. Niestety, większość Arduinos i wiele wczesnych urządzeń z Androidem to „urządzenia peryferyjne”, więc podłączanie takich urządzeń za pomocą standardowego kabla USB nie działa.

Niektóre nowoczesne urządzenia z Androidem obsługują „OTG”, więc teoretycznie można ustawić Android jako „host”. Czy ktoś sprawił, że to zadziałało?

Innym podejściem jest uczynienie Arduino końcem kabla „hostem”, a Androidem kabla „peryferyjnym”. Takie podejście przyjęło

  • Microbridge (a) (b)
  • Płyta IOIO (a) (b)
  • Zestaw rozwojowy akcesoriów dla systemu Android (ADK) (a) (b) (c)

(Amarino (a) i Cellbots (a) (b) mają jeszcze inne zupełnie inne podejście).


1

Przetwarzanie to świetne miejsce na rozpoczęcie komunikacji z urządzeniem na urządzenie.

Interfejs i język są bardzo podobne do Arduino i istnieje wiele przykładów na dobry początek.

http://playground.arduino.cc/Interfacing/Processing


2
Czy to działa na Androidzie?
Anonimowy pingwin

@AnnonomusPerson Tak, przetwarzanie dla Androida
Faux_Clef

@Faux_Clef Hmm nie wiedział o tym. Nadal nie wiem, czy jest najlepszy dla Androida, ten link, który opublikowałeś, nie wydawał się być bardzo stabilny ... Wiem, że przetwarzanie obsługuje USB, ale nie wiem, czy możesz to zrobić na Androidzie ...
Anonimowy pingwin

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.