Download El 16F84

Document related concepts
no text concepts found
Transcript
MICROCONTROLADORES
Un microcontrolador es un circuito integrado o chip que incluye en su interior las tres unidades
funcionales de una computadora: CPU, Memoria y Unidades de E/S, es decir, se trata de una
computadora completa en un solo circuito integrado programable y se destina a gobernar una sola tarea
con el programa que reside en su memoria. Sus líneas de entrada/salida soportan el conexionado de los
sensores y actuadores del dispositivo a controlar.
Esquema de un microcontrolador
APLICACIONES DE LOS MICROCONTROLADORES
Los microcontroladores están siendo empleados en multitud de sistemas presentes en nuestra vida
diaria, como pueden ser juguetes, horno microondas, frigoríficos, televisores, computadoras,
impresoras, módems, el sistema de arranque de nuestro coche, etc. Y otras aplicaciones con las que
seguramente no estaremos tan familiarizados como instrumentación electrónica, control de sistemas en
una nave espacial, etc. Una aplicación típica podría emplear varios microcontroladores para controlar
pequeñas partes del sistema. Estos pequeños controladores podrían comunicarse entre ellos y con un
procesador central, probablemente más potente, para compartir la información y coordinar sus
acciones, como, de hecho, ocurre ya habitualmente en cualquier PC.
ARQUITECTURA DE UN MICROCONTROLADOR
Según la arquitectura interna de la memoria de un microcontrolador se puede clasificar considerando
como el CPU accede a los datos e instrucciones, en 2 tipos:
1. Arquitectura Von Neuman
Fue desarrollada por Jon Von Neumann, se caracteriza por tener una sola memoria principal donde se
almacenan datos e instrucciones de forma indistinta. La CPU se conecta a través de un sistema de buses
(direcciones, datos y control). Esta arquitectura es limitada cuando se demanda rapidez.
2.Arquitectura Harvard
Fue desarrollado en Harvard, por Howard Aiken, esta arquitectura se caracteriza por tener 2 memorias
independientes una que contiene sólo instrucciones y otra, que contiene sólo datos. Ambas, disponen
de sus respectivos sistemas de buses para el acceso y es posible realizar operaciones de acceso
simultáneamente en ambas memorias.
El PIC 16F84
es el microcontrolador que fabrica la compañía Microchip.
Aunque no son los microcontroladores que más prestaciones ofrecen, en los últimos años han ganado
mucho mercado, debido al bajo precio de éstos, lo sencillo de su manejo y programación y la ingente
cantidad de documentación y usuarios que hay detrás de ellos.
¿Para qué sirve un PIC?
Un PIC, al ser un microcontrolador programable, puede llevar a cabo cualquier tarea para la cual haya
sido programado.
No obstante, debemos ser conscientes de las limitaciones de cada PIC. Así, el 16F84, PIC que se tratará
en este tutorial, no podrá generar un PWM ni convertir señales analógicas en digitales, entre otras.
El 16F84
Se trata de un microcontrolador de 8 bits. Es un PIC de gama baja, cuyas características podemos
resumir en:
- Memoria de 1K x 14 de tipo Flash
- Memoria de datos EEPROM de 64 bytes
- 13 líneas de E/S con control individual
- Frecuencia de funcionamiento máxima de 10 Mhz.
- Cuatro fuentes de interrupción
* Activación de la patita RB0/INT
* Desbordamiento del TMR0
* Cambio de estado en alguna patia RB4-RB7
* Fin de la escritura de la EEPROM de datos
- Temporizador/contador TMR0 programable de 8 bits
- Perro Guardián o WatchDog
Generalmente se encuentra encapsulado en formato DIP18. A continuación puede apreciarse dicho
encapsulado y una breve descripción de cada una de las patitas: imagen:
- VDD: alimentación
- VSS: masa
- OSC1/CLKIN-OSC2/CLKOUT: conexión del oscilador
- VPP/MCLR: tensión de programación y reset
- RA0-RA3: líneas de E/S de la puerta A
- RA4: línea de E/S de la puerta A o entrada de impulsos de reloj para TMR0
- RB0/INT: línea de E/S de la puerta B o petición de interrupción
- RB1-RB7: líneas de E/S de la puerta B
TIPOS DE MEMORIA
- Memoria RAM (Random Access Memory) Memoria de Acceso Aleatorio) en esta memoria se guarda los
datos que se está utilizando en el momento presente. El almacenamiento es considerado temporal por
que los datos permanecen en ella mientras la memoria tiene una fuente de alimentación. La memoria
de programas o de instrucciones contiene una serie de diferentes tipos de memoria:
- Memoria ROM con máscara y es de solo lectura, cuyo contenido se graba durante la fabricación del
chip. Es aconsejable cuando se precisan cantidades superiores a varios miles de unidades.
- Memoria OTP (One Line Programmable) es no volatile y de solo lectura y programmable una sola vez
por el usuario. La grabación se realiza mediante un sencillo grabador controlado por una PC.
- Memoria EPROM (Erasable Programmable Read Only Memory), pueden borrarse y grabarse muchas
veces. La grabación se realiza, como en el caso de la memoria OTP. Si, posteriormente, se desea borrar
el contenido, disponen de una ventana de cristal en su superficie por la que se somete a le EPROM a
rayos ultravioleta por algunos minutos.
- Memoria EEPROM (Electrical EPROM) es de sólo lectura, programable y borrable eléctricamente. Tanto
la programación como el borrado, se realizan eléctricamente desde el propio grabador y bajo el control
programado de un PC, y puede hacerse con el microcontrolador instalado en el circuito. Es muy cómoda
y rápida la operación de grabado y la de borrado.
- Memoria Flash La memoria Flash es no volátil, de bajo consumo y puede grabarse y borrarse
eléctricamente. Funciona como una ROM y una RAM pero consume menos energía y es más pequeña.
La memoria Flash también puede programarse “en circuito”, es decir, sin tener que sacar el circuito
integrado de la tarjeta. Además, es más rápida, tiene mayor densidad y tolera más ciclos de
escritura/borrado que la EEPROM