adelanto uc

17
Universidad Pedagógica y Tecnológica de Colombia. Manejo de puertos en Microcontroladores PIC ADELANTO PROYECTO MICOCONTROLADORES Andersson Gabriel García García [email protected] Fabio Hernán Ortega Patiño, [email protected] Carlos Sebastian Rojas Piña, [email protected] Andrés David Suárez Gómez, [email protected] Universidad Pedagógica y Tecnológica de Colombia Resumen- En el presente documento se evidenciarán los procesos lógicos y mecánicos para el desarrollo de una maquina dispensadora de bebidas calientes, lo cual requiere de cierta capacidad de creatividad, para ensamblar adecuadamente cada etapa encargada de ejecutar cada subproceso, entre estas un dispensador de vasos, el calentamiento de cada líquido a servirse, el testeo de las monedas (forma de pago) con las cuales se recibirá el producto, una banda transportadora, que permite llevar entre cada una de las etapas alguna etapa del producto, para finalmente ser llevada al consumidor. Palabras clave: Microcontrolador, compilador, PIC, lenguaje ensamblador, periféricos, sensor, motor DC, banda transportadora, acrílico. Abstract- In this paper the logical and mechanical processes for the development of a dispensing machine for hot drinks will be apparent, which requires a certain capacity for creativity, to properly assemble each stage responsible for executing each thread among these vessels dispenser the heating of each liquid to pour, testing of coins (method) with which the product, a conveyor belt, which allows out between each stage some stage of the product, to finally be taken to be received consumer. Key words- Microcontroller, compiler, PIC, assembly language, peripherals, sensor, DC motor, conveyor, acrylic. 1. INTRODUCCIÓN En el presente trabajo se evidencia el proceso que se sigue para el desarrollo de un proyecto dispensador de bebidas calientes, el cual implica de la interconexión de subrutinas que se encargan de complementarse, pero que esas parten del funcionamiento y control de un cerebro central llamado PIC el cual definen las situaciones posibles que se llegan a presentar en el funcionamiento cotidiano de la máquina, además cada diseño se realiza con la compilación total de cada una de las ideas planteadas por los desarrolladores del proyecto, se plantean unos diseños que son susceptibles a cambios o variaciones dependiendo de las complicaciones que se presentan al momento de hacer la implementación física. 2. OBJETIVOS Comprender el funcionamiento de los programas MPLAB y Pickit X dentro de la ejecución de procesos en microcontroladores PIC. 1

Upload: anderson-garcia

Post on 16-Sep-2015

47 views

Category:

Documents


8 download

DESCRIPTION

xzxzx

TRANSCRIPT

ADELANTO PROYECTO MICOCONTROLADORES

Andersson Gabriel Garca Garca [email protected] Hernn Ortega Patio, [email protected] Sebastian Rojas Pia, [email protected] David Surez Gmez, [email protected]

Universidad Pedaggica y Tecnolgica de Colombia

Universidad Pedaggica y Tecnolgica de Colombia. Manejo de puertos en Microcontroladores PIC

2

Resumen- En el presente documento se evidenciarn los procesos lgicos y mecnicos para el desarrollo de una maquina dispensadora de bebidas calientes, lo cual requiere de cierta capacidad de creatividad, para ensamblar adecuadamente cada etapa encargada de ejecutar cada subproceso, entre estas un dispensador de vasos, el calentamiento de cada lquido a servirse, el testeo de las monedas (forma de pago) con las cuales se recibir el producto, una banda transportadora, que permite llevar entre cada una de las etapas alguna etapa del producto, para finalmente ser llevada al consumidor.

Palabras clave: Microcontrolador, compilador, PIC, lenguaje ensamblador, perifricos, sensor, motor DC, banda transportadora, acrlico.Abstract- In this paper the logical and mechanical processes for the development of a dispensing machine for hot drinks will be apparent, which requires a certain capacity for creativity, to properly assemble each stage responsible for executing each thread among these vessels dispenser the heating of each liquid to pour, testing of coins (method) with which the product, a conveyor belt, which allows out between each stage some stage of the product, to finally be taken to be received consumer.

Key words- Microcontroller, compiler, PIC, assembly language, peripherals, sensor, DC motor, conveyor, acrylic.

1. INTRODUCCIN

