You are on page 1of 16

xl

4.6.8.- PIC16F877

xli

4.6.9.-

PIC 16F84

xlii

4.7.-

ANEXO3

4.7.1.- El Microcontrolador PIC16F84:


Este microcontrolador es un Circuito Integrado Programable o PIC por sus
siglas en Ingls: (Programmable Integrated Circuit), es el nombre comercial
con el que la compaa Microchip ha designado a sus microcontroladores.
Por sus caractersticas y costo, estos dispositivos son ideales para realizar
casi cualquier proyecto de control. Su principal caracterstica al igual que
cualquier otro microcontrolador, es que todos los elementos requeridos para
realizar su trabajo ya vienen incorporados dentro del propio encapsulado.
De tal suerte, lo nico que tenemos que hacer, es programarlo, conectar
sus terminales a las entradas o la salida de la seal que deseamos. En el
proyecto se utiliza como transmisor en forma serial de todas las seales a
procesar en forma digital (0 y 1).

La figura 4.7.1 muestra su estructura

externa:

Figura 4.7.1.- Circuito Integrado PIC16F84 y sus pines

xliii

4.7.1.1.

Descripcin y funcionamiento de los Pines .-

VSS y VDD: (pines 5 y 14) son respectivamente las patillas de masa y

alimentacin. Est comprendida entre 2V y 6V.

OSC1/CLKIN y OSC2/CLKOUT : (pines15 y 16) son los pines de la

entrada de cristal/ fuente externa de reloj y salida de oscilador a cristal


respectivamente.

Los distintos elementos de la familia 16X84X, dependiendo de la


nomenclatura que utilizan tienen distintas caractersticas de:
* Frecuencia mxima de funcionamiento
* Tipo de oscilador utilizado para generar frecuencias de reloj
* Margen de la tensin de alimentacin.
Los microcontroladores PIC, permiten cuatro tipos de osciladores externos
para aplicarles la frecuencia de funcionamiento. Durante el proceso de
grabacin, antes de introducir el programa en memoria, debe indicarse el tipo
de oscilador empleado en los bits FSOC1 y FSOC2 de la Palabra de
Configuracin. Los tipos de osciladores que utiliza el microcontrolador son:
* Oscilador de cristal o resonador de alta velocidad "HS"(High Speed

Crytal/Resonator): Es un oscilador de frecuencia comprendida entre 4MHz y


20MHz.
* Oscilador o resonador cermico "XT" (Crystal/Resonator): Se trata de un

oscilador estndar que permite una frecuencia de reloj comprendidas entre


100KHz y 4 MHz.

xliv

* Oscilador de cristal de cuarzo o resonador cermico de baja potencia "LP"

(Low Power Crystal): Se trata de un oscilador de bajo consumo con un cristal


o resonador diseado para trabajar con frecuencias comprendidas entre
32KHz y 200KHz.
* MLCR /Vpp: (pin 4) Entrada de Reset si est a nivel bajo y entrada de la

tensin de programacin cuando se est programando el dispositivo. Ms


adelante veremos como se realiza el reset del microcontrolador y que formas
hay de hacerlo.
* RA0-RA4/TOCK1 : (Pines 17,18,1,2 y 3 respectivamente) Corresponden a

cuatro lneas bidireccionales de E/S del PORTA. Es capaz de entregar


niveles TTL cuando la tensin de alimentacin aplicada en VDD es de 5V
5%. El pin RA4, si se programa como salida es de colector abierto.
Como entrada puede programarse en funcionamiento normal o como
entrada del contador/temporizador TMR0.
*

RB0-RB7: (Pines 6,7,8,9,10,11,12 y 13 respectivamente) Corresponden a

ocho lneas bidireccionales de E/S del PORTB. Es capaz de entregar niveles


TTL cuando la tensin de alimentacin aplicada en VDD es de 5V 5%. RB0
puede programarse adems como entrada de interrupciones externas INT.
Los pines RB4 a RB7 pueden programarse para responder a interrupciones
por cambio de estado. La patilla RB6 y RB7 corresponden con las lneas de
entrada de reloj y entrada de datos respectivamente, cuando est en modo
programacin.

