Go Down

Topic: PULSANTI CON DEBOUNCE  (Read 237 times) previous topic - next topic

ale88snake

Mar 24, 2019, 03:49 pm Last Edit: Mar 31, 2019, 10:05 pm by ale88snake
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...







gpb01

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, 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. ;)
Search is Your friend ... or I am Your enemy !

docdoc

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... ;)


Alex "docdoc" - ** se ti sono stato d'aiuto, un punto karma sarà gradito, clicca su "add" qui a sinistra, vicino al mio nome ;) **

ale88snake

#3
Mar 28, 2019, 08:22 pm Last Edit: Mar 31, 2019, 10:06 pm by ale88snake
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)

gpb01

>ale88snake: leggi bene il mio post #1 e MODIFICA il tuo primo post come ti ho spiegato. Grazie.

Guglielmo
Search is Your friend ... or I am Your enemy !

ale88snake

#5
Mar 28, 2019, 08:34 pm Last Edit: Mar 28, 2019, 08:38 pm by ale88snake
va bene cosi?

gpb01

#6
Mar 28, 2019, 08:50 pm Last Edit: Mar 28, 2019, 10:03 pm by gpb01
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
Search is Your friend ... or I am Your enemy !

Silente

Domanda: e usare un debounce hardware, che ti permette di gestire unicamente lettura diretta su pin senza tempi morti?
Dove va un numero va una variabile o una funzione. E dove va una boolean va un insieme di test.

Se vuoi ottenere devi saper spiegare

In pochi capiscono l'importanza di formattare, sii tra di essi

maubarzi

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...
Nessuna buona azione resterà impunita!

Preistoria -> medioevo -> rinascimento -> risorgimento -> rincoglionimento!

Go Up