En el presente trabajo se evidencia el proceso que se sigue para el desarrollo de un proyecto dispensador de bebidas calientes, el cual implica de la interconexin de subrutinas que se encargan de complementarse, pero que esas parten del funcionamiento y control de un cerebro central llamado PIC el cual definen las situaciones posibles que se llegan a presentar en el funcionamiento cotidiano de la mquina, adems cada diseo se realiza con la compilacin total de cada una de las ideas planteadas por los desarrolladores del proyecto, se plantean unos diseos que son susceptibles a cambios o variaciones dependiendo de las complicaciones que se presentan al momento de hacer la implementacin fsica.

2. OBJETIVOS

Comprender el funcionamiento de los programas MPLAB y Pickit X dentro de la ejecucin de procesos en microcontroladores PIC. Observar las formas y nemotecnia utilizadas por el sistema compilador assembler. Utilizar adecuadamente el set de instrucciones del microcontrolador PIC16F84A. Disear programas para el manejo de puertos mediante su configuracin adecuada segn sea el problema a resolver. Generar en el estudiante el pensamiento algortmico bsico durante las rutinas de programacin. Implementar circuitos digitales de orden combinacional y secuencial asocindolos a problemas vistos en asignaturas de tcnicas digitales. Incluir conceptos sobre rangos seguros de operacin en sistemas microcontrolados detallando la forma y los parmetros de conexin a perifricos externos tipo actuador.

3. MATERIALES

(2) microcontroladores PIC16F84A. Diodos LED. Pulsadores. Cristal 4 MHz. (2) condensadores 20 pF.

4. MARCO TERICOEstructura La parte exterior del proyecto se plantea de un material que permita visualizacin del funcionamiento interno del mecanismo para lo cual se usara acrlico, que es un material que presenta estas caractersticas, adems de ser ms liviano que el vidrio y menos delicado, el acrlico estar sujeto a una estructura metlica rgida soldada en las uniones que da el fortalecimiento de la misma ya que los dems mecanismos estarn soportados y asegurados al mismo.Por otra parte para el seor de las monedas se tendr en cuenta uno de tipo ptico H21A1 Sensores Para cada etapa es necesario usar sensores que determinaran el estado y momento en que se encuentra la mquina, con esto se puede hacer un control ms eficaz de la maquina

Un microcontrolador es un circuito integrado que en su interior contiene una unidad central de procesamiento (CPU), unidades de memoria (RAM y ROM), puertos de entrada y salida y perifricos. Estas partes estn interconectadas dentro del microcontrolador, y en conjunto forman lo que se le conoce como microcomputadora. Se puede decir con toda propiedad que un microcontrolador es una microcomputadora completa encapsulada en un circuito integrado. Figura 1. Estructura interna de un microcontrolador El microcontrolador (MCU o C) permite mltiples asociaciones con elementos perifricos adicionales que interactan con un entorno fsico, siendo el encargado del gobierno de los mismos en una secuencia lgica y de caractersticas adaptables a cada dispositivo asociado.El propsito fundamental de los microcontroladores es el de leer y ejecutar los programas que el usuario le escribe, es por esto que la programacin es una actividad bsica e indispensable cuando se disean circuitos y sistemas que los incluyan. El carcter programable de los microcontroladores simplifica el diseo de circuitos electrnicos. Permiten modularidad y flexibilidad, ya que un mismo circuito se puede utilizar para que realice diferentes funciones con solo cambiar el programa del microcontrolador.Las aplicaciones de los microcontroladores son vastas, se puede decir que solo estn limitadas por la imaginacin del usuario. Es comn encontrar microcontroladores en campos como la robtica y el automatismo, en la industria del entretenimiento, en las telecomunicaciones, en la instrumentacin, en el hogar, en la industria automotriz, etc.

Figura 2. Asociamientos con los que puede trabajar el PIC

Microcontroladores PICLos PIC, de Microchip, son una opcin ms dentro del vasto mercado de microcontroladores. La popularidad de estos micros radica en su alta disponibilidad en el mercado y bajo precio.Por otro lado, se han desarrollado una serie de herramientas de bajo costo por parte de terceros (empresas, profesionales y aficionados), como son programadores, software, etc., que facilitan el uso y programacin de estos dispositivos. Figura 3. Diferentes tipos de pic dependiendo a familia y gamaPICKIT3 PICkit 3permite la depuracin y la programacin de microcontroladores PIC y dsPIC mediante la interfaz de usuario MPLAB de desarrollo integrado (IDE). PICkit 3 es conectado por medio de una interfaz USB de velocidad mxima y un conector de depuracin (RJ-11) de microchip (compatible con MPLAB ICD 2, 3 de CIE de MPLAB y and ROYAL(REAL) MPLAB HOISTS). Figura 4. Pickit3PICKIT2El programador PicKit2, es una herramienta de programacin para desarrollo de bajo costo. Es capaz de programar la mayora de los microcontroladores y memorias seriales EEPROM de Microchip. Figura 5. Pickit 2 clone

