/*
  Switch statement with serial input

 Demonstrates the use of a switch statement.  The switch
 statement allows you to choose from among a set of discrete values
 of a variable.  It's like a series of if statements.

 To see this sketch in action, open the Serial monitor and send any
 character.  The characters a, b, c, d, and e, will turn on LEDs.  Any
 other character will turn the LEDs off.

 The circuit:
 * 5 LEDs attached to pins 2 through 6 through 220-ohm resistors

 created 1 Jul 2009
 by Tom Igoe

 http://www.arduino.cc/en/Tutorial/SwitchCase2

 Ported to the Maple 27 May 2010 by Bryan Newbold

 */

void setup() {
  // initialize the LED pins:
  for (int thisPin = 2; thisPin <= 6; thisPin++) {
    pinMode(thisPin, OUTPUT);
  }
}

void loop() {
  // read the sensor:
  if (SerialUSB.available() > 0) {
    int inByte = SerialUSB.read();
    // do something different depending on the character received.
    // The switch statement expects single number values for each case;
    // in this exmaple, though, you're using single quotes to tell
    // the controller to get the ASCII value for the character.  For
    // example 'a' = 97, 'b' = 98, and so forth:

    switch (inByte) {
    case 'a':
      digitalWrite(2, HIGH);
      break;
    case 'b':
      digitalWrite(3, HIGH);
      break;
    case 'c':
      digitalWrite(4, HIGH);
      break;
    case 'd':
      digitalWrite(5, HIGH);
      break;
    case 'e':
      digitalWrite(6, HIGH);
      break;
    default:
      // turn all the LEDs off:
      for (int thisPin = 2; thisPin < 7; thisPin++) {
        digitalWrite(thisPin, LOW);
      }
    }
  }
}

