Ciao!
Ragazzi scusate ma sto cercando di imparare facendo cose semplicissime, ho creato un ritardo ma i tempi non vengono rispettati nel esempio creo un ciclo fore next per 20 voote cosi' da creare un ritardo che dovrebbe essere di 20 secondi in realta' ne ottengo 10 di secondi sapete spiegarmi dove sbaglio? ecco il listato:
@ device pic12F508, XT_OSC, MCLR_OFF,WDT_OFF,PROTECT_OFF
TRISIO = %11111101 ' Configurazione porta gpio1 uscita option_reg.6 = 0 ' pull-up sugli ingressi Define osc 4 ' dichiaro di usare un quarzo a 4 Mhz
Symbol LED0 = GPIO.1 'uscita rele symbol ing0 = GPIO.0 ' ingresso usato
tempo var byte 'variabile per avere il ritardo voluto
Main led0 = 1 if ing0 = 0 then ' il rele' e' eccitato gosub conta ' fino a quando l'ingresso gpi non va a
0 in questo caso salta alla subroutine conta endif goto main
conta tempo = 0 'metto la variabile conta a 0 led0 = 0 ' spengo il rele' for tempo = 0 to 20 ' creo un ciclo pari a 21 cioe' da 0 a 20 tempo = tempo + 1 ' incremento di una unita' fino ad arrivare a
20 pause 1000 'ritardo di 1 secondo next tempo return 'ritorno dalla chiamata di subroutine
end ' fine del programma