Está en la página 1de 8

CAPiTULOl

MICROCONTROLADOR PIC16F84

1.1 MICROCONTROLADORES PIC

Un microcontrolador es un circuito integrado programable que contiene todos los componentes necesarios para controlar el funcionamiento de una tarea determinada, como el control de una lavadora, un teclado de ordenador, una impresora, un sistema de alarma, etc. Para esto, el microcontrolador utiliza muy pocos componentes asociados. Un sistema con microcontrolador debe disponer de una memoria donde se almacena el programa que gobiema el funcionamiento del mismo que, una vez programado y configurado, solo sirve para realizar la tarea asignada. La utilizacion de un microcontrolador en un circuito reduce notablemente el tamafio y numero de componentes y, en consecuencia, disminuye el numero de averias y el volumen y el peso de los equipos, entre otras ventajas.

EI microcontrolador es uno de los inventos mas notables del siglo xx. En el mere ado hay gran cantidad de elIos, con multitud de posibilidades y caracteristicas. Cada tipo de microcontrolador sirve para una serie de casos y es el disefiador del sistema quien debe deeidir eual es el mierocontrolador mas idoneo para cada uso.

En los ultimos afios han tenido un gran auge los mierocontroladores PIC fabricados por Microchip Technology Inc. Los PIC (Peripheral Interface Controller) son una familia de rnicrocontroladores que ha tenido gran aceptacion y desarrollo en los ultimos afios gracias a que sus buenas caracteristicas, bajo precio, reducido consumo, pequefio tamafio, gran calidad, fiabilidad y abundancia de informacion, 10 convierten en muy facil, comedo y rapido de utilizar.

a

----------~-----~ -- --- ._--

~ M1CROCONTROLADOR PICI6FR4. DESARROLLO DE PROYECffiS

©RA·MA

Este libro se centra en el estudio de un microcontrolador PIC muy popular, el PICI6F84. Esta encapsulado en un economico DIL de 18 pines (figura 1-1). Debido a sus multiples aplicaciones y facilidad de uso es uno de los microcontroladores mas utilizados en la actualidad para la realizacion de proyectos sencillos.

RA2 RA1 PIC16F84A
RAG 0
0
>
RA4fTOCKI 3 "U OSC1\CLKIN
RAO RBOIINT
MCLRNpp 4 o OSC2\CLKOUT RA1 RB1
--lo. RA2 RB2
en VDD RA3 R83
." RA4ITOCKI R84
C» RB7 R85
~ RB6
» RB6 N RB7
o o C/)
C/) C/) C/)
RBS 0 0 >
RB4 Encapsulado DIL-18

Simbolo

Figura 1-1 Microcontrolador PIC16F84A

El microcontrolador PIC16F84 puede trabajar con una frecuencia maxima de 10 MHz. La version avanzada PIC16F84A-20 puede llegar hasta los 20 MHz. Todos los circuitos planteados en este libro se hanrealizado con el PIC16F84A-04 (4 MHz max).

En la figura 1-2 se describe un ejemplo de aplicacion. Se trata del entrenador basi co que se va a utilizar en los primeros temas de este libro para el aprendizaje de su manejo y programacion. Este circuito se explica a continuacion.

1.2 ALIMENTACION DE UN PIC16F84

Normalmente el microcontrolador PIC16F84 se alimenta con 5 voltios aplicados entre los pines VDD Y Vss que son, respectivamente, la alimentacion y la masa del chip.

La figura 1-2 describe un circuito de alimentacion que obtiene los 5 voltios a partir de una tension continua de 12 voltios y de al menos 1 amperio. Este circuito se basa en el popular regulador de tension 7805. Dispone de un diodo a la entrada para protegerlo en e1 caso que se aplicaran tensiones con la polaridad invertida. El condensador C4 reduce considerablemente el rizado de la tension de entrada que fmalmente el regulador 7805 se encarga de estabilizar a los 5 voltios de alimentacion de todo el entrenador. Por ultimo dispone de un diodo LED indicador de encendido.

-

©RA-MA

CAPiTULO 1: MICR~ONTROLADOR PICl~ _

