20
por Víctor Rossano

Electronica y Microcontroladores

Embed Size (px)

Citation preview

Page 1: Electronica y Microcontroladores

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á laposibilidad de estar en contacto con los editores, y de participar del foro delectores, en donde podrá intercambiar opiniones y experiencias.

This book is the ideal introduction for those whoseek to enter the world of microcontrollers. Projects aimed to learn about the theory and thepractical aspects of this devices. A material full ofvisual 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 nuestroServicio de Atención al Lector

[email protected] ✆ (11) 4110 8700

CHILE ✆ (2) 335 7477ESPAÑA ✆ (93) 635 4120

1 | INTRODUCCIÓN A LOS MICROCONTROLADORESMicroprocesadores / Los microcontroladores / Herramientasnecesarias / El PIC16F84A

2 | ARQUITECTURA DEL PIC16F84ADiagrama interno / El oscilador / El Reset / Puertos de entrada y salida / Organización de la memoria /Registros del área SFR

3 | LENGUAJE ENSAMBLADOREl lenguaje máquina / El repertorio de instruccionesOperaciones orientadas a bytes / Operaciones orientadas a bits / Operaciones orientadas a literales y de control

4 | EL ENTORNO DE DESARROLLO MPLAB IDEIntroducció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 PICGrabación de microcontroladores PIC / Grabadoresprofesionales y de bajo costo / Construcción de un grabadorde PICs / Utilización / Los bits de configuración / Grabar en el PIC16F84A / Leer y borrar un microcontrolador

6 | TÉCNICAS DE PROGRAMACIÓN EN ENSAMBLADORDiseño de proyectos con microcontroladores PIC / Diagramasde flujo / Subrutinas / Saltos / Bucles o lazos / RetardosTablas / Un dado electrónico / Librerías de subrutinas

7 | DISPLAYS LED Y LCDDisplays LED de 7 segmentos / Conversión de binario a BCDDisplays multiplexados / Contador de turnos / Display LCDPines 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 0El Timer 0 del PIC16F84A / El prescaler / Los registrosrelacionados con el TMR0 / El Timer 0 como contador /Frecuencímetro / El Timer 0 como temporizador

9 | OTRAS FUNCIONES DEL PIC16F84ADireccionamiento indirecto / El Watch Dog Timer / Modo de bajo consumo (sleep) / Resistores de Pull-up del Puerto B / La memoria EEPROM de datos / Macros

10 | INTERRUPCIONESInterrupción externa INT / Interrupción RBI / Teclados /Cerradura electrónica / Interrupción por desbordameinto del Timer 0 / Reloj digital básico / Interrupción porfinalización de escritura en EEPROM

11 | COMUNICACIÓN EN BUS I2CEl bus I2C / Expansor de puertos I2C PCF8574 / DS1621termómetro y termostato en bus I2C / Otros dispositivos I2C

redusers.com

ELECT

RÓNI

CA&

MICR

OCON

TROL

ADOR

ESPIC

Tapa PIC AJUSTADA.qxp 25/06/2009 12:18 p.m. PÆgina 1

Page 2: Electronica y Microcontroladores

CONÉCTESE CON LOS MEJORESLIBROS DE COMPUTACIÓN

DOMINE EL SISTEMA OPERATIVO MÁS ESTABLEMANUALES USERS I 320 páginas I ISBN 978-987-1347-94-0

CONOZCA LAS TÉCNICAS DE LOS HACKERSMANUALES USERS I 320 páginas I ISBN 978-987-1347-93-3

DESARROLLE DESDE LA PERSPECTIVA DE LOS MODELOSDESARROLLADORES 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

Page 3: Electronica y Microcontroladores

Introduccióna los micro-controladores

Microprocesadores 14Los microcontroladores 18

Los microcontroladores PIC 19Herramientas necesarias 20

Componentes 20Editores y ensambladores 20Simuladores 21Grabadores 22

El PIC16F84A 24Alimentación del PIC16F84A 25

Resumen 27Actividades 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: [email protected]

01_Microcontroladores.qxp 7/6/09 5:00 PM Page 13

Page 4: Electronica y Microcontroladores

