MENWIZ: una libreria per creare menu su LCD

Sei sicuro? Io ho trovato lo stesso zip :sweat_smile:

nome uguale struttura diversa. Ho provato a scaricarlo per controllare...Oddio si vede di tutto in linea ... :slight_smile:

No, mi spiace. Io trovo ancora tutto come prima.
Te lo allego, ha la fine con (3) perché l'ho scaricato più volte :stuck_out_tongue_closed_eyes:

MENWIZ_1_0_1 (3).zip (656 KB)

non quadra neanche con le dimensioni. io vedo quello della immagine in allegato.
potrebbe essere un problema di cache. fai il refresh

brunialti:
non quadra neanche con le dimensioni. io vedo quello della immagine in allegato.
potrebbe essere un problema di cache. fai il refresh

guarda anche io vedo la stessa disposizione di prima :drooling_face:

E' mezz'ora che refresho :stuck_out_tongue_closed_eyes:

@bruno:
forse tu vedi i nuovi file perché sei il possessore dell'account. Magari github necessita di un po' di tempo per aggiornare i file? Non so, sto sparando a caso

uhmmm potrebbe essere un problema di apply change di git. magari hanno un daemon temporizzato, almeno per i file

p.s meno male che refreshi. qui fa un caldo becco....

mah... continuo a caricare il nuovo, ma effettivamente vedo anche io il vecchio...
In allegato...

MENWIZ_1_0_1.zip (691 KB)

Così è quasi a posto, toglierei solo il PDF dall'interno della cartella /libraries/MENWIZ e lo metterei nella cartella radice, insieme al file Readme.

Rinnovo i complimenti per la condivisione del lavoro e per la documentazione: il Pdf è veramente "professionale" :wink:

il metodo addUsrNav attualmente rimpiazza il modello built in che prevede l'uso di 6 bottoni.
la prossima release di MENWIZ permetterà di definire esplicitamente se si vuole il modello a 4 o a 6 bottoni.
Per il momento se si usa addUsrNav si può patchare nel modo seguente:

extern byte MW_navbtn;
...
// in setup() subito dopo la chiamata ad addusrNav
MW_navbtn=4; // force 4 buttons mode

una domanda,funziona su qualsiasi lcd?

su tutte quelle supportate dall nuova libreria LiquidCrystal:
The New LiquidCrystal allows to use 4 wires, 8 wires, I2C,
serial and other LCDs. The use of New LiquidCrystal is beyond this
introduction

vedi anche https://github.com/brunialti/MENWIZ/downloads

brunialti:
su tutte quelle supportate dall nuova libreria LiquidCrystal:
The New LiquidCrystal allows to use 4 wires, 8 wires, I2C,
serial and other LCDs. The use of New LiquidCrystal is beyond this
introduction

vedi anche https://github.com/brunialti/MENWIZ/downloads

Grazie mille fra 7 gg mi arriva il display e ti stresso un pò la libreria :wink:

bene!
ma prima di stressare me :slight_smile: guarda anche

http://arduino.cc/forum/index.php/topic,99693.0.html

attebdo feedback

Hai mica fatto, tu o altri, un video di esempio ?

Per il discorso i2c quale chip supporta la lib ?
Ad esempio del chip in firma e' stato necessario fare una libreria apposita

P.s mi farebbe piacere un tuo parere su questo mio topic, grazie

ciao brunialti

sono appena venuto a conoscenza del lavoro che hai fatto, io ho appena ultimato la libreria per:
monitor LCD I2C: Robot-Electronics dove ho pure collegato il tastierino annesso,

volevo chiederti se potevamo collaborare per inserire questa libreria nella tua in modo da renderla conpatibile anche con il monitor in mio possesso.

fammi sapere

Ho inserito su github l'ultima versione di MENWIZ

Potete scaricare il tutto come file zip.

La libreria ha dimensioni minori e alcune nuove funzioni di visualizzazione dei menu (collapsed menu).
Ha avuto un certo numero di download (oltre 300), anche se ora dopo la modifica della interfaccia di githib (non c'è più la pagina downloads) non so bene come fare a sapere quante persone scaricano i file ...

Ho un dubbio, il mio menu funziona, benissimo, solo che non sono riuscito a metterlo in azione, ovvero
in s2->addVar definisco i limiti e lo step da effettuare, e fino a qui tutto ok, sul mio display appaiono i limiti e con i pulsanti setto il valore che voglio. Dopodichè schiaccio il pulsante confirm e mi torna indietro ...

r=menu.addMenu(MW_ROOT,NULL,F("MAIN MENU"));                      //create a root menu at first (required)

  //---------------  
  s1=menu.addMenu(MW_SUBMENU,r,F("SAW"));                       //add a submenu node 1 to the root menu (control the heigh of my Saw)
    s2=menu.addMenu(MW_VAR,s1,F("ABS Height"));                   //add a terminal node in the menu tree (that is "variable"); (move at a certain mm height)
       s2->addVar(MW_AUTO_INT,&sp,0,100,1);                   //int type, fd binded variable, rage 0-100, step 1

ora il mio dubbio è: come faccio a fargli eseguire il comando ? ovvero far compiere allo stepper i passi richiesti ? devo scrivere una funzione tipo questa?

void ABS Height()
{
Serial.println("Sto girando zzz 10giri zzzz "); // :-)
}

Grazie

.... direi di no ... ma non capisco come faccio a eseguire la variabile scitta

Non so se capisco bene. Nel menu devi settare i valori di alcune variabili, quindi devi lanciare una azione con i valori impostati.
Se è così devi creare una funzione di tipo int, quindi un nuovo nodo del menu di tipo variabile MW_ACTION, nel quale dichiari la tua azione che verrà eseguita ogni volta che premi il tasto di conferma e userà i valori correnti delle variabili modificati tramite il menu.
Non capisco coesa imntendi per "eseguire la variabile"