Servus beinand!
Ich habe meine Menüführung immer so gelöst:
zwei Globale Variablen: MUNUE_NR und DRAW.
MUNUE_NR bestimmt das aktuelle menu.
Meißt muss man ja nur das Display einmal mit dem aktuellen Menü
beschreiben. Das macht die DRAW-Variable. Ändert man das Menü,
setzt man DRAW auf >0 (zB 1 ). Die entsprechende Menüfunktion erkennt das und beschreibt das
LCD und setzt dabei DRAW wieder auf 0:
Die Funktion MENUE() führst du dauernd aus!
Diese bestimmt das momenthan ausgewählte Menü.
Code:
uint8_t MENUE_NR=0;
uint8_t DRAW=1;
void MENUE( void ){
switch( MENUE_NR){
case 0 MENUE_HAUPT(); break;
case 1 MENUE_LCD(); break;
case 2 MENUE_CONFIG(); break;
case 3 MENUE_SAMPLE(); break;
case 4 MENUE_TIMER(); break;
}
}
void MENUE_HAUPT( void ){
if(DRAW){
//Zeichne das menü auf den Bildschirm
DRAW=0;
}
// hier kannst du sachen ausführen, die im menue gemacht werden müssen
}
void MENUE_LCD( void ){
if(DRAW){
//Zeichne das menü auf den Bildschirm
DRAW=0;
}
// hier kannst du sachen ausführen, die im menue gemacht werden müssen
}
usw....
Lesezeichen