Escolar Documentos
Profissional Documentos
Cultura Documentos
utilizado para as obtener el tiempo que tarda
un ciclo maquina
maquina.
=
4
5
Rutina de retardo
N equ 0xFF ; Valor deseado
cotn equ 0x0 ; Direccin de guardado
d20ms
movlw N ;(1)
movwf cont ;(1)
repi
decfsz cont,1 ;(1 si no escapa, 2 si escapa)
goto repi ;(2)
return ;(2)
Donde el tiempo de retardo lo podemos obtener por medio de la
siguiente formula:
= 3 + 5
Donde Tcy es la duracin de segundos de un ciclo de instruccin
El mximo retardo que se puede generar con esta rutina es de 154s.
6
Si se quiere generar un retardo mayor se pueden usar
ciclos anidados. A continuacin se muestra un dos ciclos
anidados:
Donde se propone R1 y R2 para generar el retardo. El
mximo retardo que puede generar esta rutina es de
39.2712 ms, por lo tanto podemos generar un retardo de
20 ms con los siguientes valores R1 = 0x82 y R2 = 0xFF
7
Para la deteccin de un push button primero se debe
configurar el pin del puerto como entrada y utilizar un
ciclo que este revisando peridicamente el estado de ese
pin. Por ejemplo
Donde la instruccin BTFSC revisa el Pin 4 del Puerto A;
Si es 0: Brinca la siguiente instruccin, ejecuta GOTO
ESPERA.
Si es 1: Ejecuta la siguiente instruccin, ejecuta GOTO
REV1 (REV1 continua con el resto del programa).
Deteccin de un Pushbutton
8
En muchas ocasiones es necesario para un
programador efectuar una coincidencia entre
alguna cantidad o valores conocidos y un
nmero desconocido que se tiene como ndice.
Para la lectura de la tabla se utiliza la
instruccin TBLRD y sus variantes.
Lectura de Tablas en la
Memoria del Programa
9
FUNCIONAMIENTO
1. Se asigna la direccin de la memoria del programa al
apuntador TBLPTR.
2. Se lee el dato de la memoria del programa al que se
esta apuntando con la instruccin TBLRD *
10
11
Ejemplo