Ciao Michele,
scusa se ci metto tanto a rispondere, ma il tempo è sempre scarsissimo, iniziamo:
se vai a riga 1092 dello sketch, trovi un esempio di menù, come vedi si tratta di dichiarare un array di stringhe, dove la prima voce (blocco 0 dell’array) è l’intestazione del menù stesso, nonché l’intestazione della schermata dove scorre il menù, a seguire poi tutte le voci che ti servono per quel menù, ad esempio:
char* VociMenuDosatori[] ={" IMP. DOSATORI", // Intestazione e voci del menu luci
"Dosatore 1 ",
" Dosatore 2 ",
" Dosatore 3 ",
" Dosatore 4",
};
Quando richiami la funzione del menù, devi passare nell’esatto ordine questi parametri:
- variabile che conterrà il valore scelto nel menù
- numero delle voci del menù
- il vettore di strighe che hai creato
In questo modo:
Scorrimenu (MenuDosatori, 4, VociMenuDosatori);
Ma lo devi fare nel loop all’interno di una struttura switch case:
switch (MenuDosatori)
{ case 0:
Scorrimenu (MenuDosatori, 4, VociMenuDosatori);
break;
case 1:
ImpostaDosatore (dosatore1);
break;
case 2:
ImpostaDosatore (dosatore2);
break;
case 3:
ImpostaDosatore (dosatore3);
break;
case 4:
ImpostaDosatore (dosatore4);
break;
}
E’ importante che sia la variabile "MenuDosatori" che quella "Avvio" siano inizializzate a 0, la prima perché altrimenti non entri nello switch case, la seconda perché fa eseguire all’interno della funzione “Scorrimenu” la prima if, che è quella che popola il display la prima volta.
Nel display vedrai nella prima riga l’intestazione della schermata e poi le voci che scorrono quando premi i tasti su o giù, quando premi ok, “Scorrimenu” assegna alla variabile “MenuDosatori” il valore che stai puntando ed automaticamente viene eseguito il codice all’interno di quel case.
Va da se che poi la procedura o funzione ImpostaDosatore(); te la devi creare da solo.
Spero di esserti stato utile.
Ciao.