practica: Subrutinas de tiempo
Centro de Estudios Científicos y Tecnológicos Nº 1
“Gonzalo Vázquez Vela”
Academia de Sistemas Digitales
Prácticas de Micro Electrónica Programable
ASIGNATURA:
NOMBRE DEL ALUMNO:
Apellido Paterno
Apellido Paterno
HOJA
FECHA
DE
DIA
Nombre
N° DE BOLETA:
Micro Electrónica Programable
MES
EVALUACION
AÑO
PROFESOR:
GRUPO:Práctica 1
Subrutinas de tiempo
Competencias de La Unidad:
• Emplea el microcontrolador en la comunicación de datos y control de periféricos de forma
multiplexada.
Resultado de Aprendizaje Propuesto (RAP):
• Usa diferentes elementos periféricos utilizando los puertos del microcontrolador de forma
multiplexada.
Utiliza los puertos del microcontrolador de forma bidireccional en la soluciónde un problema
Objetivos de la Práctica:
1. Implementar subrutinas de tiempo de diferentes valores.
2. Determinar con el simulador el tiempo total de subrutina de tiempo.
3. Realizar la simulación de un programa en ensamblador para comprobar su funcionamiento
4. Desarrolla programas que habilite y deshabilite las salidas de microcontrolador por cierto tiempo.
5. Implementar un programa en uncircuito basado en microcontrolador.
1
Dr. Oscar Octavio Gutiérrez Frías
Academia de Sistemas Digitales T.V.
Microelectrónica Programable
Equipo Necesario
Material Necesario
Computadora (con el Software MPLAB IDE, IC-PROG Instrucciones del PIC 16F887
o similar )
MIcrocontrolador PIC16F887 u otro de
Programador tipo JDM o similar.
gama media
Capacitores
LED’sResistencias
pushbutton
Cristal de cuarzo de 4MZ
(Para los valores de estos elementos ver
figura 1.1)
Introducción Teórica
Subrutinas
Existen secuencias de instrucciones que son usadas por el programa principal varias veces. Entonces, una
subrutina es un conjunto de instrucciones que se agrupan para realizar un función específica, y se
escriben una sola vez dentro del programa principal. Peropueden ser ejecutadas varias veces.
Las subrutinas son subprogarmas dentro un programa principal, indicados con un nombre especifico
(etiqueta), Para llamar una subrutina en los microcontroladores PIC se utiliza la instrucción CALL (llamar) y
para indicar que la subrutina ha finalizar se utiliza la instrucción RETURN (regresar).
Subrutinas de Retardo
Por lo general, cuando se requiere la salida oentrada de datos, es conveniente dentro del programa
provocar tiempos de retardo; para permitir que los dispositivos respondan en un tiempo determinado Por lo
tanto, un retardo, es una forma de control de tiempo en la programación del PIC,
Las instrucciones 'simples' utilizan un ciclo de máquina para ejecutarse, un ciclo máquina es la unidad
básica de tiempo de ejecución de un programa en unPIC y depende de la velocidad del oscilador.
Hay instrucciones llamadas de salto como goto, return, call, btfss etc. que necesitan 2 ciclos máquina
para ejecutarse. Si contamos los ciclos máquina de un determinado número de instrucciones del
programa, podremos controlar los tiempos de retardo.
Como sabemos F=1/T, siendo F=frecuencia y T= tiempo.
Por consecuencia,
podemos determinar cuántotiempo consumirá una instrucción en el
microcontrolador, sabiendo que para ejecutar una instrucción se utiliza un ciclo de maquina (CM) que
equivale a 4 pulsos de reloj.
2
Dr. Oscar Octavio Gutiérrez Frías
Academia de Sistemas Digitales T.V.
Microelectrónica Programable
Para nuestro caso: Si el microcontrolador funciona a 4MHz, entonces
F=1/T por lo tanto T=1/F
Si F=4MHz
T=1/F = 1 /4 Mhz=0.25µseg
Es decir que para un reloj de 4 MHz, cada instrucción simple (1 CM= 4*T) tardará 1 µseg,(TCM=1 µseg )
y para las instrucciones de salto (2 CM) tardará 2useg.
El algoritmo general para obtener la subrutina de retardo consiste en los siguientes pasos:
1.
2.
3.
4.
Cargar un dato k en un registro.
Decrementar el registro y verificar si no es cero
Si es cero ir a paso 4,...
Regístrate para leer el documento completo.