Anda di halaman 1dari 7

Microcontroladores Programables

B. Benito Salmern Quiroz

Prctica 2
Contador Decimal Exhibido en un Display

PRACTICA 1
TEMPORIZADOR DE UN SEGUNDO
OBJETIVO
Apagar y encender un led durante una temporizacin de un segundo, esto nos servir
para tener un primer acercamiento con el usos de los puertos del PIC y el conocimiento de
algunas instrucciones del lenguaje ensamblador de los microcontroladores y adems la
realizacin de algunas subrutinas.

INTRODUCCION
Los microcontroladores estn conquistando el mundo. Estn presentes en nuestro trabajo,
en nuestra casa y en nuestra vida, en general. Se pueden encontrar controlando el
funcionamiento de los ratones y teclados de los computadores, en los telfonos, en los hornos
microondas y los televisores de nuestro hogar.
Pero la invasin acaba de comenzar y el nacimiento del siglo XXI ser testigo de la
conquista masiva de estos diminutos computadores, que gobernarn la mayor parte de los
aparatos que fabricaremos y usamos los humanos.
En la actualidad es necesario tener pleno control sobre los procesos de produccin, para
realizar este control se utilizan los microcontroladores, los cuales dependiendo de sus
caractersticas nos permitirn realizar mltiples actividades; por tal motivo como estudiantes de
de ciencias aplicadas es necesario conocer el manejo de los microcontroladores y que mejor
forma de hacerlo que haciendo practicas que nos permitan adquirir la experiencia necesaria en
el manejo de estos.
Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o
varios procesos. Por ejemplo, el controlador que regula el funcionamiento de un horno dispone
de un sensor que mide constantemente su temperatura interna y, cuando traspasa los lmites
prefijados, genera las seales adecuadas que accionan los efectores que intentan llevar el valor
de la temperatura dentro del rango estipulado.
Hace tres dcadas, los controladores se construan exclusivamente con componentes de
lgica discreta, posteriormente se emplearon los microprocesadores, que se rodeaban con chips
de memoria y E/S sobre una tarjeta de circuito impreso.
En la actualidad, todos los elementos del controlador se han podido incluir en un chip, el
cual recibe el nombre de microcontrolador.

Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana

Microcontroladores Programables
B. Benito Salmern Quiroz

Prctica 2
Contador Decimal Exhibido en un Display

MARCO TEORICO
Un microcontrolador es un circuito integrado de alta escala de integracin que incorpora
la mayor parte de los elementos que configuran un controlador.
Un microcontrolador dispone normalmente de los siguientes componentes:
Procesador o UCP (Unidad Central de Proceso).
Memoria RAM para Contener los datos.
Memoria para el programa tipo ROM/PROM/EPROM.
Lneas de E/S para comunicarse con el exterior.
Diversos mdulos para el control de perifricos (temporizadores, Puertas Serie y
Paralelo, CAD: Conversores Analgico/Digital, CDA: Conversores Digital/Analgico,
etc.).
Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema.
Los productos que para su regulacin incorporan un microcontrolador disponen de las
siguientes ventajas:
Aumento de prestaciones: un mayor control sobre un determinado elemento representa
una mejora considerable en el mismo.
Aumento de la fiabilidad: al reemplazar el microcontrolador por un elevado nmero de
elementos disminuye el riesgo de averas y se precisan menos ajustes.
Reduccin del tamao en el producto acabado: La integracin del microcontrolador en
un chip disminuye el volumen, la mano de obra y los stocks.
Mayor flexibilidad: las caractersticas de control estn programadas por lo que su
modificacin slo necesita cambios en el programa de instrucciones.
El microcontrolador es en definitiva un circuito integrado que incluye todos los
componentes de un computador. Debido a su reducido tamao es posible montar el controlador
en el propio dispositivo al que gobierna. En este caso el controlador recibe el nombre de
controlador empotrado (embedded controller).
En cuanto a las tcnicas de fabricacin, cabe decir que prcticamente la totalidad de los
microcontroladores actuales se fabrican con tecnologa CMOS 4 (Complementary Metal Oxide
Semiconductor). Esta tecnologa supera a las tcnicas anteriores por su bajo consumo y alta
inmunidad al ruido.
Los detalles ms importantes que tienen los PIC son los siguientes:
o Sencillez de manejo: Tienen un juego de instrucciones reducido; 35 en la gama media.
o Buena informacin, fcil de conseguir y econmica.
o Precio: Su coste es comparativamente inferior al de sus competidores.
Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana

Microcontroladores Programables
B. Benito Salmern Quiroz

Prctica 2
Contador Decimal Exhibido en un Display

o Poseen una elevada velocidad de funcionamiento. Buen promedio de parmetros:


velocidad, consumo, tamao, alimentacin, cdigo compacto, etc.
o Herramientas de desarrollo fciles y baratas. Muchas herramientas software se pueden
recoger libremente a travs de Internet desde Microchip.
o Existe una gran variedad de herramientas hardware que permiten grabar, depurar, borrar
y comprobar el comportamiento de los PIC.
o Diseo rpido.
o La gran variedad de modelos de PIC permite elegir el que mejor responde a los
requerimientos de la aplicacin.
Una de las razones del xito de los PIC se basa en su utilizacin. Cuando se aprende a
manejar uno de ellos, conociendo su arquitectura y su repertorio de instrucciones, es muy fcil
emplear otro modelo.
Descripcin de las caractersticas ms representativas de los PIC:
Arquitectura. La arquitectura del procesador sigue el modelo Harvard. En esta arquitectura, la
CPU se conecta de forma independiente y con buses distintos con la memoria de instrucciones
y con la de datos.
La arquitectura Harvard permite a la CPU acceder simultneamente a las dos memorias.
Adems, propicia numerosas ventajas al funcionamiento del sistema como se irn describiendo.
Segmentacin. Se aplica la tcnica de segmentacin (pipe-line) en la ejecucin de las
instrucciones. La segmentacin permite al procesador realizar al mismo tiempo la ejecucin de
una instruccin y la bsqueda del cdigo de la siguiente. De esta forma se puede ejecutar cada
instruccin en un ciclo (un ciclo de instruccin equivale a cuatro ciclos de reloj). Las
instrucciones de salto ocupan dos ciclos al no conocer la direccin de la siguiente instruccin
hasta que no se haya completado la de bifurcacin.
Formato de las instrucciones. El formato de todas las instrucciones es de la misma longitud.
Todas las instrucciones de los microcontroladores de la gama baja tienen una longitud de 12
bits. Las de la gama media tienen 14 bits y ms las de la gama alta. Esta caracterstica es muy
ventajosa en la optimizacin de la memoria de instrucciones y facilita enormemente la
construccin de ensambladores y compiladores.
Juego de instrucciones. Procesador RISC (Computador de Juego de Instrucciones Reducido).
Los modelos de la gama baja disponen de un repertorio de 33 instrucciones, 35 los de la gama
media y casi 60 los de la alta.
Todas las instrucciones son ortogonales. Cualquier instruccin puede manejar cualquier
elemento de la arquitectura como fuente o como destino.
Arquitectura basada en un banco de registros. Esto significa que todos los objetos del
sistema (puertas de E/S, temporizadores, posiciones de memoria, etc.) estn implementados
fsicamente como registros.
Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana

Microcontroladores Programables
B. Benito Salmern Quiroz

Prctica 2
Contador Decimal Exhibido en un Display