El consumo de corriente para el funcionamiento del microcontrolador depende de la tensi6n de alimentaci6n, de la frecuencia de trabajo y de las cargas que soporten sus salidas, siendo del orden de unos pocos miliamperios.

El circuito de alimentaci6n del microcontrolador debe tratarse como el de cualquier otro dispositivo digital, debiendo conectarse un condensadar de desacoplo de unos 100 oF 10 mas cerca posible de los pines de alimentaci6n.

0)- (J !O.c o

5V

I~ o
c -e-
>
17 RAO RBO/INT 6
18 RA1 RB~ 7
1 B
2 RA2 RB2 9
3 RA3 RB~ 10
RA4fTOCKI RB4 11
RB& 12
R6.6 13
RB7
rJ)
rJ)
> 01 R2

8x330

LSB 1

LSB

MSB 8

2

3

4

5

6

7

MSB

S2

1

+5V

C2 22p =!=

OPl

S3 IC2

t: y ER___,1N.oc4~51-07 __ I+1 ~ __ : -t...!.:~~ ~~~~· i

''''' I _ ~J".--- _----i

+5V

D3 POWER

~

VIN VOUT

GND

• C6

~ 100~/16V

Figura 1-2 Entrenador para aprendizaje del microcontrolador PIC16F84

1.3 PUERTOS DE ENTRADA/SALIDA

El microcontrolador se comunica can el mundo exterior a traves de los puertos.

Estos estan constituidos par lineas digitales de entrada/salida que trabajan entre 0 y 5 V. Los puertos se pueden configurar como entradas para recibir datos 0 como salidas para gobemar dispositivos extemos.

...

4 MICROCO,\TROUDOR PIC I 6F84. DESARROLLO DE PROYECTOS

©RA-MA

E PIC 16F84 tiene dos puertos, tal como se ilustra en la figura 1-2:

• E r-rto A con 5 lineas,pines RAO a RA4.

• E r.ato 8 con 8lineas, pines REO a RE7.

Cail linea puede ser configurada como entrada 0 como salida, independientemente __ * i:Ir3S. segun se programe. Asi, por ejemplo, en el circuito de la figura 1-2 el ~. A es configurado como entrada para leer los interruptores y el Puerto B es ~:tdo como salida para activar la barra de diodos LEOs y el display de siete

'Pil1lH"-";_

Las lineas son capaces de entregar niveles TTL cuando la tensi6n de alimentaci6n ~ en VDD es de sv. La maxima capacidad de corriente de cada una de ellas es:

• 25 rnA, cuando el pin esta a nivel bajo, es decir, cuando consume corriente (modo sink). Sin embargo, 1a suma de las intensidades por las 5 lineas del Puerto A no puede exceder de 80 rnA, ni la suma de las 8 lineas del Puerto B puede exceder de ISO rnA.

• 20 rnA, cuando el pin esta a nivel alto, es decir, cuando proporciona corriente (modo source). Sin embargo, la suma de las intensidades por las 5 lineas del Puerto A no puede exceder de 50 rnA, ni la suma de las 8 lineas del Puerto B puede exceder de 100 rnA.

1.4 OSCILADOR

Todo microcontrolador requiere de un circuito que le indique la velocidad de trabajo, es el llamado oscilador 0 reloj. Este genera una onda cuadrada de alta frecuencia que se utiliza como serial para sincronizar todas las operaciones del sistema. Este circuito es muy simple pero de vital importancia para el buen funcionamiento del sistema. Generalmente todos los componentes del reloj se encuentran integrados en el propio microcontrolador y tan solo se requieren unos pecos componentes externos, como un crista} de cuarzo 0 una red RC, para defmir la frecuencia de trabajo.

En el PIC 16F84 los pines OSCI/CLKIN y OSC2/CLKOUT son las line as utilizadas para este fin, Pennite cinco tipos de osciladores para defmir la frecuencia de funcionamiento:

• XT. Cristal de cuarzo.

• Re. Oscilador con resistencia y condensador.

• HS. Cristal de alta velocidad.

• LP. Cristal para baja frecuencia y bajo consumo de potencia.

• Externa. Cuando se aplica una sefial de reloj extema.

- ' ~ ,~.

©RA-MA

CAPiTULO 1: MICROCONfROLADQR PIC16F~ "

1.4.1 Oscilador XT

Es el mas utilizado y esta basado en el oscilador a cristal de cuarzo 0 en un resonador ceramico. Es un oscilador estandar que permite una frecuencia de reloj muy estable comprendida entre 100 kHz y 4 MHz.

La figura 1-2 muestra la conexion tipica. En muchos proyectos se utiliza un cristal de 4 MHz. El cristal debe ir acompafiado de dos condensadores entre 15 y 33 pF.

Si se comprueba con un osciloscopio la sefial en el pin OSC2/CLKOUT, se debe visualizar una onda senoidal de igual frecuencia que la del cristal utilizado.

1.4.2 Oscilador RC

Es un oscilador de bajo coste formado por una red RC (figura 1-3). Su principal inconveniente es la baja precision, pero como contra partida esta su bajo precio, que 10 hace interesante para muchas aplicaciones en las que no importa la exactitud de tiempos.

vee

>---,__~ Internal Clock

PIC16F84A

FosC/4

-4--------11 OSC2/CLKOUT

Figura 1-3 Configuracion del oscilador RC

Los valores recomendados por el fabricante para este tipo de oscilador son: 5 ill ~ Rext ~ 100 ill y Cext > 20 pF. Los val ores de frecuencia correspondiente para cada valor de condensador y resistencia se reflejan en la tabla 1-1.

La frecuencia del oscilador dividida por cuatro, esta disponible en el pm OSC2/CLKOUT y puede ser usada para sincronizar otros circuitos.

1.4.3 Osciladores HS y LP

El oscilador de cristal 0 rcsonador de alta velocidad HS (High Speed Crytal/Resonator) trabaja a una frecuencia comprendida entre 4 MHz y 20 MHz para el PIC 16F84A.

6 MICROCONfROLADOR PIC16F84. DESARROLLO DE PROYECTOS

©RA-MA

20pF

5k 1,34 MHz
10k 756kHz
100 k 82,8 kHz
5k 428kHz
10k 243 kHz
100 k 26,2 kHz 100pF

300pF

Tabla 1-1 Frecuencia del oscilador RC para diferentes valores de componentes

El oscilador de cristal de cuarzo 0 resonador ceramico de baja potencia LP (Low Power Crystal) es un oscilador de bajo consumo. Su cristal 0 resonador esta disefiado para trabajar con frecuencias comprendidas entre 32 kHz y 200 kHz.

C1

PIC16F84A

OSC2\CLKOUT

Figura 1-4 Oscilador configuracion HS, XI y LP

El circuito para cualquiera de las configuraciones HS, LP Y XT es el mismo (figura 1-4). E1 valor de los condensadores CI y C2 depende del cristal 0 resonador segun unas tablas que facilita el fabricante. La resistencia Rs solo es necesaria para algunas versiones del tipo HS.

1.4.4 Utilizando una serial de reloj externa

Esta posibilidad suele ser utilizada para hacer funcionar varios microcontroladores a partir de una unica sefial de reloj (figura 1-5). La frecuencia del oscilador dividida por cuatro, esta disponible en el pin OSC2/CLKOUT. Se utiliza en pocas ocasiones

Serial de reloj M I'"" externa J L-J

>-- ...... OSC1\CLKIN PIC16F84A

Fosc/4 .... -- OSC2/CLKOUT

Figura 1-5 Circuito para seiial de relo} externa

©RA-MA CAPITULO I: MICROCONTROLADORPIC16F~ -

1.5 RESET

EI llamado reset en un microcontrolador provoca la reinicializacion de su fimcionamiento, un "comienzo a fimcionar desde cero". En este estado, la mayoria de los dispositivos internos del microcontrolador toman un estado conocido.

En los microcontroladores se requiere un pin de reset para remicrar el fimcionamiento del sistema cuando sea necesario. EI pin de reset en los PIC se denomina MCLR (Master Clear) y produce un reset cuando se Ie aplica un nivel logico bajo.

5V

5V

100

10k

RESET

RAO

RA1

RA2

RA3 RA41T0CKI

RBOIINT RB1 RB2 RB3 RB4 RB5 RB6

N RB7

() rn

rn rn o >

I~ D
D
>
RAO RBOIINT
RA1 RB1
RA2 RB2
RA3 RB3
RA41T0CKI RB4
RBS
RB6
0 N RB7
o rn
en en en
0 0 > o

rn o

PIC16F84A

A) TfplCA CONEXION DEL PIN MCLR.

B) RESET MEDIANTE PULSADOR EN PIN MCLR.

Figura 1-6 Algunas conexiones para el pin MCLR

Para tener un control sobre el reset del sistema, se puede conectar un pulsador tal como se muestra en la figura 1-6(B) y conseguir un reset manual llevando momentaneamente el pin MCLR amasa cada vez que se presiona el pulsador. EI reset permanecera mientras tengamos el pulsador presionado y no comenzara la secuencia de arranque hasta que no 10 liberemos; suministrando as! un nivel logico "1" ill pin MCLR. EI fabricante recomienda conectar en serie con el pulsadoruna resistencia de 50 a 100 n.

EI PIC16F84 tambien permite el llamado Power-On Reset (POR), que proporciona un reset al microcontrolador en el momento de conectar la fuente de alimentacion, El PIC dispone de un temporizador denominado Reset PWRT (Power-up Timer), que proporciona uiY~tardo de 72 ms desde el momenta de la conexion a la alimentacion; un reset se mantiene durante este tiempo, garantizando que Vee alcance un nivel aceptable de tension para un arranque correcto del sistema. Para utilizar este tipo de reset, hay que conectar el pin MCLR al positive de la alimentacion (figuras 1-6). Ademas, hay que programarlo as! durante el proceso de grabacion, Con esto se evita utilizar las tradicionales redes RC externas de otros microcontroladores.

8 MICROCONTROLADOR PICI6F84. DESARROLLO DE PROYECTOS

©RA-MA

El PIC l6F84 pennite otras causas de reset que seran explicadas en capitulos posteriores.

1.6 MONTAJE DEL ENTRENADOR

Una vez analizado el entrenador para el aprendizaje del microcontrolador PIC16F84 descrito en 1a figura 1-2 se puede pasar a su montaje bien sobre placa de prototipos Protoboard, sobre una placa wrapping, circuito impreso, 0 cualquier otro soporte. En el montaje hay que respetar las siguientes normas:

• Comprobar todos los componentes que sea posible antes de su montaje.

• El PIC se situara de manera tal que sea facilmente extrafble, preferiblemente en el lateral derecho de la placa (izquierdo para zurdos), de modo que no pasen cables por encima.

• Es recomendable alojar el microcontrolador en un zocalo de pines tomeados para no doblar las patillas y evitar que se rompan.

• Los indicativos de menor peso de los arrays de diodos LEDs e interruptores se colocaran a la derecha.

• Los cables deben ser 10 mas corto posible. No se deben utilizar cables contiguos del mismo color.

• Hay que respetar el rojo para el positivo de la alimentacion y el negro para el negativo.

• Una vez terminado todo, debe procederse a la comprobacion de nuevo de todas las conexiones. No se debe temer el "perder" diez minutos en esta fase, ya que despues puede ahorrar gran cantidad de tiempo en averias.

La tension de alimentacion de 12 V de tension continua se puede obtener con un a1imentador que puede adquirirse facilmente en cualquier tienda de electronic a 0 en un hipermercado. Si 10 desea el1ector puede montarlo a partir del esquema de Ia figura 1-7.

J1

~

+ C1

I 2200ll/25V

+ 12 V

T1 9 V /1 A

Figura 1-7 Esquema de un alimentador de 12 V de tens ion continua

.. _.~"U'LH'UjUJL'JljJ1JlJlllJladWlllilllWlllllllUllillllllllllIIiItlwj

También podría gustarte