xlv

4.7.2.-

El Microcontrolador PIC16F77:

Este microcontrolador es mucho ms verstil que el Pic16F84 utilizado


para transmitir los datos. Es usado como receptor, ya que puede manejar
tablas de datos; muy eficiente cuando de procesos que no son del todo
lineales se trata. Adems cuenta con mas puertas E/S, que de algn modo
facilitar el manejo de presentacin de datos tanto en displays como
encendido y apagado de leds indicadores de eventos, que son
aproximadamente 16, y son totalmente independientes. Sumado a esto
activacin de alarma a travs de un zumbador, y pulsador que es usado
para desactivar dicho zumbador cuando el operador o persona que est en
frente del panel final, as lo requiera. La figura 4.7.2 presenta el circuito
externo:

Figura 4.7.2.- Circuito Integrado PIC16F877 y sus pines

xlvi

CARACTERSTICAS PRINCIPALES

4.7.2.1.-

Caractersticas Principales

Pertenece a la familia de microcontroladores RISC de 8bits con memoria


FLASH que combinan el voltaje de funcionamiento ms bajo con un
convertidor A/D de 10bits. Este microcontrolador dispone de 8Kx14bits de
memoria FLASH mejorada, 256 bytes de memoria de datos EEPROM y el
voltaje de funcionamiento ms bajo de la industria desde 2,0V a 5,5V. Es
ideal

para

aplicaciones

programables

alimentadas por bateras,

aplicaciones como controladores del cuerpo humano, controles de maquinas


programables, mantenimiento de redes, telfonos alta gama, dispositivos y
sensores actualizables en campo.
Los dispositivos tambin proporcionan de 5 a 8 canales de convertidores
A/D de 10bits, USART para aplicaciones de adquisicin de datos multipunto
con deteccin de direccionamiento, hasta 5MIPS a 20MHz, permite la
comunicacin

I2C

SPI

para

la

expansin

de

perifricos,

dos

temporizadores de 8 bits y uno de 16 bits. La precisin de los temporizadores


es de 16bits en captura y comparacin, con 12,5ns y 200ns respectivamente
y modulacin de anchura de pulso de 20KHz con 10 bits de resolucin. La
tecnologa Enhanced Flash de Microchip ofrece con 1.000.000 de ciclos de
borrado

escritura,

la

mayor

durabilidad

de

la

industria.

Los

microcontroladores tambin ofrecen la programacin serie y en circuito,


permitiendo la grabacin despus de soldarse en la placa.
Se puede realizar tambin la depuracin en circuito y tiempo real mediante
el modo "Background Debugger" de los PIC16F877, con tan slo un sencillo
interfaz de 5 hilos.

xlvii

RESUMEN:

CPU RISC de arquitectura paralela, o lo que es lo mismo, que tiene


diferente memoria para los datos y el programa.

Tiene 35 instrucciones en ensamblador, que se ejecutan en un ciclo


de maquina, excepto las de salto que lo hacen en 2 ciclos de mquina.

Velocidad mxima de operacin 20 MHz ciclo mquina 200 nseg.

8 K palabras(14 bits) de memoria flash de programas

368 bytes de memoria de datos (RAM)

256 byrtes de memoria de datos (EEPROM)

1 Watchdog

2 Timer/Contador de 8 bits

1 Timer/ Contador de 16 bits

2 canales de PWM para controlar motores

8 canales de conversin analgico-digitales de 10 bits

Puerto serie sncrono con SPI

Puerto paralelo esclavo PSP de 8 bits

I2C

USART

xlviii

4.7.2.2.-

Descripcin de las Puertas de entrada / salida.-

Patitas de Propsito General:


v OSC1/CLKIN(9):

Entrada de

cristal de cuarzo o del oscilador

externo.
v OSC2/CLKOUT(10): Salida del cristal de cuarzo.
v VSS(8-9): conexin a tierra.
v VDD(20): entrada de la alimentacin positiva.
v MCLR#/VPP/THV(1):

