comunicacion serial para un pap????

hola, primero q nada estoy apenas empesando con esto del arduino, estoy tratando de hacer un programa q por medio del puerto serial me permita girar un motor a pasos hacia un lado o hacia el otro:

// programa para los motores pap ----------ejemplo base

int motorPin1 = 8; // PIN-es del Motor int motorPin2 = 9; int motorPin3 = 11; int motorPin4 = 12; int delayTime = 500; // Delay que determina la velocidad de giro

void setup() {

Serial.begin(9600); //velocidad de transferencia de datos

pinMode(motorPin1, OUTPUT); // Configuración de los PIN-es como salida digital pinMode(motorPin2, OUTPUT); pinMode(motorPin3, OUTPUT); pinMode(motorPin4, OUTPUT); } void loop()

{ // inicio de loop

int val = Serial.read (); // variable enla q se guarda lo q entra desde el puerto

switch (val) {//inicio de switch case 1: //inicio de primer case

digitalWrite(motorPin1, HIGH); // Los pines se activan en secuencia digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, HIGH); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, HIGH); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, HIGH); delay(delayTime); break; //fin de primer case

case 2: // inicio del segundo case

digitalWrite(motorPin1, LOW); // Los pines se activan en secuencia digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, HIGH); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, HIGH); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, LOW); digitalWrite(motorPin2, HIGH); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime); digitalWrite(motorPin1, HIGH); digitalWrite(motorPin2, LOW); digitalWrite(motorPin3, LOW); digitalWrite(motorPin4, LOW); delay(delayTime); break; //fin del segundo case

}//fin de switch

} //fin de loop

el problema es q lo estoy provando con leds, y lo unico q consigo con el es q los leds enciendan (todos, siendo q deberian estar encendiendo en orden) sin importar q valor ingrese por el puerto, si alguien pudiera ayudarme se los agradeceria bastante

Los LEDs se encienden cuando mandas el valor por el puerto serie?, o se encienden apenas prendes el Arduino?