Sapete darmi qualche info?? Devo far si che il mio programma riconosca la pressione del pulsante, e metta in attivo l'uscita per 20 ms, anche se il tasto resta premuto più a lungo, quale comando è giusto usare... e come??? :-[ Grazie!
Personalmente non ho usato questa libreria per cui non so come funzioni ma.... tu... cosa vuoi fare?
Dalla mia (breve per altro...) esperienza con Arduino mi sono accorto di due cose:
Arduino fa migliaia di operazioni al secondo
quando premiamo un pulsante, per quanto rapidamente, teniamo premuto il bottone per almeno 20 o 30 operazioni di Arduino
Per questo motivo, quando gli dai la lettura di un PIN al quale è collegato il bottone, se il programma nota che il bottone è stato premuto (è in HIGH) devi poi aspettare qualche millisecondo prima di fargli fare un'altra lettura.
Per me un valore buono sono 300ms.
A mio avviso per la maggior parte delle esigenze può andare bene così...
La libreria che hai postato (l'ho vista in un soffio per cui potrei sbagliarmi) ti da possibilità a livello di sottigliezze inerenti il bottone...
Devo far si che quando premo il pulsante, mi invii un impulso per 20 ms, anche se tengo premuto il tasto per un secondo. non posso però mettere un ritardo e basta nella lettura del segnale, in quanto, per capirsi, se premo la prima volta il bottone per 1/2 sec, lui invia il primo impulso di 20 ms, poi rilascio il bottone per un tempo ignoto ( potrebbe essere qualche ms come decine di secondi) e lo premo nuovamente pur un tempo più o meno lungo, ma lui deve sempre e solo inviare un impulso di 20 ms in output
@uccio beh, non c'è che dire... Non ci avevo pensato. Effettivamente l'esempio che hai postato sembra interessante.
L'avevo premesso che non ho molta esperienza no? ;D
@Fabry a questo punto, usando la funzione millis() ed usando l'esempio che ha linkato uccio, puoi risolvere il tuo problema.