Paso 1: el código
' Se ejecutará a través de MamaLoop, y se detiene y
' esperar hasta una determinada cantidad de tiempo (SomeNumber)
' ha pasado desde el inicio de MamaLoop antes de continuar
' a FinishLoop.
'####################################################
SomeNumber var palabra
SomeNumber = 4500
MyTime var palabra
'====================================
MamaLoop:
T1CON.0=0 ' detener el temporizador
TMR1H = 0 ' la parte alta del valor de temporizador se establece en 0
TMR1L = 0 ' configurar la parte baja del valor del contador de tiempo 0
T1CON.0=1 ' iniciar el temporizador
' hacer lo que quieras en el bucle
'.. .blah if, a continuación, blabla
'.. .blah if, a continuación, blabla
'.. .blah
'-----
' la EndLoopDelay esperará hasta que haya pasado un período de tiempo determinado
' desde el inicio de la MamaLoop (cuando el valor de temporizador se establece en 0)
EndLoopDelay:
CLEARWDT ' borrar el temporizador del vigilante (para no resetear el PIC)
MyTime.Highbyte=TMR1H ' obtener el valor de temporizador
MyTime.Lowbyte=TMR1L ' que el resto del valor del contador de tiempo
MyTime IF > SomeNumber entonces ' si el valor del temporizador > que su número
GOTO FinishLoop
otra cosa
GOTO EndLoopDelay
endif
'-----
'====================================
FinishLoop:
' hacer algo al final del bucle
' luego volver a reiniciar el MamaLoop
GOTO MamaLoop
'####################################################