Académique Documents
Professionnel Documents
Culture Documents
Práctica 1: Kit
Objetivo
• El alumno comprenderá el funcionamiento de las entradas y salidas
digitales en los puertos del microcontrolador PIC16F887.
• El alumno aprenderá a calcular tiempos de ejecución en base a
ciclos máquina.
Descripción
En los años 80s existió una serie de televisión llamada “El auto increíble”
(Knight Driver). Este automóvil además de tener turbinas y hasta mente
propia, contaba con una barra luminosa en la parte frontal, arriba de la
defensa. Esta barrita contaba con una luz que se recorría de un extremo a
otro como muestra la figura 1.
Notas de diseño
1. Hay que tomar en cuenta que en el microcontrolador que se
pretende utilizar, muchos de los puertos tienen también la función de
entradas de canales analógicos, por lo cual es necesario
configurarlos como entradas y salidas digitales. Se recomienda ver el
Apunte Puertos.
2. No hay que olvidar que el valor inicial del bit de acarreo es
indeterminado y que las instrucciones de rotación de bit utilizan
dicho bit para realizar su operación, por lo cual es necesario
garantizar que su valor sea puesto en ‘0’ antes de comenzar el
recorrido.
Reglas de Comportamiento
En las reglas de comportamiento se establece que tipo de conexión
deberán llevar los elementos electrónicos, así como polaridades y
acciones, por ejemplo, si un botón va a funcionar como normalmente
abierto o normalmente cerrado.
Para esta práctica hay que establecer qué tipo de luces se conectarán,
éstas pueden ser pequeños focos o LEDs. Si se escogieran lámpara no es
necesario establecer una polaridad, lo que se deberá ser necesario es
establecer el voltaje de funcionamiento y las potencia para así poder
escoger los elementos de potencia adecuados. Para el caso de los LEDs es
necesario establecer la polaridad, ya que estos elemento van a emitir luz
de acuerdo a la conexión que se establezca.
Diagrama de Flujo
El diagrama de flujo es el diseño lógico del algoritmo propuesto, éste
deberá considerar cada uno de los pasos a seguir para poder obtener la
respuesta esperada. El diagrama de flujo, por fuerza, deberá ser general,
de tal forma que pueda ser programado en cualquier plataforma y por lo
anterior deberá utilizar los alias propuestos en la tabla de entradas y salidas
(ver Tabla 1).
RETARDO
INICIO
71 ms
KIT = 1 x=9
RETARDO
71ms y = 68
z--
KIT<7> == 1?
NO
SI NO
SI
NO z == 0?
RETARDO
71ms
SI
NO KIT = KIT / 2
y == 0?
SI
KIT<7> == 1?
x == 0?
FIN
SI
REGRESO
Diagrama Electrónico
El diagrama electrónico se deberá hacer con componentes estándar que
sea posible de conseguir y deberán respetar las reglas de comportamiento
comentadas anteriormente. Cada uno de los componentes deberá indicar
su valor y polaridad.
;INICIA PROGRAMA
org 0x00 ;VECTOR DE RESET
goto INICIO ;SALTA AL VECTOR DE INTERRUPCIÓN
;SUBRUTINA DE RETARDO DE 71 ms
;LA FUNCIÓN DE RETARDO PARA ESTE PROGRAMA ES t = (5 + 4x + 4xy +3xyz)(200ns)
;DONDE x = 9, y = 68, z = 162
DELAY MOVLW .9 ;CARGA EL VALOR DE X
MOVWF TMP0
DEL0 MOVLW .68 ;CARGA EL VALOR DE Y
MOVWF TMP1
DEL1 MOVLW .162 ;CARGA EL VALOR DE Z
MOVWF TMP2
DEL2 DECFSZ TMP2,F ;Z--, Z == 0?
GOTO DEL2
DECFSZ TMP1,F ;Y--, Y == 0?
GOTO DEL1
DECFSZ TMP0,F ;X--, X == 0?
GOTO DEL0
RETURN ;REGRESO
END