5. PROCEDIMIENTO

Figura 6. Conexiones al PIC16F84AUtilizando el circuito bsico de la figura 6, implemente los diseos de los puntos 1 al 6 en donde se centra el concepto del uso de puertos; configure segn cada caso planteado:5.1. Utilice los 8 bits del puerto B como salidas a diodos LED y 3 bits del puerto A como entradas de pulsadores; de esta forma cree un programa que decodifique las entradas del pulsador de tal forma que se cumpla que por cada combinacin de las entradas se encienda un diodo LED que defina el nmero en decimal.

TABLA 1Requisitos del que debe cumplir el programa 1

5.2. Para el mismo ejercicio anterior, efecte la programacin del C para que ahora se cumplan las condiciones expresadas en la tabla 2:TABLA 2Requisitos del que debe cumplir el programa 2

5.3. Para el mismo ejercicio anterior, efecte la programacin del C para que ahora se cumplan las condiciones expresadas en la tabla 3:TABLA 3Requisitos que debe cumplir el programa 3

5.4. Utilizando el mismo programa del primer ejercicio, desconecte todos los LED del puerto B; conecte dos PIC16F84A entre sus puertos B y genere un programa en este segundo C que utilice el puerto B como entrada el puerto A como salidas; las salidas se conectarn a 4 LEDs de tal forma que se encienda nicamente el LED del segundo C que corresponda al pulsador oprimido en el primer C

5.5 Sin necesidad de pulsadores, configure todos los pines de los puertos A y B como salidas conectando LEDs; disee un sistema generador de ciclos (utilice el set de instrucciones del PIC segn el datasheet) que permita, con retardos de 1 segundo generar la secuencia de desplazamiento de luces mostrada en la tabla 4:TABLA 4Secuencia de desplazamiento de luces para el punto 5

a) Realice el desplazamiento de la luz en los diodos LED generando los cdigos hexadecimales correspondientes a cada etapa sin ayuda de instrucciones de corrimiento de registros.b) Realice el desplazamiento de la luz en los diodos LED utilizando instrucciones de corrimiento de bit (ver el set de instrucciones y determinar el los tems adecuados).Trabajo ascensor Disee un prototipo de ascensor de 4 pisos utilizando RA0 y RA1 para excitar un puente de transistores que permita la inversin de giro de un motor DC (entre 6 y 12 voltios); RA2 y RA3 se utilizarn para encender diodos LED que indiquen la direccin del ascensor (arriba- abajo); RA4 y RB0 sern los pulsadores de seleccin de piso y de RB1 a RB7 para colocar un display 7 segmentos que muestre el piso a llegar. Se supone que la transicin entre piso y piso es de 15 segundos.El dispositivo debe permitir la seleccin de piso antes de iniciar el movimiento del motor; una vez se termine la seleccin, el motor debe empezar a girar 20 segundos despus y debe detenerse segn el nmero de pisos que haya entre el inicio y el seleccionado. La seleccin de piso no podr sobre pasar el nivel 1 o el nivel 5 por lo que tocar seleccionar piso desde el otro pulsador.

6. DESARROLLO Y RESULTADOS DE LA PRCTICA

6.1. A partir de los conocimientos adquiridos sobre la estructura, comportamiento, desempeo y funcionamiento del PIC16F84A y tomando como referencia la hoja de especificaciones del mismo para trabajar de forma adecuada y aprovechar las facilidades y virtudes de este microcontrolador, se procede a disear un cdigo que cumpla las condiciones de funcionamiento de la tabla 1, de tal forma que se va a utilizar los 8 bits del puerto B como salidas a diodos LED y 3 bits del puerto A como entradas de pulsadores, de tal forma que decodifique las entradas del pulsador de tal forma que se cumpla que por cada combinacin 23 de las entradas se encienda un diodo LED que defina el nmero en decimal. A continuacin se muestra cdigo en Assembler donde se explica cada paso.

