Problem using switch case

Good afternoon, I am trying to develop a project in which buttons can develop different tests, the problem has arisen in the first test, because case 1 is not interrupted when I jump to the next and I do not know what is due.

The code is the following:

#include <LiquidCrystal_I2C.h>
#include <Wire.h>

LiquidCrystal_I2C lcd (0x3F, 16, 2);

#define pot A0

const int PULSADOR_MODO = 2;
const int PULSADOR_EMP = 4;
const int PULSADOR_RESULTP = 7;
const int PULSADOR_RESULTT = 8;
int Red = 6;
int Gre = 5;
int Blu = 3;
int Redf = 11;
int Gref = 10;
int Bluf = 9;

volatile boolean actualizar=true;
int modo = 0;
const int N=3;

void setup() {
Wire.begin();
lcd.begin(16,2);
lcd.clear();
lcd.backlight();

pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
pinMode(3, OUTPUT);
pinMode(11, OUTPUT);
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);
pinMode(PULSADOR_MODO, INPUT);
pinMode(PULSADOR_EMP, INPUT);
pinMode(PULSADOR_RESULTP, INPUT);
pinMode(PULSADOR_RESULTT, INPUT);
}
void Prueba_1 (){
analogWrite(Redf, 221);
analogWrite(Gref, 168);
analogWrite(Bluf, 68);
analogWrite(Gre, 168);
analogWrite(Blu, 68);

}

void fijarCursorModo(){
switch(modo){
case 0:
break;
case 1:
lcd.clear();
lcd.setCursor(2,0);
lcd.print(“Prueba 1”);
lcd.setCursor(0,1);
lcd.print(“Empezar: boton 2”);
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
}
}
void loop(){
if(digitalRead(PULSADOR_MODO)==HIGH){
modo++;
modo = modo % N;
fijarCursorModo();
while(digitalRead(PULSADOR_MODO)==HIGH);
}
switch(modo){
case 0:
lcd.clear();
lcd.setCursor(1,0);
lcd.print(“Anomaloscopio”);
lcd.setCursor(0, 1);
lcd.print(“Pulse 1”);
break;
case 1:
if(digitalRead(PULSADOR_EMP)==HIGH){
lcd.clear();
lcd.setCursor(2,0);
lcd.print(“Prueba 1”);
lcd.setCursor(0, 1);
lcd.print(“Terminar: boton 2”);
Prueba_1 ();
int R = analogRead(pot);
int TimeR = map(R,0,1023,0,255);
analogWrite(Red, TimeR);
while(digitalRead(PULSADOR_EMP)==HIGH);
}
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
}
}

I know that other cases are missing but first I want to solve this problem before adding more

If either of the buttons inputs is stuck HIGH the while() loops will freeze the program.

And please post using tags, so we can work with your code snippets?