Salve a tutti. Da prove fatte ho constatato che gli interrupt su input e seriali non funzionano.
La funzione
attachInterrupt(digitalPinToInterrupt(Input1), InputsRead, CHANGE);
ad esempio non va. Sto usando l'ultima versione di Ide.
Ma tu che cosa devi fare ? Con che Arduino ? Quali pin stai usando (... solo specifici pin si possono usare con l'AttachInterrupt() ... come chiaramente descritto nel reference delle varie schede) ? Hai letto quello che ti ho linkato sopra ?
mrdebug:
Ciao, ti ringrazio per la rapida risposta, sto leggendo ovunque ma trovo solo esempi che non funzionano, come ad esempio questa guida: attachInterrupt() - Arduino Reference
Esiste una libreria che permette di avere interrupt su qualsiasi pin, al link tra i link in basso. http://playground.arduino.cc/Code/Interrupts
Non ho mai provato questa lib, meglio avere pareri più autorevoli.
Premesso che gli UNICI veri pin collegati direttamente ad un segnale di interrupt sono quelli indicati sopra, è in realtà possibile usare gli interrupt generati dal pinChange su più o meno tutti i pin.
La migliore librerie che gestisce tutti i tipi di interrupt su tutte le schede Arduino e che rende obsoleta quella indicata da Nid, è la EnableInterrupt .
gpb01:
La migliore librerie che gestisce tutti i tipi di interrupt su tutte le schede Arduino e che rende obsoleta quella indicata da Nid, è la EnableInterrupt .
Confermo, è la migliore in assoluto, ben fatta e ben documentata.
La libreria funziona tranquillamente ma non riesco ad includerla 2 volte.
Nel main controllo la pressione di un tasto per mezzo di interrupt.
Ho poi un wiegand.c e wiegand.h in cui vorrei includere e rendere autonoma la gestione degli interrupt. Non riesco e non vorrei stravolgere il codice.
C'è in altre parole il modo di avere un main ed un file dile01.c che entrambi in modo autonomo includano la suddetta libreria?