MICROPROCESADORESUn microprocesador es un circuito integrado que contiene un circuito digitalcomplejo, 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 acuerdocon 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 tansó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 cualconsta 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 seva incrementando automáticamente. Su propósito esgenerar el acceso a las instrucciones que el micropro-cesador ejecutará. El contenido de este contadorapunta a la dirección de memoria en donde están al-macenadas las instrucciones del microprocesador através del bus de direcciones. De esta manera, po-demos ver que necesitaremos una memoria dondegrabaremos las instrucciones que forman nuestroprograma (llamada, precisamente, memoria de pro-grama) y una memoria donde guardaremos los datosa procesar (llamada memoria de datos).

Registrotemporal

Acumulador Bloque de control

Reloj

Registro deinstrucciones

Decodificadorde instrucciones

Contador deprograma

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

Page 5: Electronica y Microcontroladores

El contador de programa contiene la dirección 0 (cero) al inicio. En esa direcciónse almacena la primera instrucción, luego se incrementa para acceder a la dirección1 y ejecutar la instrucción almacenada ahí, y así sucesivamente. Podemos tener dostipos de arquitecturas dependiendo de la separación o no de la memoria de datos yde 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 de programa de donde se leerán las instrucciones almacenadas allí y pasaránal 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, yasean 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 endonde 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 pasanpor é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 DatosMicropocesadorPrograma

– – –Datos

Micropocesador

Microprocesadores

15

01_Microcontroladores.qxp 7/6/09 5:00 PM Page 15

Page 6: Electronica y Microcontroladores

demás bloques, y de los elementos externos, por ejemplo, indicando a la memoriade 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 elsistema funcione. Además de las memorias, el microprocesador también puedecomunicarse 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, puedeenviar datos hacia un display o una impresora, o recibir datos de un teclado oun 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 llamadosperiféricos. A un sistema completo de microprocesador, memorias y unidadesde E/S se lo llama usualmente microcomputadora.

Señal deentrada

Señal desalida

Unidad E/SMicropocesador Memoria dePrograma

Bus de direcciones

Bus de datos

Bus de control

Periféricos

Memoria deDatos

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

Page 7: Electronica y Microcontroladores

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 memoriade programa para que el sistema lo ejecute desde ahí. Las instrucciones son valoresbinarios 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 decuá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 ylento 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 esoque 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

Page 8: Electronica y Microcontroladores

LOS MICROCONTROLADORESPara resolver el problema de la complejidad y el alto costo de los sistemas basados enmicroprocesadores, se crean los microcontroladores, que no es otra cosa que un sis-tema de microcomputadora completo. Es decir, un microcontrolador contiene en unsolo circuito integrado el microprocesador, la memoria de datos, la memoria deprograma 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 asus 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 ovarios 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 conun 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

Page 9: Electronica y Microcontroladores

multivibradores, contadores, registros, y demás). Es por eso que el aprendizaje delmanejo 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ónlos microcontroladores PIC de la firma Microchip para estudiar su estructura, pro-gramación y utilización práctica, ya que son ampliamente usados actualmente debidoa 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, parael desarrollo de proyectos con estos versátiles microcontroladores.

Los microcontroladores PICLos 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ásde 400 modelos diferentes para elegir. Microchip es ac-tualmente el mayor fabricante de microcontroladoresde 8 bits en todo el mundo. Sus familias de 8 bits másimportantes son: PIC12, PIC16 y PIC18. En parti-cular, para nuestro estudio de introducción a los mi-crocontroladores PIC, elegiremos el PIC16F84A, quees de gama media, muy versátil, económico y fácil deusar. Este PIC es ideal para aprender las bases tanto deluso como de la programación de microcontroladoresPIC. Además, una vez que conozcamos bien a fondoeste dispositivo, la migración hacia cualquier otro

Micropocesador

Memoria dePrograma

Periféricos

Microcontrolador

Memoria deDatos

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

Page 10: Electronica y Microcontroladores

microcontrolador PIC será bastante fácil. Incluso la compatibilidad entre los mi-crocontroladores PIC hace que los programas puedan migrar de uno hacia otro conmuy 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 NECESARIASPara el desarrollo de nuestros proyectos con microcontroladores PIC, necesitaremosalgunas 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 nonecesitamos invertir una fortuna para poder construir poderosos circuitos electró-nicos con microcontroladores PIC.