Como se observa en el cdigo se maneja lgica negada para las salidas que para este caso es el puerto B y lgica no negada para las entradas del puerto A, de tal forma que el microcontrolador maneje las tierras de los leds, y as el circuito no pida corriente al microcontrolador y no presente errores en la implementacin fisca del circuito.6.2. Para este punto se procede a disear un cdigo que cumpla las condiciones de funcionamiento de la tabla 2, de tal forma que se va a utilizar los 8 bits del puerto B como salidas a diodos LED y 3 bits del puerto A como entradas de pulsadores, A continuacin se muestra cdigo en Assembler donde se explica cada paso.

Como se observa en el cdigo se maneja lgica negada para las salidas que para este caso es el puerto B y lgica no negada para las entradas del puerto A, de tal forma que el microcontrolador maneje las tierras de los leds, y as el circuito no pida corriente al microcontrolador y no presente errores en la implementacin fisca del circuito.

6.3. Para este punto se procede a disear un cdigo que cumpla las condiciones de funcionamiento de la tabla 3, de tal forma que se va a utilizar los 8 bits del puerto B como salidas a diodos LED y 3 bits del puerto A como entradas de pulsadores, A continuacin en la figura 8 se muestra cdigo en Assembler donde se explica cada paso.

Como se observa en el cdigo se maneja lgica negada para las salidas que para este caso es el puerto B y lgica no negada para las entradas del puerto A, de tal forma que el microcontrolador maneje las tierras de los leds, y as el circuito no pida corriente al microcontrolador y no presente errores en la implementacin fisca del circuito.Una vez se tiene los cdigos compilados y funcionando, se procede a realizarse la simulacin en el Software Proteus 8 Professional, con una frecuencia de 4Mhz para el microcontrolador, de tal forma que en la figura 7 se muestra los resultados de la implementacin.Figura 7. Simulacin del circuito a implementar para el punto 1,2 y 3.Una vez probado el correcto funcionamiento en la simulacin se realiza la implementacin en la protoboard, y se programa el PIC16f84A. Los resultados la implantacin del circuito de la figura 7 se muestra en la figura 8.

Figura 8. Implementacin del circuito a implementar para el punto 1,2 y 3.

6.4. Ahora se interconectan dos PIC16F84A entre sus puertos B, de manera que se use el mismo montaje del primer punto, solo que esta vez sin los LEDs, ya que a travs de los puertos B, se va a interconectar otro PIC16F84A, en el cual se realiza un nuevo programa en el que se deja el Puerto B como entrada y el Puerto A como salidas en los que se conectan 4 LEDs, encendindose el led conectado en el segundo PIC que corresponda respectivamente al pulsador oprimido en el primer PIC. Es decir bsicamente es como si el primer microcontrolador fuera una especie de decodificador y el segundo un codificador. Para tal fin se realiza el programa en Assembler, tal y como se muestra a continuacin, en donde se explica detalladamente cada paso.

Como se puede observar en el cdigo en el puerto a (PORTA) se utiliz lgica negada esto con el fin de que el microcontrolador no actu como fuente de alimentacin de los leds sino por el contrario acten como la tierra de estos y no presente errores o fallos por agotamiento de energa esta para esta conexin se debe tener cuidado con la sobrealimentacin de los leds ya que una corriente ingresada a los puertos de salida del microcontrolador ocasionar el dao del PIC para evitar esto se usan resistencias conectadas al PIC y a los leds como se evidencia en la figura 9.

Una vez se tiene el cdigo funcionando, se procede a realizarse la simulacin en el Software Proteus 8 Professional, en el cual se configura una frecuencia de 4MHz la simulacin se observa en la figura 9.

Figura 9. Simulacin punto 4 en el software Proteus 8 Professional.

Una vez probado el correcto funcionamiento en simulacin se realiza el montaje en la Protoboard, y se programan los dos PIC16F84A cada uno con su respectivo cdigo, se ensambla y se prueba tal y como se aprecia en la figura 10.

Figura 10. Implementacin en Protoboard para el punto 4

6.5. Para este punto se configurara el PIC de tal forma que sin necesidad de pulsadores, y con todos los pines de los puertos A y B como salidas conectadas a LEDs; se genere un retardo de 1s para la secuencia de la tabla 4.

