Projektvorstellung: Library für das Erstellen von Menus für LCD Displays

Du musst eine Button Funktion anpassen.

z.B.

void ButtonMode_serial()
{
  if(Serial.available()) 
  {
    if(CTR_timer(g_button_press_time, _BUTTON_press_time))
    {  
      switch(Serial.read())
      {
        case 'e':
           ButtonMode_help_enter();
        break;
        case 'w':
           ButtonMode_help_up();
        break;
        case 's':
           ButtonMode_help_down();
        break;
        case 'a':
           ButtonMode_help_left();
        break;
        case 'd':
          ButtonMode_help_right();
        break;      
        case 'q':      
          ButtonMode_help_quit();
        break;
        default:
        break;
      }
    }
  }
}

// oder die 
void ButtonMode_analog()
{
  ....
}
// falls du if abfragen benötigst

Zum einlesen des IR Signales benötigst du eine globale Variable die das Signal beinhaltet. Später dann einfach

//pseudocode (der ist so nicht lauffähig)
void ButtonMode_ir()
{
  if(g_ir_signal != NULL) 
  {
    if(CTR_timer(g_button_press_time, _BUTTON_press_time))
    {  
      if(g_ir_signal == "0011110100100101")
      { 
         ButtonMode_help_enter();
      }
      //...... 
      // mit den anderen Buttons genauso
       
      
    }
  }
}