mirror of
https://github.com/felis/USB_Host_Shield_2.0.git
synced 2024-03-22 11:31:26 +01:00
45 lines
1.5 KiB
C++
45 lines
1.5 KiB
C++
// The source for the Android application can be found at the following link: https://github.com/Lauszus/ArduinoBlinkLED
|
|
// The code for the Android application is heavily based on this guide: http://allaboutee.com/2011/12/31/arduino-adk-board-blink-an-led-with-your-phone-code-and-explanation/ by Miguel
|
|
|
|
#include <Usb.h>
|
|
#include <adk.h>
|
|
|
|
USB Usb;
|
|
ADK adk(&Usb,"TKJElectronics", // Manufacturer Name
|
|
"ArduinoBlinkLED", // Model Name
|
|
"Example sketch for the USB Host Shield", // Description (user-visible string)
|
|
"1.0", // Version
|
|
"http://www.tkjelectronics.dk/uploads/ArduinoBlinkLED.apk", // URL (web page to visit if no installed apps support the accessory)
|
|
"123456789"); // Serial Number (optional)
|
|
|
|
#define LED 13 // Pin 13 is occupied by the SCK pin on a normal Arduino (Uno, Duemilanove etc.), so use a different pin
|
|
|
|
void setup()
|
|
{
|
|
Serial.begin(115200);
|
|
Serial.print("\r\nADK demo start");
|
|
if (Usb.Init() == -1) {
|
|
Serial.print("\r\nOSCOKIRQ failed to assert");
|
|
while(1); //halt
|
|
}
|
|
pinMode(LED, OUTPUT);
|
|
}
|
|
|
|
void loop()
|
|
{
|
|
Usb.Task();
|
|
if(adk.isReady()) {
|
|
uint8_t msg[1];
|
|
uint16_t len = sizeof(msg);
|
|
uint8_t rcode = adk.RcvData(&len, msg);
|
|
if(rcode && rcode != hrNAK)
|
|
USBTRACE2("Data rcv. :", rcode);
|
|
if(len > 0) {
|
|
Serial.print(F("\r\nData Packet: "));
|
|
Serial.print(msg[0]);
|
|
digitalWrite(LED,msg[0] ? HIGH : LOW);
|
|
}
|
|
}
|
|
else
|
|
digitalWrite(LED, LOW);
|
|
}
|