entrada de reset o entrada de voltaje de

programacin o voltaje alto en el modo set.


Puertas:
puerta A:
v RA0/AN0(2): puede actuar como lnea digital de E/S o como entrada
analgica al conversor AD(canal 0).
v RA1/AN1(3): igual que la RA0/AN0.
v RA2/AN2/VREF-(4): puede ser lnea digital de E/S, entrada analgica
o entrada de voltaje negativo de referencia.
v RA3/AN3/VREF+(5): puede ser lnea digital de E/S, entrada analgica
o entrada de voltaje positivo de referencia.
v RA4/TOCKI(6): Lnea digital de E/S o entradas del reloj del Timer0.
salida con colector abierto.
v RA5/SS#/AN4(7): Lnea digital de E/S, entrada analgica o seleccin
como esclavo de la puerta serie sncrona.

xlix

puerta B:

v RB0/INT(21):

lnea digital de E/S

o entrada de peticin de

interrupcin externa.
v RB1(22): lnea digital de E/S.
v RB2(23): lnea digital de E/S.
v RB3/PGM(24): lnea digital de E/S o entrada del voltaje bajo para
programacin.
v RB4(25): lnea digital de E/S.
v RB5(26): lnea digital de E/S.
v RB6/PGC(27): lnea digital de E/S. En la programacin serie recibe
las seales de reloj.
v RB7/PGD(28): lnea digital de E/S. En la programacin serie actua
como entrada de datos.

puerta C:
v RC0/T1OSO/T1CKI(11): lnea digital de E/S o salida del oscilador del
Timer1 o como entrada de reloj del Timer1.
v RC1/T1OSI/CCP2(12): lnea digital de E/S o entrada al oscilador del
Timer1 o entrada al mdulo captura2/salida comparacin2/ salida de
PWM2.
v RC2/CCP!(13): lnea digital de E/S. Tambin puede actuar como
entrada captura1/salida comparacin1/salida de PWM1.
v RC3/SCK/SCL(14):

lnea digital de E/S o entrada de relojserie

sincrona/salida de los modos SPI e I2C.

v RC4/SDI/SDA(15): lnea digital de E/S o entrada de datos SPI o I/O


datos en modo SPI e I2C.
v RC5/SDO(16): lnea digital de E/S o salida de datos en modo SPI.
v RC6/TX/CK(17): lnea digital de E/S o patita del transmisor USART
asncrono o como reloj del sncrono.
v RC7/RX/DT(18):

lnea digital de E/S

o receptor del USART

asncrono o como datos en el sncrono.


puerta D:
v RD0/PSP0-RD7/PSP7:

Pueden

actuar como E/S digital o como

lineas para la transferencia de informacin en la comunicacin de la


puerta paralela esclava. Slo disponible en los PIC16F874/7.
puerta E:
v RE0/RD#/AN5: E/S digital o seal de lectura para la puerta paralela
esclava o entrada analgica(canal 5).
v RE1/WR#/AN6: E/S digital o seal de escritura en la puerta paralela
esclava o entrada analgica al conversor A/D(canal 6).
v RE2/CS#/AN7:

E/S digital o activacin/desactivacin de la puerta

paralela o entrada analgica (canal 7).

li

4.7.3.-

Diferencias y semejanzas entre la familia PIC16F877 y 16F84

Las diferencias son un tanto considerables, en cuanto que el pic16F877


maneja mas puertos entrada / salida y adems internamente contiene un
convertidor analgico / digital con caractersticas similares al ADC0808. El
pic16F84 tiene memoria flash, pero con una capacidad de 1k palabras, slo
tiene un Timer y 13 lneas de entradas / salidas(E/S) digitales y el modelo
normal soporta una frecuencia de 10 MHz, aunque el A llega a los 20 MHz.
Es un microcontrolador pobre pero resultn, por su sencillez y precio unidos
a la imaginacin del proyectista.

Los nuevos pic16F877 se pueden considerar como una combinacin de


las virtudes del pic16F84 con la inclusin de los recursos de los pic16C73 y
74. Incorporan la memoria flash, con una capacidad de 4k y 8k palabras de
14 bits, sin cambiar la estructura interna del procesador y conservando el
mismo repertorio de instrucciones. Observe la tabla N 4.7.1 que detalla
mejor las diferencias - semejanzas, y caractersticas relevantes entre ambos
microcontroladores:

lii

Tabla 4.7.1.- Caractersticas relevantes del Pic16F877 junto a las del


Pic16F84A.
MODELO
MEMORIA
PROG.(FLASH)
MEMORIA
DATOS
CONVERTIDOR
(ADC)
BOD(deteccin de
baja tensin)

Bytes
Palabras
Bytes EEPROM
Bytes RAM

PIC16F84A
1792

PIC16F877
14336

1024 x 14
64
68
NO

8192 x 14
256
368
8(10 BITS)

NO

13

33

NO

USART / MSSP

NO

Lneas E/S
Comunicacin
Serie
CCP
TEMPORIZADORES
FRECUENCIA MAX. en MHz
ICSP(Programacin Serie en circuito)

1-8 bit, 1-WDT


20

20

S
S
18P,18SO,20SS 40P,44L,44PQ,44PT

ENCAPSULADOS
FUENTES DE INTERRUPCIN
COMUNICACIN PARALELO

14

NO

La memoria RAM de datos de los PIC16F877 posee una


capacidad de 368 bytes. Aunque superan ampliamente los 68
bytes del PIC16F84, mantienen la misma estructura, basada
en 4 bancos de 128 bytes cada uno; seleccionables con los
bits RP0 yRP1 del registro Estado. La memoria de datos no

liii

voltil de 64 bytes tipo EEPROM que tena el PIC16F84, en


los nuevos PIC16F877 de 40 patitas sube hasta 256 bytes.
En los PIC16F877 se manejan hasta 14 posibles fuentes de
interrupcin y 3 Timer, frente a las fuentes y 1 Timer del
PIC16F84. El nmero de puertas tambin se ve aumentado
sustancialmente con 5 puertas.

Los PIC16F877 incorporan recursos inexistentes en los PIC16F84:


n Mdulos CCP: Capturan y comparan impulsos.
n Comunicacin serie: USART ( comunicacin entre subsistemas o
mquinas(RS-232)), y MSSP(comunicacin entre circuitos integrados)
n Comunicacin

Paralelo:

Protocolo

PSP

mas

rpido

que

la

comunicacin serie, pero hipoteca muchas entradas / salidas.


n Conversor A/D: Conversor analgico Digital de 10 bits, con 8
canales de entradas.
Tanto los PIC16F84 / 16F877 responden a una serie de instrucciones o
cdigos que se deben grabar en su memoria de programa. En total son 35
instrucciones

nemnicos manejadas por estos microcontroladores. Las

instrucciones se dividen en tres(3)

grupos diferentes: Orientadas a los

registros, orientadas a los bits, y lo s registros de control.

Todas las

instrucciones se ejecutan en un ciclo de instruccin, es decir, en un


microsegundo cuando se tiene un cristal de 4 MHz, excepto las instrucciones
de salto que ocupan dos(2) ciclos de instruccin.

ANEXO4

liv

4.8.1.- Este circuito representa la salida del SENSOR DE


CORRIENTE, como se puede observar no necesitar pasar
por un convertidor analgico digital (ADC); sino que va
directamente al puerto B del PIC16F84; transmisor de serial
de datos.

OR EXCLUSIVA: Entradas diferentes SALIDA Alto


COMPARADOR: V(+) > V(-) Alto........[Vref = V(-)]
Figura 4.8.1.- Digitalizacin directa entrada analgica del sensor de
corriente (0 a 5V)

lv

4.8.2.-

Circuito Monoestable del 555.-

Figura N 4.8.2.- Configuracin y temporizacin del monoestable 555

You might also like