ComponentesPor supuesto que para construir nuestros proyectos necesitaremos los propios compo-nentes. En primer lugar, el microcontrolador, por lo que es recomendable comprar almenos uno de ellos y, si podemos, uno más ya que nunca se sabe cuándo cometeremosun error. Además, debemos adquirir otros componentes que estudiaremos a lo largodel libro, como por ejemplo, displays, teclados, leds, algunos circuitosintegrados, etcétera, los cuales iremos detallando en el momento en que sea necesario.

Editores y ensambladoresSabemos que el microcontrolador es un dispositivo que funciona a través de unprograma que escribiremos nosotros, por lo que debemos tener herramientas desoftware para poder escribir nuestros programas y ensamblarlos (más adelante es-tudiaremos qué es esto de ensamblar un programa), para luego poder grabarlos enla 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

Page 11: Electronica y Microcontroladores

llamado MPLAB IDE, que es distribuido gratuitamente por el propio fabricantede 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.

SimuladoresExiste software para la PC que permite simular el funcionamiento de los programasque 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 quegrabar varias veces nuestro microcontrolador para probar si los programas funcionancomo deben, lo cual nos ahorrará tiempo y esfuerzo. El programa MPLAB contieneun simulador integrado llamado MPLAB SIM, que nos será de mucha utilidad, yque 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, yaque permite la simulación de cualquier tipo de circuito electrónico con animación yanálisis de señales, incluyendo, por supuesto, circuitos con microcontroladores PIC.Los dos últimos simuladores que mencionamos tienen licencias pagas, por lo quequedará en nosotros la decisión de comprarlos para usarlos como herramientas dedesarrollo. 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

Page 12: Electronica y Microcontroladores

Figura 11. Existe una gran gama de software

de simuladores para verificar el funcionamiento de los programas.

GrabadoresDespué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 quecontar con un grabador, que no es más que un circuito que se conecta a la PC pormedio de algún puerto, ya sea el puerto paralelo, serial, o USB, para poder enviarel programa desde la PC hacia la memoria de nuestro PIC. Existen multitud de gra-badores para microcontroladores PIC; Microchip ofrece algunos que aseguran unperfecto 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

Page 13: Electronica y Microcontroladores

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 puedeque 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, uncable 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 deun 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 contamoscon 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 nuestrosproyectos con microcontroladores PIC. Existen otras, como por ejemplo loscompiladores, 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. Almenos, 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

Page 14: Electronica y Microcontroladores

EL PIC16F84AComencemos a conocer la estructura de nuestro microcontrolador, que no es másque 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 flechasindican 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 ahorano 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 comoentrada 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

Page 15: Electronica y Microcontroladores

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 hablaremosdel timer detallaremos esta función.

• (Master clear): este pin es el de reset. Es decir que si ponemos un nivelbajo 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. EnVdd debemos poner un voltaje de 5 V y si es un voltaje regulado, mejor. EnVss 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 pinesdel 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 PIC16F84AComo acabamos de mencionar, este PIC requiere de un voltaje de alimentación de5 V entre las terminales Vdd y Vss, así que debemos tener una fuente de 5 V parapoder 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

Page 16: Electronica y Microcontroladores

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 elvoltaje 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 caloral 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 podamosarmar nuestra propia fuente de alimentación, siempre es recomendable colocarun disipador de calor al regulador.

Es recomendable también, en cualquier caso, colocar un capacitor de desacoplode 100 nf (0.1 uf) entre los pines Vss y Vdd del microcontrolador, lo más cercanoposible a ellos para asegurar un correcto funcionamiento.

7805

0,33uF 10uF/10V

Vin7 a 12V

Vout5V

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

Page 17: Electronica y Microcontroladores

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 delPIC16F84A para comprender su funcionamiento y posteriormente poder aprendera escribir programas en lenguaje ensamblador, y así tener la posibilidad de comen-zar a diseñar y construir circuitos electrónicos con microcontroladores PIC.

780531

2

0,1uF 10uF/10V

Línea 5VVi Vo

GND

2200uF/25VFUSIBLE1A

W02Mo similar

T9V/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

Page 18: Electronica y Microcontroladores

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

Page 19: Electronica y Microcontroladores
Page 20: Electronica y Microcontroladores

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