Citazione:
Originalmente inviato da illez Non è più accademica o elegante, è l'unica praticabile.
Pensaci: hai due oggetti (l'input e l'output) che vanno a velocità diverse.
Non possono andare a velocità diverse se uno (l'out) aspetta l'altro.
Del resto tu stesso ti sei reso conto del problema   |
Scusa ma non capisco...
facendo una simulazione su una scala dei tempi:
T=0 Misuro l'impulso, supponiamo sia 1800uS
T=1800 Genero l'impulso 2000
T=3800 Mi metto a riaspettare il nuovo input
T=20000 Arriva il nuovo impulso...
Non capisco dove serva l'interrupt, ma anche andando all'indietro
T=0 Misuro l'impulso 1200
T=1200 Genero l'impulso 1000
T=2200 Mi metto a riaspettare il nuovo impulso
T=20000 Arriva il nuovo...
I due impulsi non vanno a velocità diverse hanno solo lunghezza diversa ma, se si vuole stare nello standard, la ripetizione è 50 hz.
Scomodare la gestione degli interrupt in questo caso non serve, la base dei tempi dei 50hz te la da la ricevente, non è necessario gestire anche la durata della pausa dell'impulso generato.