Como actualizar una variable modificada dentro de un "switch / case"

Solo busqué algun while dentro del programa.

Cuando entras a un menú o a un submenú, estos esperan hasta que hagas algo, por lo tanto el resto del programa de arduino no está funcionando y el led no cambiará hasta que salgas del menú o submenú con la opción guardar y salir.

Escribiré codigo ejemplo para ilustrar la opción por la que optaría para cambiar el brillo de un led sin tomar tantas consideraciones como el valor máximo o mínimo que debe tener la variable.

//SUbmenu ejemplo

void SubMenu (){
    while(true){
    .   analogWrite(LED, BrilloLed);//Esto es lo que controla el brillo y código similar debe estar por fuera 
                                                 //del menú del programa que tienes hay.
    .   switch (Var){
    .   .   case a:
    .   .   BrilloLed++;
    .   .   break;
    .   .   
    .   .   
    .   .   case b:
    .   .   BrilloLed--;
    .   .   break;
    .   .   
    .   .   case c:
    .   .   Return;//Con esto sales del método SubMenu
    .   .   break;
    .   .
    .   }
    .
    }

}

Ahora a buscar algo similar en tu programa con este ejemplo.

Espero y sirva la ayuda.