-         
Ergebnis 1 bis 2 von 2

Thema: LCD Menü

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    23.10.2007
    Ort
    Aalen
    Alter
    33
    Beiträge
    24

    LCD Menü

    Anzeige

    Hallo,

    Hab hier einen Code aus einem Forum, nur leider gibt es wohl den Thread ersteller nicht mehr, daher hab ich nun Probleme mit folgendem Code:

    Code:
    typedef prog_char			menuCap_t; // Titeltext im Flash
    typedef const menuCap_t*	PROGMEM menuCap_a; // array von Titeltexten im Flash
    
    typedef struct {
    	const menuCap_t* 	caption;
    	const uint8_t		type;
    	const prog_void* 	func;
    } menuSub_t PROGMEM;
    
    typedef struct {
    	const menuCap_t*	caption; // Title
    	const uint8_t		count;
    	const menuSub_t		items[];
    } menuDef_t PROGMEM;
    
    typedef uint8_t (*menuFunc_t)(const menuDef_t* menu, uint8_t index, uint8_t event); // callback
    extern uint8_t menuProcess(const menuDef_t* menu);
    Code:
    	menuCap_t mcMain[]		= "Hauptmenue";
    	menuCap_t mcProperties[]	= "Einstellungen";
    	menuCap_t mcSecurity[]	= "Sicherheit";
    
    	menuDef_t mmMain = {mcMain, 0, {{ mcProperties, 0, 0},{ mcSecurity, 0,0}}};
    So ist der Originalcode von Ihm, mein AVR Studio meldet mir jedoch folgendes beim Compilieren:

    ../control.c:45: error: non-static initialization of a flexible array member
    ../control.c:45: error: (near initialization for 'mmMain')

    Die Zeilen nummern stimmen nicht mehr, aber es handelt sich um diese Zeile:

    Code:
    	menuDef_t mmMain = {mcMain, 0, {{ mcProperties, 0, 0},{ mcSecurity, 0,0}}};
    Könnte mir jemand weiterhelfen?

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672
    Siehe Antwort auf mikrocontroller.net.
    MfG
    Stefan

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •