Escolar Documentos
Profissional Documentos
Cultura Documentos
el PIC
1 1
Tiempo = 4 cm = 4 1 = 1μs
f 4 MHz
Ejemplo 2
Calcular el tiempo que tarda en ejecutarse la
instrucción call si el sistema funcionase con un
cristal de cuarzo de 4 MHz.
Solución: Al tratarse de un salto la instrucción tarda 2
ciclos en ejecutarse.
1 1
Tiempo = 4 cm = 4 2 = 2 μs
f 4 MHz
Ejercicio
En un sistema
microcontrolador
PIC16F84 y cristal de
cuarzo de 4 MHz se
desea generar un
retardo de 1.5 ms.
Calcular el número
de ciclos de máquina
necesarios.
Solución
De la ecuación principal se deduce:
f 4 MHz
cm = Tiempo = 1500μs = 1500
4 4
Instrucción NOP
La instrucción NOP (no operación) no realiza
operación alguna.
Solo consume un ciclo de máquina sin hacer
nada.
Retardos mediante lazo simple
Se trata de un conjunto de instrucciones
que se repiten tantas veces como sea
necesario, hasta conseguir el retardo
pretendido.
Puede implementarse como subrutina.
Estructura de un retardo simple
CALL RETARDO
DECREMENTA CONT1
CONT1 =
0 NO
SI
RETURN
Programa en ensamblador
Retardo1ms MOVLW d’249’
MOVWF CONT1
LOOP NOP
DECFSZ CONT1,F
GOTO LOOP
RETURN
Tiempo de la subrutina
Retardo1ms ;LA LLAMADA CALL APORTA 2 CICLOS
MOVLW d’249’ ;APORTA 1 CICLO DE MAQUINA, “K”
MOVWF CONT1 ;APORTA 1 CICLO DE MÁQUINA
LOOP NOP ;APORTA Kx1 CICLO DE MÁQUINA
DECFSZ CONT1,F ;(K-1)x1 CM (CUANDO NO SALTA), 2 AL SALTAR
Tiempo − 5
Tiempo = 5 + 4 K ⇒ K =
4
Ejemplo 3
Calcular el valor de la constante K, para obtener
una subrutina de retardo de 500 μs con la
estructura vista.
Solución:
Tiempo − 5 500 − 5
K= = = 123.7
4 4
¿Qué valor se debe elegir para K?
Si se elige 123, se obtiene un tiempo de
retardo real de:
Tiempo = 5 + 4 K = 5 + (4 x123) = 497 μs