Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
En este sitio encontrará una gran variedad de recursos y software relacionado, que le servirán como complemento al contenido del libro. Además, tendrá la posibilidad de estar en contacto con los editores, y de participar del foro de lectores, en donde podrá intercambiar opiniones y experiencias. This book is the ideal introduction for those who seek to enter the world of microcontrollers. Projects aimed to learn about the theory and the practical aspects of this devices. A material full of visual guides and step by step guides to program, write and erase chips for usage in real projects. PIC MICROCONTROLLERS Una obra ideal para quienes desean aprovechar al máximo las aplicaciones prácticas de los microcontroladores PIC y entender su funcionamiento. Aprenderemos a diseñar y escribir programas reales, simularlos en la PC por medio de MPLAB IDE y ¡escribir los PICs con un grabador creado por nosotros mismos! Cada tema es tratado desde cero, dando todas las herramientas necesarias para el aprendizaje y la práctica de Assembler, de modo que aun quienes nunca hayan utilizado ningún lenguaje de programación puedan escribir programas eficientes y poderosos. Un material con procedimientos paso a paso y guías visuales, para crear proyectos sin límites, como una cerradura electrónica, un reloj digital o la escritura de mensajes en un display LCD. En definitiva, un libro que expone las bases necesarias para ingresar en este fascinante mundo, sin sobresaltos. por Víctor Rossano CONTENIDO N I V E L D E U S U A R I O PRINCIPIANTE INTERMEDIO AVANZADO EXPERTO Para obtener más información sobre el libro comuníquese con nuestro Servicio de Atención al Lector usershop@redusers.com ARGENTINA & (11) 4110 8700 CHILE & (2) 335 7477 ESPAÑA & (93) 635 4120 1 | INTRODUCCIÓN A LOS MICROCONTROLADORES Microprocesadores / Los microcontroladores / Herramientas necesarias / El PIC16F84A 2 | ARQUITECTURA DEL PIC16F84A Diagrama interno / El oscilador / El Reset / Puertos de entrada y salida / Organización de la memoria / Registros del área SFR 3 | LENGUAJE ENSAMBLADOR El lenguaje máquina / El repertorio de instrucciones Operaciones orientadas a bytes / Operaciones orientadas a bits / Operaciones orientadas a literales y de control 4 | EL ENTORNO DE DESARROLLO MPLAB IDE Introducción a MPLAB / Crear un nuevo archivo fuente / Formato del código fuente / Directivas / Ensamblado de los programas / Simulación en MPLAB SIM 5 | GRABADORES DE PIC Grabación de microcontroladores PIC / Grabadores profesionales y de bajo costo / Construcción de un grabador de PICs / Utilización / Los bits de configuración / Grabar en el PIC16F84A / Leer y borrar un microcontrolador 6 | TÉCNICAS DE PROGRAMACIÓN EN ENSAMBLADOR Diseño de proyectos con microcontroladores PIC / Diagramas de flujo / Subrutinas / Saltos / Bucles o lazos / Retardos Tablas / Un dado electrónico / Librerías de subrutinas 7 | DISPLAYS LED Y LCD Displays LED de 7 segmentos / Conversión de binario a BCD Displays multiplexados / Contador de turnos / Display LCD Pines y sus funciones / Los caracteres de la CGROM / DDRAM / Instrucciones o comandos / El Busy flag / Conexiones con 4 y 8 bits / Inicialización del display / Librerías de control de LCD / Mensajes en LCD 8 | EL TIMER 0 El Timer 0 del PIC16F84A / El prescaler / Los registros relacionados con el TMR0 / El Timer 0 como contador / Frecuencímetro / El Timer 0 como temporizador 9 | OTRAS FUNCIONES DEL PIC16F84A Direccionamiento indirecto / El Watch Dog Timer / Modo de bajo consumo (sleep) / Resistores de Pull-up del Puerto B / La memoria EEPROM de datos / Macros 10 | INTERRUPCIONES Interrupción externa INT / Interrupción RBI / Teclados / Cerradura electrónica / Interrupción por desbordameinto del Timer 0 / Reloj digital básico / Interrupción por finalización de escritura en EEPROM 11 | COMUNICACIÓN EN BUS I2C El bus I2C / Expansor de puertos I2C PCF8574 / DS1621 termómetro y termostato en bus I2C / Otros dispositivos I2C redusers.com ELE CT RÓ NI CA & MI CR OC ON TR OL AD OR ES PIC Tapa PIC AJUSTADA.qxp 25/06/2009 12:18 p.m. PÆgina 1 CONÉCTESE CON LOS MEJORES LIBROS DE COMPUTACIÓN DOMINE EL SISTEMA OPERATIVO MÁS ESTABLE MANUALES USERS I 320 páginas I ISBN 978-987-1347-94-0 CONOZCA LAS TÉCNICAS DE LOS HACKERS MANUALES USERS I 320 páginas I ISBN 978-987-1347-93-3 DESARROLLE DESDE LA PERSPECTIVA DE LOS MODELOS DESARROLLADORES I 320 páginas I ISBN 978-987-1347-95-7 usershop.redusers.com UNA ALTERNATIVA COMPETITIVA A LOS MÉTODOS TRADICIONALES DESARROLLADORES I 336 páginas I ISBN 978-987-1347-97-1 RT_Bombo_LIBROMicroPIC.qxp 23/06/2009 17:06 Página RT2 Introducción a los micro- controladores Microprocesadores 14 Los microcontroladores 18 Los microcontroladores PIC 19 Herramientas necesarias 20 Componentes 20 Editores y ensambladores 20 Simuladores 21 Grabadores 22 El PIC16F84A 24 Alimentación del PIC16F84A 25 Resumen 27 Actividades 28 Capítulo 1 Los microcontroladores son muy utilizados hoy en día para múltiples aplicaciones, desde las más sencillas hasta las más complejas y poderosas, tanto a nivel aficionado como profesional e industrial. En este capítulo estudiaremos qué es un microcontrolador y daremos los primeros pasos para introducirnos en este interesante tema. Microcontroladores PIC SERVICIO DE ATENCIÓN AL LECTOR: lectores@redusers.com 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 13 MICROPROCESADORES Un microprocesador es un circuito integrado que contiene un circuito digital complejo, que se encarga de realizar diferentes tareas. Está diseñado para ejecu- tar una serie de instrucciones que nosotros le daremos en una lista, de acuerdo con lo que necesitemos. Esta lista se denomina programa y las instrucciones se- rán ejecutadas una a una por el microprocesador. De esta forma, al ser un siste- ma programado, podemos lograr que el circuito realice tareas distintas con tan sólo cambiar el programa que ejecutará. Figura 1. Un microprocesador es un circuito integrado digital que es capaz de realizar múltiples funciones. En la Figura 1 vemos un diagrama simplificado de un microprocesador, el cual consta de un contador de programa (PC), que no es más que un contador bi- nario que inicia desde cero al arrancar el sistema, y se va incrementando automáticamente. Su propósito es generar el acceso a las instrucciones que el micropro- cesador ejecutará. El contenido de este contador apunta a la dirección de memoria en donde están al- macenadas las instrucciones del microprocesador a través del bus de direcciones. De esta manera, po- demos ver que necesitaremos una memoria donde grabaremos las instrucciones que forman nuestro programa (llamada, precisamente, memoria de pro- grama) y una memoria donde guardaremos los datos a procesar (llamada memoria de datos). Registro temporal Acumulador Bloque de control Reloj Registro de instrucciones Decodificador de instrucciones Contador de programa Bus de datos Bus de direcciones Bus de control ALU 1. INTRODUCCIÓN A LOS MICROCONTROLADORES 14 Figura 2. El microprocesador Core2quad Q9650 es uno de los más poderosos. 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 14 El contador de programa contiene la dirección 0 (cero) al inicio. En esa dirección se almacena la primera instrucción, luego se incrementa para acceder a la dirección 1 y ejecutar la instrucción almacenada ahí, y así sucesivamente. Podemos tener dos tipos de arquitecturas dependiendo de la separación o no de la memoria de datos y de programa: la arquitectura Harvard y la Von Neumman. Figura 3. Comparación entre la arquitectura Harvard y la Von Neumman. El contador de programa va accediendo secuencialmente a las direcciones de la me- moria deprograma de donde se leerán las instrucciones almacenadas allí y pasarán al microprocesador para ser decodificadas y ejecutadas una a una. La unidad arit- mético-lógica (ALU) es la encargada de llevar a cabo las operaciones necesarias, ya sean lógicas o aritméticas, tal como lo indica su nombre, con los datos. Figura 4. La unidad aritmético-lógica es una parte fundamental de todo microprocesador. A la salida de la ALU tenemos un registro especial llamado acumulador, que es en donde se guardarán los resultados de las operaciones. Este registro es muy impor- tante ya que prácticamente todos los datos que maneja el microprocesador pasan por él. El bloque de control se encarga de llevar la correcta sincronía entre todos los Dato Control Dato Resultado ALU Reloj Memoria Memoria Arquitectura Harvard Arquitectura Von Neumann Reloj Memoria Programa DatosMicropocesador Programa – – – Datos Micropocesador Microprocesadores 15 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 15 demás bloques, y de los elementos externos, por ejemplo, indicando a la memoria de datos si se va a leer o escribir en ella. Como podemos darnos cuenta, el microprocesador necesita de algún medio ex- terno a él para almacenar tanto las instrucciones como los datos que se están pro- cesando, por lo que debemos agregar las memorias adecuadas para lograr que el sistema funcione. Además de las memorias, el microprocesador también puede comunicarse con otros dispositivos a través de sus buses. Figura 5. Comunicación de un microprocesador con otros dispositivos. Podemos tener más de una unidad de entrada/salida. De esta forma, mediante las unidades de entrada/salida (E/S) el microprocesa- dor puede comunicar datos hacia el exterior o recibir datos. Por ejemplo, puede enviar datos hacia un display o una impresora, o recibir datos de un teclado o un convertidor analógico a digital. Estos dispositivos con los que el microproce- sador se puede comunicar a través de la unidad E/S son comúnmente llamados periféricos. A un sistema completo de microprocesador, memorias y unidades de E/S se lo llama usualmente microcomputadora. Señal de entrada Señal de salida Unidad E/SMicropocesador Memoria de Programa Bus de direcciones Bus de datos Bus de control Periféricos Memoria de Datos 1. INTRODUCCIÓN A LOS MICROCONTROLADORES 16 ❴❵ Los microprocesadores son circuitos integrados digitales complejos. Desde su nacimiento, allá por el año 1971, se han tornado cada vez más y más complejos y poderosos. Por ejemplo, los mi- croprocesadores modernos que se usan en las computadoras pueden contener más de 300 mi- llones de transistores. MILLONES DE TRANSISTORES 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 16 Figura 6. Una computadora es una de las aplicaciones clásicas de los microprocesadores. Para que el microprocesador realice las tareas que necesitamos, debemos darle la lis- ta de instrucciones o programa, que lo grabaremos o guardaremos en la memoria de programa para que el sistema lo ejecute desde ahí. Las instrucciones son valores binarios que harán que se ejecute algún proceso específico en el microprocesador. De esta forma, tenemos un sistema muy flexible y poderoso, ya que podemos ele- gir la cantidad de memoria de datos y de programa que necesitemos, además de cuáles y cuántos periféricos necesitamos integrar a nuestro sistema. Pero a su vez, es un sistema complejo, caro, y difícil de implementar, dado que tendremos va- rios circuitos integrados independientes que debemos interconectar (el micro- procesador, las memorias y las unidades de E/S necesarias), haciéndolo difícil y lento de construir, por lo que podemos fácilmente cometer errores. El uso de va- rios circuitos integrados eleva el costo final y el tamaño del sistema. Es por eso que un sistema de microprocesador no es lo más conveniente siempre, sobre to- do en aplicaciones sencillas o de propósito específico. Microprocesadores 17 ❴❵ Los microprocesadores nacen en 1971 con el lanzamiento del modelo 4004 de Intel, un micro- procesador de tan sólo 4 bits, que fue utilizado en calculadoras. Los microprocesadores son uno de los mayores desarrollos de las últimas décadas en la electrónica moderna. NACE UN GIGANTE 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 17 LOS MICROCONTROLADORES Para resolver el problema de la complejidad y el alto costo de los sistemas basados en microprocesadores, se crean los microcontroladores, que no es otra cosa que un sis- tema de microcomputadora completo. Es decir, un microcontrolador contiene en un solo circuito integrado el microprocesador, la memoria de datos, la memoria de programa y las unidades de entrada/salida, lo cual lo hace muy pequeño, barato y fá- cil de manejar, por lo que es ideal para muchas aplicaciones de propósito específico. Figura 7. Un microcontrolador encierra todos los elementos de una microcomputadora en un solo circuito integrado. Los microcontroladores son cada vez más utilizados en muchos campos debido a sus ventajas y a la facilidad de diseñar circuitos con ellos, desde los más sencillos, hasta las aplicaciones más complejas. Desde aficionados hasta profesionales, inclu- so a nivel industrial, cada vez son más los sistemas que son gobernados por uno o varios microcontroladores. Por ejemplo, un horno de microondas, una lavadora, un juguete, los sistemas computarizados de los automóviles, los sistemas de alar- ma, etcétera, utilizan microcontroladores en sus circuitos. Actualmente, puede re- sultar más fácil, rápido y hasta más barato implementar un circuito electrónico con un microcontrolador que hacerlo con componentes discretos (compuertas, CPU RAM E/S ROM 1. INTRODUCCIÓN A LOS MICROCONTROLADORES 18 ❘❘❘ Las computadoras son sistemas basados en microprocesadores, y son llamados sistemas abiertos, debido a la flexibilidad y posibilidad de elegir o cambiar sus componentes (el propio procesador, la memoria, los periféricos, etcétera), mientras que un microcontrolador es un sistema cerrado. SISTEMAS ABIERTOS Y CERRADOS 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 18 multivibradores, contadores, registros, y demás). Es por eso que el aprendizaje del manejo de microcontroladores cada vez toma mayor importancia para los aficio- nados y profesionales de la electrónica. Figura 8. Un sistema basado en microcontrolador es más pequeño, sencillo y económico. Existe una gran gama de microcontroladores de muchos fabricantes con característi- cas y prestaciones muy variadas. En la actualidad, los fabricantes más importantes son: Microchip, Freescale (Motorola), Intel, Atmel. Nosotros elegiremos en esta ocasión los microcontroladores PIC de la firma Microchip para estudiar su estructura, pro- gramación y utilización práctica, ya que son ampliamente usados actualmente debido a su facilidad de uso, bajo costo, su gran oferta con una amplia gama de dispositivos, y a la facilidad de encontrar herramientas, tanto de software como de hardware, para el desarrollo de proyectos con estos versátiles microcontroladores. Los microcontroladores PIC Los microcontroladores PIC ofrecen una amplia gama de dispositivos desde 6 has- ta 100 pines, desde los más sencillos de 8 bits hasta los más poderosos de 32 bits. La gama de microcontroladores de 8 bits consta de más de 400 modelos diferentes para elegir. Microchip es ac- tualmente el mayor fabricante de microcontroladores de 8 bits en todo el mundo. Sus familias de 8 bits más importantes son: PIC12, PIC16 y PIC18. En parti- cular, para nuestro estudio de introducción a los mi- crocontroladores PIC, elegiremos el PIC16F84A, que es de gama media, muy versátil, económico y fácil de usar. Este PIC es ideal para aprender las bases tanto del uso como de la programación de microcontroladores PIC. Además, una vez que conozcamos biena fondo este dispositivo, la migración hacia cualquier otro Micropocesador Memoria de Programa Periféricos Microcontrolador Memoria de Datos Unidades E/S Periféricos Los microcontroladores 19 Figura 9. El PIC16F84A es un simple circuito integrado de 18 pines, pero encierra un dispositivo muy poderoso. 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 19 microcontrolador PIC será bastante fácil. Incluso la compatibilidad entre los mi- crocontroladores PIC hace que los programas puedan migrar de uno hacia otro con muy pocos cambios en ellos. Es por eso que el PIC16F84A nos servirá de plata- forma para entrar en el mundo de los microcontroladores PIC. HERRAMIENTAS NECESARIAS Para el desarrollo de nuestros proyectos con microcontroladores PIC, necesitaremos algunas herramientas tanto de software como de hardware. Trataremos de que di- chas herramientas sean fáciles de encontrar y de que sean gratuitas o de bajo costo, al menos la mayor parte de ellas. A lo largo de este libro veremos que realmente no necesitamos invertir una fortuna para poder construir poderosos circuitos electró- nicos con microcontroladores PIC. Componentes Por supuesto que para construir nuestros proyectos necesitaremos los propios compo- nentes. En primer lugar, el microcontrolador, por lo que es recomendable comprar al menos uno de ellos y, si podemos, uno más ya que nunca se sabe cuándo cometeremos un error. Además, debemos adquirir otros componentes que estudiaremos a lo largo del libro, como por ejemplo, displays, teclados, leds, algunos circuitos integrados, etcétera, los cuales iremos detallando en el momento en que sea necesario. Editores y ensambladores Sabemos que el microcontrolador es un dispositivo que funciona a través de un programa que escribiremos nosotros, por lo que debemos tener herramientas de software para poder escribir nuestros programas y ensamblarlos (más adelante es- tudiaremos qué es esto de ensamblar un programa), para luego poder grabarlos en la memoria de nuestro PIC. En este caso utilizaremos el entorno de desarrollo 1. INTRODUCCIÓN A LOS MICROCONTROLADORES 20 ❘❘❘ Generalmente, la C en los microcontroladores PIC indicaba una memoria EPROM, con ex- cepción del PIC16C84 que contaba con memoria EEPROM. Los modelos C han sido reempla- zados casi por completo por modelos F con memoria Flash. La mayoría de los dispositivos C sólo podían ser grabados una sola vez. OTROS PIC C 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 20 llamado MPLAB IDE, que es distribuido gratuitamente por el propio fabricante de los microcontroladores PIC, Microchip. Este entorno de desarrollo contiene to- das las herramientas de software necesarias para poder escribir nuestros programas. En el Capítulo 4 estudiaremos con detalle el uso de este software. Figura 10. El programa MPLAB de la empresa Microchip contiene las herramientas de desarrollo de programas de forma gratuita. Simuladores Existe software para la PC que permite simular el funcionamiento de los programas que estamos escribiendo para nuestro microcontrolador. Éstos pueden ser muy úti- les para el desarrollo, la depuración y la corrección de errores, así evitamos tener que grabar varias veces nuestro microcontrolador para probar si los programas funcionan como deben, lo cual nos ahorrará tiempo y esfuerzo. El programa MPLAB contiene un simulador integrado llamado MPLAB SIM, que nos será de mucha utilidad, y que también estudiaremos en el Capítulo 4. Además de MPLAB SIM, existen otros si- muladores, como PIC Simulator IDE o el simulador de circuitos Proteus VSM, que es uno de los mejores simuladores de circuitos electrónicos en la actualidad, ya que permite la simulación de cualquier tipo de circuito electrónico con animación y análisis de señales, incluyendo, por supuesto, circuitos con microcontroladores PIC. Los dos últimos simuladores que mencionamos tienen licencias pagas, por lo que quedará en nosotros la decisión de comprarlos para usarlos como herramientas de desarrollo. Por ahora nos bastará con estudiar MPLAB SIM, que es gratuito. Herramientas necesarias 21 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 21 Figura 11. Existe una gran gama de software de simuladores para verificar el funcionamiento de los programas. Grabadores Después de desarrollar los programas debemos grabarlos de alguna forma en la me- moria de nuestro PIC para que el sistema quede completo. Para esto tenemos que contar con un grabador, que no es más que un circuito que se conecta a la PC por medio de algún puerto, ya sea el puerto paralelo, serial, o USB, para poder enviar el programa desde la PC hacia la memoria de nuestro PIC. Existen multitud de gra- badores para microcontroladores PIC; Microchip ofrece algunos que aseguran un perfecto funcionamiento y están listos para usar. La desventaja es que algunos pue- den ser caros y difíciles de encontrar en las tiendas locales. 1. INTRODUCCIÓN A LOS MICROCONTROLADORES 22 ❘❘❘ El microcontrolador que estamos estudiando es ya un veterano en el mercado: nació original- mente como PIC16C84. La C indica una memoria de programa de tipo EEPROM, mientras que el PIC16F84, que fue su predecesor, tiene memoria de programa tipo Flash. Después viene el PIC16F84A, donde la A indica que es una versión mejorada. EVOLUCIÓN DEL PIC16X84 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 22 Figura 12. Mediante un grabador se puede leer o escribir en la memoria de programa del PIC. Por otra parte, están los grabadores que podemos adquirir en algunas tiendas del ra- mo, con diferentes tipos de conexión a la PC, y algunos pueden ser baratos y tam- bién están armados y listos para usar. La alternativa más económica, aunque puede que resulte la más difícil, es armar nuestro propio grabador de PICs. Existe suficien- te información para poder hacerlo, sólo necesitamos unos cuantos componentes, un cable para la conexión a la PC y un poco de paciencia. En el Capítulo 5 veremos cuá- les son los tipos de grabadores y propondremos un circuito para la construcción de un versátil y económico grabador, además de estudiar su uso por completo. El grabador que propondremos para su construcción se conectará a nuestra com- putadora a través del puerto serial, y no será necesario construirlo si ya contamos con algún grabador de microcontroladores PIC. Sólo lo proponemos para quie- nes todavía no tengan uno. Éstas son las herramientas básicas que necesitaremos para desarrollar nuestros proyectos con microcontroladores PIC. Existen otras, como por ejemplo los compiladores, que permiten escribir programas en un lenguaje de alto nivel, co- mo Basic o C, y los sistemas de desarrollo o emuladores, pero estas herramien- tas pueden ser complejas de usar para los principiantes, además de ser caras. Al menos, para usos sencillos, no las necesitaremos. Herramientas necesarias 23 ❴❵ La A al final en el PIC16F84A indica que es una versión modernizada con respecto al PIC16F84, ya que tiene una memoria Flash mejorada, además de contar con la posibilidad de trabajar a una frecuencia mayor: 20 MHz para el PIC16F84A-20 contra 10 MHz máximos que puede fun- cionar el PIC16F84. PIC16F84 Y PIC16F84A 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 23 EL PIC16F84A Comencemos a conocer la estructura de nuestro microcontrolador, que no es más que un circuito integrado de 18 pines. En la Figura 13 vemos un diagrama com- pleto con la disposición de los pines y el nombre que toma cada uno. Las flechas indican si el pin es de salida, de entrada o de entrada/salida. Figura 13. Nombre que reciben los pines del PIC16F84A. Algunos tienen más de una función. Veamos a grandes rasgos cuál es la función de cada uno de los pines. Por ahora no es necesario que los entendamos, ya que a lo largo de nuestro estudio habla- remos con detalle de cada función:• RA0:RA4: pertenecen al puerto A y cada uno de estos pines puede utilizarse co- mo entrada o salida de datos, y pueden configurarse independientemente como entrada o como salida, según necesitemos. El pin RA4 está marcado también RA2 RA3 RA4/T0CKI MCLR Vss RB0/INT RB1 RB2 RB3 1 2 3 4 5 6 7 8 9 PIC16F84A RA1 RA0 OSC1/CLKIN OSC2/CLKOUT Vdd RB7 RB6 RB5 RB4 18 17 16 15 14 13 12 11 10 1. INTRODUCCIÓN A LOS MICROCONTROLADORES 24 ❘❘❘ Como todo componente electrónico, el PIC16F84A tiene una hoja de datos (datasheet), que proporciona la empresa Microchip, con la descripción completa de su arquitectura y su funcionamiento. Si vamos a la página oficial del fabricante (www.microchip.com) podremos descargarla, aunque se encuentra solamente en inglés. HOJAS DE DATOS 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 24 como T0CKI, lo que significa que además cumple otra función que es la de ser- vir de entrada a una señal para el Timer 0. En las secciones donde hablaremos del timer detallaremos esta función. • (Master clear): este pin es el de reset. Es decir que si ponemos un nivel bajo en él, el microcontrolador irá al estado de reset y si hay un nivel alto, el mi- crocontrolador funcionará normalmente. • Vss, Vdd: estos pines pertenecen al voltaje de alimentación de nuestro PIC. En Vdd debemos poner un voltaje de 5 V y si es un voltaje regulado, mejor. En Vss debemos poner tierra (masa). • OSC1/CLKIN, OSC2/CLKOUT: estos pines son la entrada y salida de la se- ñal de reloj necesaria para que el sistema funcione correctamente. Más ade- lante hablaremos en detalle de este tema. • RB0:RB7: pertenecen al puerto B y la función es la misma que la de los pines del puerto A. El pin RB0 además cumple con la función de entrada de inte- rrupción externa (INT), que también detallaremos en su momento. Alimentación del PIC16F84A Como acabamos de mencionar, este PIC requiere de un voltaje de alimentación de 5 V entre las terminales Vdd y Vss, así que debemos tener una fuente de 5 V para poder trabajar con los circuitos que armemos. Figura 14. El PIC16F8A requiere de un voltaje de 5 V entre las terminales Vdd (positivo) y Vss (tierra). 1 2 3 4 5 6 7 8 9 PIC16F84A VddVss 5V 18 17 16 15 14 13 12 11 10 MCLR El PIC16F84A 25 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 25 Es recomendable tener un voltaje regulado, entonces tenemos varias opciones: • Si ya contamos con alguna fuente de 5 V regulados y que pueda entregar al me- nos 1A de corriente, podemos utilizarla. • Si contamos con alguna fuente no regulada que entregue entre 7 y 12 V de po- tencia y al menos 1A a su salida, podemos agregar el regulador para obtener el voltaje de 5 V, como vemos en el diagrama de la Figura 15. No obstante ello, de- bemos tener en cuenta que tal vez sea necesario agregar un disipador de calor al regulador para evitar que se dañe por sobrecalentamiento (pero esto sólo si va- mos a utilizar más de 500 mA de corriente). Figura 15. El LM7805 nos proporcionará una salida de 5 V regulados al colocarlo en una fuente no regulada. • Si no contamos con ninguna fuente de alimentación, podemos construirla si- guiendo el diagrama de la Figura 16. De todos modos, más allá de que podamos armar nuestra propia fuente de alimentación, siempre es recomendable colocar un disipador de calor al regulador. Es recomendable también, en cualquier caso, colocar un capacitor de desacoplo de 100 nf (0.1 uf) entre los pines Vss y Vdd del microcontrolador, lo más cercano posible a ellos para asegurar un correcto funcionamiento. 7805 0,33uF 10uF/10V Vin 7 a 12V Vout 5V al pin Vdd al pin Vss + – Vin Vout GND 1. INTRODUCCIÓN A LOS MICROCONTROLADORES 26 ❘❘❘ Un sistema de desarrollo es un conjunto de herramientas de software y hardware que permiten el rápido desarrollo de proyectos con PICs. Consiste en una placa con múltiples periféricos lis- tos para funcionar, como teclados, displays, sensores, etcétera, e incluso permiten grabar el PIC en ellos. La desventaja es que el precio es generalmente alto. SISTEMAS DE DESARROLLO 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 26 Figura 16. Podemos construir esta fuente de alimentación para nuestros circuitos con el PIC16F84A. En el capítulo siguiente continuaremos estudiando la estructura interna del PIC16F84A para comprender su funcionamiento y posteriormente poder aprender a escribir programas en lenguaje ensamblador, y así tener la posibilidad de comen- zar a diseñar y construir circuitos electrónicos con microcontroladores PIC. 7805 31 2 0,1uF 10uF/10V Línea 5VVi Vo GND 2200uF/25VFUSIBLE 1A W02M o similar T 9V/1A El PIC16F84A 27 … RESUMEN En este primer capítulo comprendimos qué es un microprocesador, cómo funciona y para qué sirve. También vimos qué es un microcontrolador y la diferencia con un microprocesador. Además, conocimos cuáles son las herramientas que necesitaremos para el desarrollo de proyectos con microcontroladores PIC, y también comenzamos a estudiar el PIC16F84A, del cual hablaremos a lo largo de los capítulos siguientes. 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 27 28 ✔ TEST DE AUTOEVALUACIÓN 1 ¿Qué es un microprocesador? 2 ¿Qué es el contador de programa? 3 ¿Para qué sirve una ALU? 4 ¿Cómo se llama la serie de instrucciones que ejecuta un microprocesador? 5 ¿Cuál es la diferencia entre la arquitectura Harvard y la Von Neumann? ACTIVIDADES 6 ¿Qué es una microcomputadora? 7 ¿Qué es un microcontrolador? 8 ¿Cuántos pines tiene el PIC16F84A? 9 ¿Para qué sirven el Puerto A y el Puerto B del PIC16F84A? 10¿Cuál es el voltaje con el que se debe ali- mentar el PIC16F84A? 01_Microcontroladores.qxp 7/6/09 5:00 PM Page 28 REDISEÑO BOMBOS LIBROS - ISSU - Base Editable - Sep 10.indd 1REDISEÑO BOMBOS LIBROS - ISSU - Base Editable - Sep 10.indd 1 08/09/2010 15:54:0308/09/2010 15:54:03
Compartir