Lo primero en realizar ser el retardo de 1s, en Assembler no hay libreras que generen estos retardos, de tal forma que se realizara un aglutinamiento de instrucciones que al sumar sus tiempos de ejecutamiento de cada una, se lograra el retardo.

Para generar un retardo se crea una variable cont1 se le asigna un numero n, posteriormente esta variable se decrementa y se pregunta si ha llegado a 0, si no ha llegado a0 entonces se vuelve a decrementar, y as sucesivamente hasta que llegue a 0 en cuyo caso es el FIN del retardo. El programa se qued perdiendo el tiempo enciclado dando vueltas n veces.

Las instrucciones que se van a usar para generar el retardo es decfz que decrementa el registro f y salta si ha llegado a 0. Es una instruccin muy til y sumamente utilizada principalmente en procesos que se repiten n nmero de veces, tales como lo son los retardos, esta instruccin dura 1us y la instruccin goto que es para redireccionar a otra etiqueta y dura 2us, la instruccin nop que dura 1us y la operacin que realiza es nula, es decir, no hace nada, de tal forma que entre esas cuatro instrucciones se sumen 4us, el retardo mximo que se puede generar con solo una variable seria apenas mayor de 1ms. Para generar retardos mucho mayores necesitamos usar bucles anidados. Estos bucles anidados consisten generar un Retardo base que se repetir n veces, el retardo base se hace de la manera anteriormente mencionada usando un bucle que llamamos bucle interno, y al repetir este retardo base n veces estamos formando un bucle mayor o bucle externo.

Para el retardo de 1s se tendrn tres variables que conformen los bucles anidados, cont1, cont2 y cont3 que cumplirn la frmula de retardos por bucles anidados donde el mximo de cada variable ser 255. Por esta razn se necesita esta cantidad de variables porque solo una variable no alcanza a generar 1s, pero si alcanza 1ms

De tal forma que se tendr que cont1 vale 250, cont2 vale 100 y cont3 vale 10, al realizar la operacin se tiene.

Entonces el cdigo en Assembler que se utilizara para la parte a de este punto para generar la secuencia ser el siguiente.

a) Teniendo en cuenta el cdigo del retardo se procede a realizar el cdigo en Assembler, tal y como se muestra a continuacin, en donde se explica detalladamente cada paso.

b) En este punto se trabajara la secuencia anterior dada por la tabla 4 mediante el uso del set de instrucciones del PIC16F84A, de tal forma que se usara RLF que rota f a la izquierda a travs del carry y RRF que rota f a la derecha a travs del carry, lo que se busca al emplear las instrucciones de corrimiento es poder simplificar y hacer ms eficiente el cdigo del apndice a, Entonces el cdigo en Assembler que se utilizara para la parte b de este punto para generar la secuencia ser el siguiente.

Como se puede observar en el cdigo en el puerto a (PORTA) y en el puerto b (PORTB) se utiliz lgica negada esto con el fin de que el microcontrolador no actu como fuente de alimentacin de los leds sino por el contrario acten como la tierra de estos y no presente errores o fallos por agotamiento de energa esta para esta conexin se debe tener cuidado con la sobrealimentacin de los leds ya que una corriente ingresada a los puertos de salida del microcontrolador ocasionar el dao del PIC para evitar esto se usan resistencias conectadas al PIC y a los leds como se evidencia en la figura 11. Una vez se tiene el cdigo funcionando, se procede a realizarse la simulacin en el Software Proteus 8 Professional, en el cual se configura una frecuencia de 4MHz la simulacin se observa en la figura 11.

Figura 11. Simulacin punto 5.a en el software Proteus 8 Professional.Una vez probado el correcto funcionamiento en la simulacin se realiza la implementacin en la protoboard, y se programa el PIC16f84A. Los resultados la implantacin del circuito de la figura 11 se muestra en la figura 12.

Figura 12. Implementacin en Protoboard para el punto 5.6.6 Para el ascensor propuesto en el laboratorio se plantea que cada vez que el microcontrolador se inicie se supones que se encuentra en el piso 1, se guardan dos datos de la memoria: el piso actual y el piso siguiente, esto con el fin de hacer una resta entre ambos valores y al testear el carry si es uno o cero se sabe hacia que direccin debe ir el motor, con esto se excitara el mismo con un valor binario para RB0 y RB1 de 10 o 01 dependiendo de si se va hacia arriba y hacia abajo y la misma combinacin se dara para los leds indicativos asignados a los pines RB2 y RB3. Para el retardo se hace uno de 15 segundos y se toma el nmero resultante de la resta y con el comando de decfsz se hace un ciclo como en los retardos para determinar el tiempo en que se va a mover el motor. Para el display 7 segmentos conectado entre RB1 y RB7 se plantea un contador que cuente cada 15 segundos con el fin de saber en qu piso se encuentra el usuario. En la figura 13 se encuentra el modelo propuesto para en ascensor en el Software Proteus 8 Professional.Figura 13. Esquema del ascensorDe tal forma que se tiene un puente H encapsulado en el integrado L293D, donde se conectara el motor de 6 a 12 voltios entre los pines 6 y 3 del encapsulado, Las entradas son compatibles con niveles de lgica TTL. Para lograr esto, incluso cuando se manejen motores de voltajes no compatibles con los niveles TTL, el chip tiene patas de alimentacin separadas para la lgica (VCC1, que debe ser de 5V) y para la alimentacin de la carga (VCC2, que puede ser entre 6V y 12V para este caso). Las entradas digitales que se usaran son los pines 2 y 7 del puente H, donde el pin 2 se conecta al RB0 y el pin 7 se conecta al RB1 del PIC para hacer el control de giro de motor planteado, si RA0 est en alto yRA1 est en bajo el motor girara a la derecha, y si RA0 est en bajo y RA1 est en alto el motor girar a la derecha. Los Leds estn conectados a los pines RB2 y RB3, y alimentados por vcc, los pulsadores manejaran lgica negada y estarn conectados entre RA4, RB0 y tierra, el display ser de catado comn y estar conectado de RB1 a RB7, las conexiones de alimentacin de los diferentes componentes externos al PIC sern alimentados a vcc, para evitar que pidan corriente a este, es decir el PIC controlar las tierras de estos componentes, para una mejor funcionamiento del circuito planteado y evitar el dao del microcontrolador.

7. CONCLUSIONES

La lgica de programacin depende del programador y difiere en gran medida la lgica de un diseador a otro, es as como de un solo problema se pueden tener mltiples soluciones y por diferentes mtodos, unos ms complejos que otros pero que cumplirn la misma funcin, tal vez algunas soluciones sean ms rpidas o se ejecuten en menor tiempo.

Para solucionar cada problema planteado se toman apartes de las ideas de los desarrolladores de esta prctica as como de los conocimientos de cada persona que intervino en esta experiencia.

Las aplicaciones y usos que tienen los microcontroladores PICs se ven limitados casi solamente por la creatividad y conocimiento del desarrollador.

Dependiendo la gama y familia del PIC empleado se puede usar en aplicaciones de mayor o menor exigencia, dependiendo de la gama del microcontrolador se tiene un repertorio diferente de instrucciones, capacidad de memoria y procesamiento.

Para cada punto se utilizan las salidas de los PICs como tierra de los leds, esto para que el pic no sea la fuente de alimentacin de los mismos y presente fallos de energa, es ms factible que otorgue ceros lgicos y la otra parte de conexin del led a Vcc igual a 5V de esta forma cuando la salida del PIC este en alto el led no encender ya que la fuente externa siempre estar otorgando un voltaje al otro extremo del led y solo cuando el PIC cambie el estado de la salida se encontrara un cero tierra que permite encender el led.

Es conveniente manejar los conceptos de configuracin tanto para los PICs y para los quemadores disponibles por el usuario o en el mercado, basarse en las hojas de especificaciones y conocer una amplia gama de instrucciones para una exitosa programacin y satisfacer la necesidad planteada en primera instancia por el problema.

8. REFERENCIAS

http://www.sigmaelectronica.net/pickit-p-1311.html

http://www.electronicaestudio.com/microcontrolador.htm

Microcontroladores Fundamentos y Aplicaciones con PIC; VALDS PREZ, Fernando; PALLAS ARENY Ramon Palls. 2007

http://ww1.microchip.com/downloads/en/DeviceDoc/35007b.pdf

http://www.utp.edu.co/~eduque/arquitec/Proye84.pdf

Microcontrolador PIC16F84, Desarrollo de proyectos; PALACIOS, Enrique; RAMIRO, Fernando; LOPEZ, Lucas; Alfaomega 2a edicin. 2004.