Citazione:
Originalmente inviato da romoloman ...
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. |
Probabilmente sono stato portato fuori strada dalla domanda, perché è vero, il periodo può variare da 20 a 30ms mentre l'impulso tra 1 e 2ms.
L'interrupt non è necessario, basta leggere il timer per calcolare la durata dell'impulso.
Forse l'interrupt può tornare utile se il firmware fa anche altre cose, ma se fa solo quello direi che si può evitare.
Allora, sarà l'ora tarda, ma continuo a non capire la domanda iniziale.

Che vuol dire tornare indietro nel tempo?
Forse appena arriva alto l'impulso in ingresso lo porti alto anche in uscita e quindi non puoi farlo più breve di quanto ricevi (a meno di predire il futuro)?
Se questa era la domanda, direi che il flusso è sbagliato. Misuri impulso, generi di conseguenza l'impulso in out, più breve o più lungo.