case no funciona

mi codigo no funciona lo que quiero hacer es lo mismo en el case 2 que en el case 1 pero en el 2ndo no funciona.

#include <Keypad.h>
#include <Adafruit_NeoPixel.h>  //librerias teclado y de tira leds
#include <Wire.h>      // libreria de comunicacion por I2C
#include <LCD.h>      // libreria para funciones de LCD
#include <LiquidCrystal_I2C.h>    // libreria para LCD por I2C
  const byte FILAS = 4;     // define numero de filas
  const byte COLUMNAS = 4;    // define numero de columnas
  char keys[FILAS][COLUMNAS] = {    // define la distribucion de teclas
    {'1','2','3','A'},
    {'4','5','6','B'},
    {'7','8','9','C'},
    {'*','0','#','D'}
  };
  byte pinesFilas[FILAS] = {9,8,7,6};   // pines correspondientes a las filas
  byte pinesColumnas[COLUMNAS] = {5,4,3,2}; // pines correspondientes a las columnas
  Keypad teclado = Keypad(makeKeymap(keys), pinesFilas, pinesColumnas, FILAS, COLUMNAS);
  Adafruit_NeoPixel tira = Adafruit_NeoPixel(60,10, NEO_GRB + NEO_KHZ800);                //sesenta leds
  LiquidCrystal_I2C lcd (0x27, 2, 1, 0, 4, 5, 6, 7); // DIR, E, RW, RS, D4, D5, D6, D7
  char TECLA;
  char TECLA1;

  void setup(){
     Serial.begin(9600);
   tira.begin();                   //inicializo todo
    tira.show();
    tira.setBrightness(255);// inicializa comunicacion serial
    lcd.setBacklightPin(3,POSITIVE);  // puerto P3 de PCF8574 como positivo
      lcd.setBacklight(HIGH);   // habilita iluminacion posterior de LCD
      lcd.begin(16, 2);     // 16 columnas por 2 lineas para LCD 1602A
      lcd.clear();      // limpia pantalla
       lcd.setCursor(0, 0);    // ubica cursor en columna 0 y linea 0
      lcd.print("Numero largos");  
  }
  
  void loop() {
    lcd.clear();      // limpia pantalla
     lcd.setCursor(0, 0);    // ubica cursor en columna 0 y linea 0
      lcd.print("Numero largos");  
    char TECLA = teclado.waitForKey();
 
  switch (TECLA){
      case'1': 
      lcd.setCursor(15,1);
       lcd.print(TECLA);
       delay(500);
        lcd.clear();
        lcd.setCursor(0, 0);    // ubica cursor en columna 0 y linea 0
      lcd.print("Tiempo(s)");  
  char TECLA1 = teclado.waitForKey();   
  char TECLA1T = TECLA1-48;//TECLA -48 pasa el caracter puesto a un valor //TECLA es la tecla que recibe del teclado matricial
   int t= TECLA1T * 16;             //t sera igual delay de cada led entre el numero de vueltas         //t sera igual delay de cada led entre el numero de vueltas
  lcd.setCursor(15,1);
   lcd.print(TECLA1);
    for(int i = 0; i < 60; i++){
    tira.setPixelColor(i,0,255,0);
    tira.show();
    delay(t);
    tira.setPixelColor(i,0,0,0);}
    break;
    
    case'2':
    lcd.setCursor(15,1);
     lcd.print(TECLA);
      delay(500);
        lcd.clear();
        lcd.setCursor(0, 0);    // ubica cursor en columna 0 y linea 0
      lcd.print("Tiempo(s)");  
  char TECLA1 = teclado.waitForKey();   
  char TECLA1T = TECLA1-48;//TECLA -48 pasa el caracter puesto a un valor //TECLA es la tecla que recibe del teclado matricial
   int t= TECLA1T * 16;             //t sera igual delay de cada led entre el numero de vueltas         //t sera igual delay de cada led entre el numero de vueltas
  lcd.setCursor(15,1);
   lcd.print(TECLA1);
    for(int i = 0; i < 60; i++){
  tira.setPixelColor(i,0,255,0);
  tira.show();
  delay(t);
  tira.setPixelColor(i,0,0,0);
}

  for(int i = 59; i >= 0; i--){
  tira.setPixelColor(i,0,0,255);
  tira.show();
  delay(t);
  tira.setPixelColor(i,0,0,0);}   
  lcd.clear();      // limpia pantalla
  break;
  
  }
      
 }