diff options
Diffstat (limited to 'libraries/Esplora/examples/EsploraKart')
| -rw-r--r-- | libraries/Esplora/examples/EsploraKart/EsploraKart.ino | 125 | 
1 files changed, 0 insertions, 125 deletions
| diff --git a/libraries/Esplora/examples/EsploraKart/EsploraKart.ino b/libraries/Esplora/examples/EsploraKart/EsploraKart.ino deleted file mode 100644 index 4c1621c..0000000 --- a/libraries/Esplora/examples/EsploraKart/EsploraKart.ino +++ /dev/null @@ -1,125 +0,0 @@ -/* -  Esplora Kart - -  This sketch turns the Esplora into a PC game pad. - -  It uses the both the analog joystick and the four switches. -  By moving the joystick in a direction or by pressing a switch, -  the PC will "see" that a key is pressed. If the PC is running -  a game that has keyboard input, the Esplora can control it. -   -  The default configuration is suitable for SuperTuxKart, an -  open-source racing game. It can be downloaded from -  http://supertuxkart.sourceforge.net/ . - -  Created on 22 november 2012 -  By Enrico Gueli <enrico.gueli@gmail.com> -*/ - - -#include <Esplora.h> - -/* -  You're going to handle eight different buttons. You'll use arrays,  -  which are ordered lists of variables with a fixed size. Each array  -  has an index (counting from 0) to keep track of the position -  you're reading in the array, and each position can contain a number. -  -  This code uses three different arrays: one for the buttons you'll read; -  a second to hold the current states of those buttons; and a third to hold -  the keystrokes associated with each button. - */ - -/* -  This array holds the last sensed state of each of the buttons -  you're reading. -  Later in the code, you'll read the button states, and compare them -  to the previous states that are stored in this array. If the two -  states are different, it means that the button was either -  pressed or released. - */ -boolean buttonStates[8]; - -/* -  This array holds the names of the buttons being read. -  Later in the sketch, you'll use these names with -  the method Esplora.readButton(x), where x -  is one of these buttons. - */ -const byte buttons[] = { -  JOYSTICK_DOWN, -  JOYSTICK_LEFT, -  JOYSTICK_UP, -  JOYSTICK_RIGHT, -  SWITCH_RIGHT, // fire -  SWITCH_LEFT, // bend -  SWITCH_UP, // nitro -  SWITCH_DOWN, // look back -}; - -/* -  This array tells what keystroke to send to the PC when a -  button is pressed. -  If you look at this array and the above one, you can see that -  the "cursor down" keystroke is sent when the joystick is moved -  down, the "cursor up" keystroke when the joystick is moved up -  and so on. -*/ -const char keystrokes[] = { -  KEY_DOWN_ARROW, -  KEY_LEFT_ARROW, -  KEY_UP_ARROW, -  KEY_RIGHT_ARROW, -  ' ', -  'V', -  'N', -  'B' -}; - -/* -  This is code is run only at startup, to initialize the -  virtual USB keyboard. -*/ -void setup() { -  Keyboard.begin(); -} - -/* -  After setup() is finished, this code is run continuously. -  Here we continuously check if something happened with the -  buttons. -*/ -void loop() {  -   -  // Iterate through all the buttons: -  for (byte thisButton=0; thisButton<8; thisButton++) { -    boolean lastState = buttonStates[thisButton]; -    boolean newState = Esplora.readButton(buttons[thisButton]); -    if (lastState != newState) { // Something changed! -      /*  -        The Keyboard library allows you to "press" and "release" the -        keys as two distinct actions. These actions can be -        linked to the buttons we're handling. -       */ -      if (newState == PRESSED) { -        Keyboard.press(keystrokes[thisButton]); -      } -      else if (newState == RELEASED) { -        Keyboard.release(keystrokes[thisButton]); -      } -    } - -    // Store the new button state, so you can sense a difference later: -    buttonStates[thisButton] = newState; -  } -   -  /* -    Wait a little bit (50ms) between a check and another. -    When a mechanical switch is pressed or released, the -    contacts may bounce very rapidly. If the check is done too -    fast, these bounces may be confused as multiple presses and -    may lead to unexpected behaviour. -   */ -  delay(50); -} - | 
