From e03c73f396af3f07233a709cbc7f086f5ad86b64 Mon Sep 17 00:00:00 2001 From: Nico Date: Sat, 22 Nov 2014 12:59:13 +0100 Subject: [PATCH] Rearranged examples --- .../AdvancedGamepad/AdvancedGamepad.ino | 0 .../AdvancedKeyboard/AdvancedKeyboard.ino | 0 .../AdvancedRawHID/AdvancedRawHID.ino | 0 .../HoodLoader1_API_Legacy.ino | 2 +- .../HoodLoader2_NoUSB_Blink.ino | 36 +++++++++++++++++++ .../HoodLoader2_SerialKeyboard.ino | 8 +++-- 6 files changed, 42 insertions(+), 4 deletions(-) rename examples/{ => Advanced}/AdvancedGamepad/AdvancedGamepad.ino (100%) rename examples/{ => Advanced}/AdvancedKeyboard/AdvancedKeyboard.ino (100%) rename examples/{ => Advanced}/AdvancedRawHID/AdvancedRawHID.ino (100%) rename examples/{ => HoodLoader1}/HoodLoader1_API_Legacy/HoodLoader1_API_Legacy.ino (99%) create mode 100644 examples/HoodLoader2/HoodLoader2_NoUSB_Blink/HoodLoader2_NoUSB_Blink.ino rename examples/{ => HoodLoader2}/HoodLoader2_SerialKeyboard/HoodLoader2_SerialKeyboard.ino (87%) diff --git a/examples/AdvancedGamepad/AdvancedGamepad.ino b/examples/Advanced/AdvancedGamepad/AdvancedGamepad.ino similarity index 100% rename from examples/AdvancedGamepad/AdvancedGamepad.ino rename to examples/Advanced/AdvancedGamepad/AdvancedGamepad.ino diff --git a/examples/AdvancedKeyboard/AdvancedKeyboard.ino b/examples/Advanced/AdvancedKeyboard/AdvancedKeyboard.ino similarity index 100% rename from examples/AdvancedKeyboard/AdvancedKeyboard.ino rename to examples/Advanced/AdvancedKeyboard/AdvancedKeyboard.ino diff --git a/examples/AdvancedRawHID/AdvancedRawHID.ino b/examples/Advanced/AdvancedRawHID/AdvancedRawHID.ino similarity index 100% rename from examples/AdvancedRawHID/AdvancedRawHID.ino rename to examples/Advanced/AdvancedRawHID/AdvancedRawHID.ino diff --git a/examples/HoodLoader1_API_Legacy/HoodLoader1_API_Legacy.ino b/examples/HoodLoader1/HoodLoader1_API_Legacy/HoodLoader1_API_Legacy.ino similarity index 99% rename from examples/HoodLoader1_API_Legacy/HoodLoader1_API_Legacy.ino rename to examples/HoodLoader1/HoodLoader1_API_Legacy/HoodLoader1_API_Legacy.ino index 86182a8..546a413 100644 --- a/examples/HoodLoader1_API_Legacy/HoodLoader1_API_Legacy.ino +++ b/examples/HoodLoader1/HoodLoader1_API_Legacy/HoodLoader1_API_Legacy.ino @@ -66,7 +66,7 @@ void loop() { } //================================================================================ -// NHP +// HoodLoader1 compatible NHP sending API //================================================================================ // Start Mask diff --git a/examples/HoodLoader2/HoodLoader2_NoUSB_Blink/HoodLoader2_NoUSB_Blink.ino b/examples/HoodLoader2/HoodLoader2_NoUSB_Blink/HoodLoader2_NoUSB_Blink.ino new file mode 100644 index 0000000..8874a1d --- /dev/null +++ b/examples/HoodLoader2/HoodLoader2_NoUSB_Blink/HoodLoader2_NoUSB_Blink.ino @@ -0,0 +1,36 @@ +/* + Copyright (c) 2014 NicoHood + See the readme for credit to other people. + + HoodLoader2 NoUSB Blink example + + This sketch demonstrates how to use HoodLoader2 without USB Core. + This might be useful to keep ram/flash usage at a very low level. + Select Tools->USB Core->No USB functions to get rid of the USB Core. + + Blinks Leds and shows what workaround is needed to get the timing correct. + You can still use the normal digitalWrite(LED_BUILTIN_TX, LOW); for updating Leds. + Keep in mind that the logic is inverted then! LOW=HIGH and vice versa. + */ + +// workaround for undefined USBCON has to be placed in every sketch +// otherwise the timings wont work correctly +ISR(USB_GEN_vect) +{ + UDINT = 0; +} + +void setup() { + TX_RX_LED_INIT; +} + +void loop() { + TXLED0; + delay(100); + TXLED1; + delay(100); + RXLED0; + delay(100); + RXLED1; + delay(100); +} diff --git a/examples/HoodLoader2_SerialKeyboard/HoodLoader2_SerialKeyboard.ino b/examples/HoodLoader2/HoodLoader2_SerialKeyboard/HoodLoader2_SerialKeyboard.ino similarity index 87% rename from examples/HoodLoader2_SerialKeyboard/HoodLoader2_SerialKeyboard.ino rename to examples/HoodLoader2/HoodLoader2_SerialKeyboard/HoodLoader2_SerialKeyboard.ino index 07051d9..5aef446 100644 --- a/examples/HoodLoader2_SerialKeyboard/HoodLoader2_SerialKeyboard.ino +++ b/examples/HoodLoader2/HoodLoader2_SerialKeyboard/HoodLoader2_SerialKeyboard.ino @@ -4,13 +4,15 @@ HoodLoader2 SerialKeyboard example - This sketch should demonstate how to program a basic sketch with HoodLoader2. + This sketch should demonstrate how to program a basic sketch with HoodLoader2. It was used to demonstrate that Serial and HID is working properly. + The the other examples on how to use the other APIs, it works the same. + + Use the F() macro to save strings in PROGMEM to keep ram usage low. + The 16u2 has very low RAM, so don't try to use that much ram. Open the Serial port, type in anything and see that Serial and Keyboard is working. See official documentation for more infos. - - Use the F() macro to save strings in PROGMEM to keep ram usage low. */ void setup() {