Citazione:
Originally posted by SoldatoSemplice@17 novembre 2005, 10:48 Avrei realizzato questa routine di ritardo secondo me funziona ma un parere di chi ne sa più di me è gradito: eccola...
[cut]
è vero che con una variabile di solo 8 bit si può ottenere un ritardo massimo di 2 millisecndi? |
La routine funziona e cosi' come e' scritta se non ho sbagliato i conti dura 49,549307 secondi con clock di 4MHz. Il valore del registro W non viene mai alterato, quindi basta impostarlo la prima volta. Non capisco l'utilita' della riga " GOTO RITARDOALTO0".
Con un semplice decremento a 8 bit otteniamo 0,768mS:
Codice:
CLRF CL
DECFSZ CL,F
GOTO $-1
Aggiungendo qualche ritardo intermedio allunghiamo un po', ma siamo sempre su quei valori, la seguente routine dura 1,792mS:
Codice:
CLRF CL
NOP
NOP
NOP
NOP
DECFSZ CL,F
GOTO $-5