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