interfaccia semplice

salve a tutti come si può creare un'interfaccia per arduino che permetta di visualizzare solo i valori da modificare del linguaggio c (esempio il delay ) esempio i primi 5 pin/led si attivano in modo sequenziale con intervalli di 1 sec ora volendo modificare questo valore a 2 sec e supponendo che chi dovrà farlo non conosce il linguaggio c o non sa programmare arduino e quindi si dovra solo trovare una casella con il valore da sostituire il massimo sarebbe poterlo fare senza pc usando il dispaly lcd so che con arduino non ci son limiti spero di essere stato chiaro

Vuoi modificare il valore di alcune variabili con l’arduino acceso visualizzare il valore della variabile in un Lcd senza passare per il pc?
ho capito giusto?

si esatto, e se possibile anche modificare programma del tipo funzione sequenziale o modalità passo passo

Beh per cambiare il valore di una variabile puoi usare un AnalogRead e collegarci un potenziometro per il fatto di modificare il programma ci avevo pensato anche io ma più di mettere degli if che ti fanno accedere ad altri pezzi di codice inseriti con il pc non credo si possa fare......

Sì può fare. Basta usare Bitlash, un linguaggio interpretato che si installa sull'Atmega. Esegue sia programmi residenti su SD (alla stregua di un file batch, per intendersi) sia anche in modalità diretta tramite terminale. Si possono creare delle piccole macro (come sono chiamati) da memorizzare sulla EEPROM e farli eseguire al riavvio del micro, oppure sempre tramite SD.

Le cose sono piú semplici.
Col display e 2 pulsanti scegli i modo di funzionamento.
con if o switch case esegui solo la parte rilevante al modo di funzionamento attivo.
esempio astratto:
voglio programmare 4 modi di lampeggiare di un led.
modo 0 LED sempre acceso
modo 1 lampeggiante 1Hz lento
modo 2 lampegiante 3 Hz veloce
modo 3 lampegiante 2 impulsi corti e uno lungo.

switch(modo){
case 0:
accesocontinuo(); // funzione che accende il LED)
break;
case 1:
lampeggio1(); // funzione che lampegga lentamente)
break;
case 2:
lampeggio2(); // funzione che lampegga veloce)
break;
case 3:
lampeggio1(); // funzione che lampegga …)
break;
}

in questo modo puoi fare tutto quello che vuoi, anche programmare del menu complicati con setaggio multipli e piú diversi possibili.
Ciao Uwe

Sì, certo. Questo è un metodo. Però si parlava di poter cambiare lo sketch in tempo reale: con Bitlash si può.

ok, ma maximilian3 vorrebbe farlo senza PC. Ciao Uwe

uwefed: ok, ma maximilian3 vorrebbe farlo senza PC. Ciao Uwe

Mi era sfuggito questo punto.

mmm molto interessante, faccio qualche test e vedo cosa ne tiro fuori e vedo se ho capito bene grazie

maximilian3: salve a tutti come si può creare un'interfaccia per arduino che permetta di visualizzare solo i valori da modificare del linguaggio c (esempio il delay ) esempio i primi 5 pin/led si attivano in modo sequenziale con intervalli di 1 sec ora volendo modificare questo valore a 2 sec e supponendo che chi dovrà farlo non conosce il linguaggio c o non sa programmare arduino e quindi si dovra solo trovare una casella con il valore da sostituire il massimo sarebbe poterlo fare senza pc usando il dispaly lcd so che con arduino non ci son limiti spero di essere stato chiaro

ma sa programmare in qualche altro linguaggio? se si potrebbe creare un'interfaccia grafica linkata all'arduino tamite porta seriale COM (se usi il cavetto USB per pilotarlo). crei X pulsanti dove ad ogni pulsante corrisponde un sottoprogramma (void nel caso del C/arduino) che invia un "numero".

nel codice arduino poi sfrutti i consigli di Uwe.

se questa persona poi non ne sa nulla e vuole "saperne di più" c'è una Guida strutturata molto bene... unica pecca (per me ovviamente) in Inglese.

Secondo me si possono prevedere degli stati (automatico, passo - passo, blink all, ecc... tutti quelli che gli servono) e poi seguire il consiglio di Uwe (ciao Uwe :) ) Po se ti serve un'interfaccia per cambiare al volo i valori puoi crearti dei comandini da mandare in seriale per cambiare il contenuto delle varibili che li conservano. Se l'interfaccia per il settaggio la vuoi grafica, fai anche uno sketch in processing... una bella GUI con le caselle per inserire i valori (puoi farla in altri mille modi la GUI...python, Qt ma anche roba più da solo windows...) io ho fatto una cosa simile per una lampada, non ho display, come descritto sopra uso comandi via seriale o un ricevitore IR.

ciao Teo