Ардуино и USB HOST SHIELD

tvlipetsk
Offline
Зарегистрирован: 22.04.2014

Здравствуйте! Есть такая задача: Ардуино Леонардо выполняет скетч

 

int analogPin=5;
int val=0;

void setup()
{
 Keyboard.begin();
 Serial.begin(9600);
}

void loop()
{
  val=analogRead(analogPin); //читаем значение нажатой кнопки
  Serial.println(val); //для определения кодов нажатых кнопок на мониторе порта
  /*поддерживаемые коды управляющих клавиш
  http://arduino.cc/en/Reference/KeyboardModifiers*/
  if (val>=645 && val<=670)  Remote.increase(); //Volume Up
  if (val>=730 && val<=760)  Remote.decrease(); //Volume Down
  if (val>=470 && val<=490)  Remote.next(); //Next
  if (val>=570 && val<=590)  Remote.previous(); //Previous
  delay(100);
}

 

Есть необходимость, чтобы команда передавалась через USB HOST SHIELD на андроид. Дело в том, что есть потребность одновременно питать андроид и передавать ему команду клавиатуры Возможно ли это через шилд? Если да, то подскажите как реализовать. В долгу не останусь

NeiroN
NeiroN аватар
Offline
Зарегистрирован: 15.06.2013

А не смотрели в сторону USB-HID, которым является леонардо? Просто посылать коды кнопок которые отмечены в файле /system/usr/keylayout/Generic.kl

113 VOLUME_MUTE

114 VOLUME_DOWN

115 VOLUME_UP

 

163 MEDIA_NEXT

164 MEDIA_PLAY_PAUSE

165 MEDIA_PREVIOUS

166 MEDIA_STOP

а у леонардо есть функции

Keyboard.press(код);

Keyboard.release(код);

А вот через HOST сомневаюсь что такое получится у того кто за это вообще решит взяться. В теории можно через ADB, на практике нужно "левой пяткой почесать за правым ухом". По сути надо подключиться как adb shell.

проще решить проблему с питанием как нибудь...

tvlipetsk
Offline
Зарегистрирован: 22.04.2014

Спасибо. Понял вас. а есть вариант читать флешку? и как это проверить на винде сразу после заливки скетча?