ciclos anidados? saltos??... ayuda

Max_Maker con la novedad de q no esta sirviendo el programa, lo intente asi tal cual lo dejaste y no ha funcionado,

la cosa es q con el programa original q viene de ejemplo para servos si funciona(con lo q yo llegue a la conclusion de q en realidad no lee al servo como si estubiera exactamente a 90°), el unico problema sigue siendo el paro, no se como hacerlo parar, pero bueno este es mas o menos el programa q use y funciono, el servo da vuelta a un lado indefinidamente y despues al otro, el problema sigue siendo el como lo detengo :S jaja aqui use el serial para comunicarme en lugar de la fotoresistencia ya q por el momento no la tengo.

cualquier idea es bienvenida, gracias y saludos

#include <Servo.h>
Servo myservo;
int val=0;
int pos = 0;
void setup()
{
myservo.attach(9);
Serial.begin(9600);
}
void loop()
{
val = Serial.read()-48;

switch (val)
{
case 1:
{
for(pos = 0; pos < 180; pos += 1)
{
myservo.write(pos);
delay(15);
}
break;
}
case 2:
{
for(pos = 180; pos>=1; pos-=1)
{
myservo.write(pos);
delay(15);
}//for
break;
}//case 2
}//switch
}