Arduino Forum

International => Italiano => Generale => Topic started by: ale88snake on Mar 24, 2019, 03:49 pm

Title: PULSANTI CON DEBOUNCE
Post by: ale88snake on Mar 24, 2019, 03:49 pm
Salve ragazzi

vorrei sapere se posso  implementare più di 2 pulsanti (ideale 7).
Ho già provato a farlo ma quando ne inserisco più di 2 si blocca
...grazie a tutti...






Title: Re: piu pulsanti con debounce
Post by: gpb01 on Mar 24, 2019, 04:25 pm
Allora,
prima di tutto, nella sezione in lingua Inglese si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post ...

... poi,  in conformità al regolamento (http://forum.arduino.cc/index.php?topic=149082.0), punto 7, devi editare il tuo post (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More -> Modify che si trova in basso a destra del tuo post) e racchiudere il codice all'interno dei tag CODE (... sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra).

In pratica, tutto il tuo codice dovrà trovarsi racchiuso tra due tag: [code] _il _tuo_ codice_ [/code]
 così da non venire interpretato e non dare adito alla formazione di caratteri indesiderati o cattiva formattazione del testo. Grazie.

Guglielmo

P.S.: Il tuo post è già stato spostato nell'opportuna sezione del forum "Italiano"dove puoi proseguire la discussione.

P.P.S.: Ti ricordo che, purtroppo, fino a quando non avrai sistemato il codice come da regolamento, nessuno ti potrà rispondere, quindi ti consiglio di farla al più presto. ;)
Title: Re: piu pulsanti con debounce
Post by: docdoc on Mar 25, 2019, 01:11 pm
vorrei sapere se posso  implementare più di 2 pulsanti (ideale 7).
Ho già provato a farlo ma quando ne inserisco più di 2 si blocca tutto
Primo, definisci "si blocca tutto".
Secondo, metti il codice che ti "blocca tutto" così vediamo meglio, se metti solo quello che ti funziona non possiamo dirti molto..
Terzo, il codice mettilo sempre tra tag "code" come richiesto mi raccomando... ;)


Title: Re: piu pulsanti con debounce
Post by: ale88snake on Mar 28, 2019, 08:22 pm
Salve a tutti non ho capito se posso scrivere qui cmq allego tutto il codice cosi da capire meglio
vorrei solo implementare altri 5 pulsanti che cambiano di stato anche sul web cosi come funziona perfettamente ma solo con 2 pulsanti (uso debounce)
Title: Re: piu pulsanti con debounce
Post by: gpb01 on Mar 28, 2019, 08:27 pm
>ale88snake: leggi bene il mio post #1 e MODIFICA il tuo primo post come ti ho spiegato. Grazie.

Guglielmo
Title: Re: piu pulsanti con debounce
Post by: ale88snake on Mar 28, 2019, 08:34 pm
va bene cosi?
Title: Re: PULSANTI CON DEBOUNCE
Post by: gpb01 on Mar 28, 2019, 08:50 pm
va bene cosi?
:o :o :o ... e il codice dove è finito ? ? ? Perché in allegato ?

Andava bene dove era, dovevi solo racchiuderlo tra i tag CODE ...

Guglielmo
Title: Re: PULSANTI CON DEBOUNCE
Post by: Silente on Mar 28, 2019, 09:55 pm
Domanda: e usare un debounce hardware, che ti permette di gestire unicamente lettura diretta su pin senza tempi morti?
Title: Re: PULSANTI CON DEBOUNCE
Post by: maubarzi on Mar 28, 2019, 10:43 pm
Prima osservazione, millis() ritorna un unsigned long, non un long.
Poi, perchè dici che si blocca?
Sulla ButtonDebounce, prova a sostituire i valori cablati con ad es. delle #define in modo che se decidi di cambiare il numero totale lo cambi in un posto solo senza rischiare di dimenticarne qualcuno con conseguenti errori di accesso ai dati dei vari array e/o modifica di celle di memoria a caso che in casi estremi potrebbero portare al blocco dell'esecuzione.
A prima vista non vedo cose che fanno intendere che il numero di pulsanti sia rilevante per la buona esecuzione del codice. Cioè se funziona per 2 dovrebbe funzionare anche per un numero maggiore.
Non ho indagato a fondo per dire che funziona per due, lo assumo sulla fiducia...
Poi vedo un delay(1000) che eviterei come la peste perchè in quel lasso di tempo puoi pigiare tutti i pulsanti che vuoi ma il micro se ne fregherà altamente.
Usa milli anche li.
Poi, se avessi postato il codice bacato (cioè con più pulsanti) sarebbe stato più facile individuare eventuali problemi...