DIAGRAMA DE FLUJO
El diagrama de flujo nos dice que debemos ir al banco 1 para poder configurar el puerto
B e inmediatamente despus debemos retornar al banco 0 para poder escribir las lneas de
lenguaje ensamblador que puedan encender el led, despus se llama a la subrutina retardo para
que este permanezca encendido durante un segundo.
Al termino de un segundo ser necesario apagar el led un segundo para poder distinguir
la temporizacin de un segundo. Cuando se halla terminado un ciclo de encender y apagar el
led debemos de ciclar la rutina.

Ahora el diagrama de flujo de la subrutina retardo se muestra a continuacin. Esta


subrutina de retardo tiene una duracin de T=3!*0x21*0x64*0x64 seg. Donde los valores
hexadecimales son cargados a los registros Contador0, Contador 1 y Contador2,
respectivamente, para obtener aproximadamente 1 segundo ya que realmente se tiene
Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana

Microcontroladores Programables
B. Benito Salmern Quiroz

Prctica 2
Contador Decimal Exhibido en un Display

T=.3!*33*100*100=0.99seg. El diagrama de flujo muestra un ciclo exterior y dos ciclos


interiores por lo que son llamados ciclos anidados. Un ciclo anidado quiere decir que un ciclo
est dentro de otro ciclo.

Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana

Microcontroladores Programables
B. Benito Salmern Quiroz

Prctica 2
Contador Decimal Exhibido en un Display

DIAGRAMA ESQUEMATICO

CDIGO FUENTE
; *****************************************************************************************
; ******************************* Temporizador de un Segundo ********************************
; *****************************************************************************************
LIST P=16F877
;*** declaracin de los registros ***
; ****************************
ESTADO
PUERTOB
CONTADOR0
CONTADOR1
CONTADOR2

usuario

us0

EQU
EQU
EQU
EQU
EQU
ORG
goto
ORG

0x03
0X06
0x20
0x21
0x22
00
usuario
05

bsf
bcf
bcf
bsf
call
bcf
call
goto

ESTADO,5
PUERTOB,0
ESTADO,5
PUERTOB,0
retardo
PUERTOB,0
retardo
us0

;lugar dnde se colocara la sig. instruccin


;ir a la etiqueta usuario

;en 1 el bit 5 de estado para estar en el banco 1


;como salida B.0
;en 0 el bit 5 para estar en el banco 0
;led encendido
;llama a la subrutina retardo
;led apagado
;ciclo

Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana

Microcontroladores Programables
B. Benito Salmern Quiroz

Prctica 2
Contador Decimal Exhibido en un Display

;*** cuerpo de la subrutina retardo ***


; ******************************
retardo
reta2
reta1
reta0

movlw
movwf
movlw
movwf
movlw
movwf
decfsz
goto
decfsz
goto
decfsz
goto
return
END

0x21
CONTADOR2
0x64
CONTADOR1
0x64
CONTADOR0
CONTADOR0,1
reta0
CONTADOR1,1
reta1
CONTADOR2,1
reta2

;w=33
;contador2=w
;w=100
;contador1=w
;w=100
;contador0=w
;decrementa contador0, si es 0 salta la sig. inst.

;regresa al programa principal


;fin del programa

COMENTARIOS
Los elementos requeridos para la implementacin del circuito son muy pocos, esto nos
da una idea de que es posible realizar aplicaciones ms complejas sin tener que contar con una
circuitera demasiado grande.
Al realizar un programa en ensamblador, es necesario llevar un orden, es decir, ubicar
muy bien el lugar de las etiquetas, de los comandos y de los comentarios para no tener ninguna
confusin en caso de que sea necesaria una revisin al listado del programa.
SUGERENCIA
Modificar este programa con el objetivo de obtener una temporizacin de medio
segundo.
MATERIAL
1 fuente de alimentacin de +5V DC.
1 microcontrolador PIC16F877.
1 cristal de 4 Mhz.
2 capacitores 33 pf.
1 protoboard
1 resistencia de 10 k"#$
1 resistencia de 100 "#$
1 resistencia de 220 "#
1 push button.
1 LED (Diodo Emisor de Luz).

Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana