Está en la página 1de 10

El PIC16F84

El PIC (Peripheral Interface Controller) 16F84. Es un chip de 18 pines, programable e ideal para aprender tcnicas de software y del microprocesador. 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 gobierna el funcionamiento del mismo que una vez programado y configurado, solo sirve para realizar la tarea asignada. La utilizacin de un microcontrolador en un circuito reduce notablemente el tamao y el nmero de componentes y, en consecuencias, disminuye el nmero de averas y el volumen y el peso de los equipos. Entre otras ventajas. El microcontrolador es uno de los inventos ms notable del siglo XX. En el mercado hay una gran cantidad de ellos, con multitud de posibilidades y caractersticas. Cada tipo de microcontrolador sirve para una serie de casos y es el diseador de sistema quien debe de decidir cul es el microcontrolador ms idneo para cada uso. El PIC 16F84 esta encapsulado en un econmico DIL de 18 pines. Debidos a sus mltiples aplicaciones y facilidad de uso es uno de los microcontroladores mas utilizados para la realizacin de proyectos sencillos.

Este microcontrolador puede trabajar con una frecuencia mxima de 10 MHz. Puertos de entrada y salida. El microcontrolador se comunica con el mundo exterior a travs de los puertos. Estos estas constituidos pos las lneas de entra/salida que trabajan entre 0 y 5 v. Los puertos se pueden configurar como entradas para recibir datos o como salidas para gobernar dispositivos externos.

El PIC 16F84 tiene dos puertos, tal como se ilustra en la figura El puerto A con 5 lneas, pines RA0 a RA4. El puerto B con 8 lneas, pines RB0 a RB7. Cada lnea puede ser programada como entrada o como salida, independientemente una de otras, segn se programe.

Arquitectura interna del PIC 16F84

El diagrama de bloques del PIC16F84 detecta los siguientes componentes. Memoria de programa tipo ROM Flash de 1K x 14 bits. Memoria de datos dividida en 2 areas: rea RAM constituida por 22 registros de propsito especifico (SFR) y 68 de propsito general. rea EEPROM de datos formada por 64 registro de 8 bits. ALU de 8 bits y registro de trabajo W, del que normalmente recibe un operando que puede ser cualquier registro, memoria, puerto de entrada/salida o el propio cdigo de instruccin. Dos puertos para la comunicacin con el mundo exterior: PORTA de 5 bits <RA4:RA0> y PORTB de 8 bits <RB7:RB0>

Organizacin de la memoria Dentro del PIC16F84 se distinguen tres bloques de memoria: Memoria de programa: En sus 1024 posiciones contiene el programa con las instrucciones que gobiernan la aplicacin. Es del tipo no voltil, es decir, el programa se mantiene aunque desaparezca la alimentacin. Memoria de datos RAM: Se destina a guardar las variables y datos. Es voltil, es decir, los datos almacenados se borran cuando desaparece la alimentacin. Memoria EEPROM de datos: Es una pequea rea de memoria de datos de lectura y escritura no voltil. Gracias a la cual, un corte del suministro de la alimentacin no ocasiona la perdida de la informacin, que estar disponible al reinicializarse el programa.

Alimentacin de un PIC16F84 Se alimenta con 5 voltios aplicados entre los pines VDD y VSS que son, respectivamente, la alimentacin y la masa del chip. El consumo de corriente para el funcionamiento del microcontrolador depende de la tensin de alimentacin de la frecuencia de trabajo y de las cargas que soportan sus salidas, siendo del orden de unos pocos miliamperios.

Oscilador Todo microcontrolador requiere de un circuito que le indique la velocidad de trabajo, es el llamado oscilador o reloj. Este genera una onda cuadrada de alta frecuencia que se utiliza como una seal 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 pocos componentes externos, como un cristal de cuarzo o una red RC, para definir la frecuencia de trabajo. En el PIC 16F84 los pines OSC1/CLKIN y OSC2/CLKOUT son las lneas utilizadas para este fin. Permite cinco tipos de osciladores para definir la frecuencia de funcionamiento: XT: Cristal de cuarzo. RC: 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 seal de reloj extra.

RESET El llamado reset en un microcontrolador provoca la reinicializacion de un funcionamiento, un comienzo a funcionar desde cero. En este estado, la mayora de los dispositivos internos del microcontrolador toman un estado conocido. En los microcontroladores se requiere de un pin de reset para reiniciar el funcionamiento del sistema cuando sea necesario. El pin de reset en los PIC se denomina MCLR (Master Clear) y se aplica un reset cuando se aplica un nivel bajo.

Memoria de programa El microcontrolador est diseado para que en su memoria de programa se almacene todas las instrucciones del programa de control, el programa a ejecutar siempre es el mismo, por tanto, debe estar grabado de forma permanente. Esta caracterstica de no volatilidad garantiza que la memoria mantenga su contenido aun sin alimentacin de forma que el programa no necesite volver a ser cargado en el sistema cada vez que se utilice. La informacin contenida en estas memorias debe ser grabada previamente mediante un equipo fsico denominado programador o grabador. Este equipo se debe conectar a un ordenador que mediante un software controla la grabacin de la memoria de programa del microcontrolador.

El PIC16F84 es un microcontrolador con un tipo memoria de programa no voltil denominada ROM Flash, que permite una grabacin muy sencilla, rpida y cmoda, lo que representa gran facilidad en el desarrollo de diseos. La memoria del programa del PIS16F84 tiene una capacidad de 1K (1024 posiciones) y estar organizada en palabras de 14 bits. As pues, la memoria de programa comienza en la posicin 000h (posicin inicial del reset) y llega hasta 3FFh. El PIC16F84 admite unas 1000 grabaciones y el fabricante garantiza que la informacin permanecer inalterable durante varias decenas de aos. Memoria de datos En esta memoria se almacenan los datos que se manejan en un programa. Estos dos varan continuamente, por lo que esta memoria debe ser de lectura y escritura. Se utilizan memoria denominada RAM que es de un tipo voltil, con lo cual los datos se borran en caso de que desaparezca la alimentacin. La estructura de la memoria de datos RAM del PIC16F84 donde se aprecia que est dividida en dos partes: Registros de funciones especiales SFR (Special function Registers). Son los primeros registro, cada uno de ellos simple un propsito especial en el control del microcontrolador. Registros de propsito general GPR (General Purpose Registers). Son de uso general que se pueden usar para guardar los datos temporales del programa que se est ejecutando. Tiene 68 posiciones para el PIC16F84. La memoria de datos cuenta con dos bancos de memoria, Banco 0 y Banco 1: Los registros del SFR estn agrupados entre las direcciones 00h a 0Bh para el banco 0 y entre las direcciones 80h hasta 8Bh para el banco 1. Algunos de los registros SFR se encuentra duplicados en la misma direccin en los dos bancos, con el objeto de simplificar su acceso. As por ejemplo, el registro STATUS ase localiza en las direcciones o3h (Banco 0) y 83h (Banco 1). El banco de registro de propsito general est formado por 68 posiciones de memoria, ya que solo son operativas las del Banco 0 (direcciones desde la 0Ch hasta la 4Fh), porque las del Banco 1 se mapean el Banco 0. Es decir, cuando se apunta a un registro de propsito general del Banco 1 (direcciones de 8Ch hasta 0CFh), realmente se accede al mismo registro del Banco 0. Para seleccionar el banco a acceder hay que configurar el bit 5 (RPO) del registro STATUS. Con RPO = 0 se accede al Banco 0 y con RPO = 1 se accede al Banco 1. En Banco 0 es seleccionado automticamente despus de un reset.

El PIC 16C84 al igual que los dems miembros de su familia, se caracterizan por que:

Su procesador es segmentado, "pipe-line". Su procesador es tipo RISC Tiene una arquitectura HARVARD El formato de las instrucciones es ortogonal La arquitectura est basada en banco de registros

Procesador segmentado "pipe-line": quiere decir que aplica la tcnica de segmentacin que permite al procesador realizar simultneamente la ejecucin de una instruccin y la bsqueda de cdigo de la siguiente. De esta manera, se puede ejecutar una instruccin en un ciclo. (Cada ciclo de instruccin son cuatro ciclos de reloj). Procesador tipo RISC: Las CPUs atendiendo al tipo de instrucciones que utilizan pueden clasificarse en:

CISC: (Complex Instruction Set Computer) Computadores de juego de instrucciones complejo, que disponen de un repertorio de instrucciones elevado (unas 80), algunas de ellas muy sofisticadas y potentes, pero que como contrapartida requieren muchos ciclos de mquina para ejecutar las instrucciones complejas. RISC: (Reduced Instruction Set Computer) Computadores de juego de instrucciones reducido, en los que el repertorio de instrucciones es muy reducido (en nuestro caso 35), las instrucciones son muy simples y suelen ejecutarse en un ciclo mquina. Adems los RISC deben tener una estructura pipeline y ejecutar todas las instrucciones a la misma velocidad. SISC:(Specific Instriction Set Computer) Computadores de juego de instrucciones especfico.

Arquitectura Harvard: Tradicionalmente los microprocesadores se basan en la estructura de Von Neumann, como la de la figura siguiente, que se caracteriza por disponer de una nica memoria principal en la que se almacenan los datos y las instrucciones. A esta memoria se accede a travs de un sistema de buses nico:

Bus de datos Bus de direcciones Bus de control

El modelo Harvard, representado en la figura siguiente, dispone de dos memorias:


Memoria de datos Memoria de Programa

Adems cada memoria dispone de su respectivo bus, lo que permite, que la CPU pueda acceder de forma independiente y simultnea a la memoria de datos y a la de instrucciones. Como los buses son independientes stos pueden tener distintos contenidos en la misma direccin.

Arquitectura Ortogonal: Cualquier instruccin puede utilizar cualquier elemento de la arquitectura como fuente o destino. Arquitectura basada en banco de registros: Implica que todos los elementos del sistema, es decir, temporizadores, puertos de entrada/salida, posiciones de memoria, etc, estn implementados fsicamente como registros. En los PIC el manejo del banco de registros, que participan activamente en la ejecucin de las instrucciones, es muy interesante al ser ortogonales. En la figura siguiente se muestra como la ALU (Unidad Aritmtico-Lgica) efecta sus operaciones con dos operandos, uno que proviene del registro W (Work), que en otras CPUs recibe el nombre de Acumulador, y el otro que se encuentra en cualquier otro registro o del propio cdigo de instruccin.

También podría gustarte