Vous êtes sur la page 1sur 6

Práctica N°1: Configuraciones Generales

IVAN GOMEZ GONZALEZ

cgomezg1@est.ups.edu.ec
Departamento de Ingeniería Eléctrica
Universidad Politécnica Salesiana
Quito-Ecuador

Abstract—En este paper se presenta el informe de la cerrojos electrónicos, control de motores, relojes,
primera práctica de laboratorio enfocada en el diseño, alarmas, robots, entre otros. El límite es la
implementación y comprobación del funcionamiento de los
registros de estado y propósito general de un
creatividad del programador.
microcontrolador, además de la programación y
III. MICROCONTROLADOR PIC
comprobación de la configuración de lectura/escritura en
un microcontrolador pic de la serie 16F8XX. Los microcontroladores PIC son unos de los más
populares de 8-bit. Microchip tiene cientos de
Keywords— microcontroller; mnemonics assembler;
diferentes microcontroladores desde los pequeños en
status records; port configuration.
encapsulados SOT23 hasta los 84-PLCC. Ellos
I. INTRODUCCIÓN pueden correr hasta 40Mhz y ejecutar instrucciones
Un Microcontrolador es Circuito integrado o chip cada 4 ciclos de reloj.
que incluye en su interior las tres unidades Los microcontroladores PIC’s poseen arquitectura
funcionales de un ordenador: CPU, memoria y Harvard que es una arquitectura de computadora con
periféricos de entrada y salida, es decir, se trata de un pistas de almacenamiento y de señal físicamente
computador completo en un solo circuito integrado. separadas para las instrucciones y para los datos. La
Aunque sus prestaciones son limitadas, además de ubicación del registro de trabajo para los PIC’s se
dicha integración, su característica principal es su denomina W (Working Register).
alto nivel de especialización. Los
microcontroladores más utilizados son los: AVR,
ARM, MSP430 y PIC que en éste caso será el
microcontrolador que se implementará para
cualquier circuito.

II. MICROCONTROLADORES
Un microcontrolador es un circuito integrado digital
que puede ser usado para muy diversos propósitos Fig. 1 Registros de funciones especiales. Camino de
debido a que es programable. Está compuesto por los datos y registro W para el microcontrolador PIC.
una unidad central de proceso (CPU), memorias
(ROM y RAM) y líneas de entrada y salida Algunos de los aspectos positivos de trabajar con
(periféricos). Un microcontrolador tiene los mismos microcontroladores PIC’s son:
bloques de funcionamiento básicos de una  Software de desarrollo en assembler gratuito
computadora lo que permite tratarlo como un (MPLAB)
pequeño dispositivo de cómputo. Un  Se encuentra una gran gama de dispositivos
microcontrolador puede usarse para muchas con diferentes tamaños de memorias y
aplicaciones algunas de ellas son: manejo de cantidad de periféricos.
sensores, controladores, juegos, calculadoras,
agendas, avisos lumínicos, secuenciador de luces,
 Los puertos GPIO pueden entregar hasta MHz. Todo microcontrolador requiere de un circuito
20mA lo que permite manejar Leds y otros que le indique a qué velocidad debe trabajar. Este
dispositivos directamente. circuito es conocido como un oscilador de
 Hay disponibles para rangos de temperaturas frecuencia. En el caso del microcontrolador
extendidos de -40 a +125ºC PIC16F877a el pin 13 y el pin 14 son utilizados para
introducir la frecuencia de reloj.
IV. MICROCONTROLADOR PIC 16F877A
Este microcontrolador de 40 pines es uno de los más
usados en la elaboración de diferentes proyectos, el V. MARCO PROCEDIMENTAL
cual posee las siguientes características:

 Memoria de Programa de 2Kwords Para este circuito con microcontrolador, se debe


 Memoria RAM con 224 registros realizar la programación en ensamblador, en donde
 Memoria EEPROM de 128 bytes como principio se debe configurar los fusibles, luego
 Comparadores analógicos se debe indicar el tipo de PIC que se va a utilizar,
luego se configuran los puertos y a continuación se
 USART (puerto serie) compatible con
procede a crear el código de programación para
nuestro módulo FT232 para USB
lograr que el circuito trabaje a la relación de trabajo
 Oscilador interno de 4MHz, externo hasta
indicada. Para este lo que se realiza es mover los
20MHz
registros de estado para encender y apagar el led,
 2 Timer de 8bits luego se procede a utilizar la instrucción call para
 1 Timer de 16 Bits usar una rutina de RETARDO la cual se la llama una
 32 instrucciones sola vez ya que se quiere que el tiempo en alto sea
 Módulo de PWM del 10%; luego se procede a apagar los leds y se
 Módulo de CCP llama al RETARDO nueve veces, de esta manera se
 Módulo ADC de 10 bits logra mantener los leds apagados el 90% del ciclo
restante del período.

Fig. 2 Aspecto físico del PIC 16F877A

Fig. 4 Configuración de los fusibles,


declaración de variables configuración de los
puertos a utilizar

Fig. 3 Distribución de pines del PIC


16F877A

Este PIC se alimenta con un voltaje de corriente


continua comprendido entre 2,5 V y 5,5 V, y
consumen menos de 2 mA cuando trabajan a 5 V y 4
Fig. 5 Instrucciones para apagar y encender
los LEDS

Fig. 7 Simulación del circuito diseñado

Fig. 6 Configuración del retardo y fin del


programa

Fig. 8 Forma de onda obtenida

Resultados Obtenidos:

Ciclo de trabajo 10.60 %


medido
Fig. 7 Diseño del circuito a implementar 333.3 mHz
Frecuencia
Período 3 seg
Como se puede observar, los leds se deberán Tiempo en alto 0.3 seg
conectar a los pines del puerto D, ya que la Tiempo en bajo 2.7 seg
programación realizada se hizo con el puerto D para
poner en 1L o 0L para lograr encender o apagar los 𝛿(𝑡𝑒ó𝑟𝑖𝑐𝑜) − 𝛿(𝑒𝑥𝑝𝑒𝑟𝑖𝑚𝑒𝑛𝑡𝑎𝑙)
𝑬𝒓𝒓𝒐𝒓 = | | ∗ 100%
4 LEDS. Para quemar el programa que se realizó en 𝛿(𝑡𝑒ó𝑟𝑖𝑐𝑜)
el MPLAB, se deberá exportar el archivo .hex del
10 − 10.6
MPLAB, luego se conectará el PICKIT 3 con el 𝑬𝒓𝒓𝒐𝒓 = | | ∗ 100%
10
adaptador con el PIC correctamente colocado para 𝑬𝒓𝒓𝒐𝒓 = 6 %
que de esta manera en el computador se pueda cargar
el programa al PIC desde el programa PICKIT 3 para Como se puede observar el ciclo de trabajo que se
luego continuar con la implementación del circuito obtuvo luego de la implementación del circuito fue
completo. del 10.6% obteniéndose un error del 6% con respecto
al ciclo de trabajo teórico, sin embargo el error está
dentro de la tolerancia aceptable del 10%.

2.- Diseñar un circuito en el microcontrolador que


encienda y apague 5 leds con una relación de
trabajo dada y que al colocar un uno en dos bit de Fig. 10 Verificación del estado lógico de las
cualquier puerto cambie la relación de trabajo entradas del puerto y configuración del primer
δ1= 10% y δ2=75% retardo para el ciclo de trabajo 1

Para el diseño de este circuito se utilizará dos bits del


puerto B para conectar las entradas con el dip-switch,
en donde 0L y 0L o 1L y 0L o 0L y 1L se deberá
cumplir la relación de trabajo δ1= 10% y solo si los
dos bits se encuentran en 1L, el ciclo de trabajo
cambiara a δ2= 75%. Para lograr cumplir con estas
condiciones se usará la instrucción “btfss” la cual
verifica que el bit del puerto o variable especificado
se encuentre en 1 lógico (alrededor de los 5v), si la
respuesta es cierta entonces se salta la siguiente
instrucción, mientras que si no lo es, realiza la
siguiente instrucción. En base a esta instrucción se
podrá conocer el nivel lógico de las entradas del
puerto B y con ello se procede a configurar los ciclos Fig. 11 Configuración del segundo retardo para el
de trabajo especificados. ciclo de trabajo 2, y fin del programa

Para quemar el programa que se realizó en el


MPLAB, se deberá exportar el archivo .hex del
MPLAB, luego se conectará el PICKIT 3 con el
adaptador con el PIC correctamente colocado para
que de esta manera en el computador se pueda cargar
el programa al PIC desde el programa PICKIT 3 para
luego continuar con la implementación del circuito
completo.

Fig. 9 Configuración de los fusibles, declaración de


variables configuración de los puertos a utilizar

Fig. 12 Diseño del circuito a implementar


Fig. 13 Simulación del circuito diseñado 𝛿(𝑡𝑒ó𝑟𝑖𝑐𝑜) − 𝛿(𝑒𝑥𝑝𝑒𝑟𝑖𝑚𝑒𝑛𝑡𝑎𝑙)
𝑬𝒓𝒓𝒐𝒓 = | | ∗ 100%
𝛿(𝑡𝑒ó𝑟𝑖𝑐𝑜)
75 − 79.67
𝑬𝒓𝒓𝒐𝒓 = | | ∗ 100%
75
𝑬𝒓𝒓𝒐𝒓 = 6.22 %
Los errores obtenidos para ambos ciclos de trabajo al
que debía funcionar están dentro de una tolerancia
aceptable, demostrando que el circuito que se
implementó funciona y responde de una correcta
forma ante los ciclos de trabajo que se deseaba
obtener.
VI. CONCLUSIONES
Fig. 14 Forma de onda obtenida para δ1= 10%
-Se pudo observar que para lograr encender y apagar
los leds se debió usar principalmente los
mnemónicos movlw y movwf para mover los
registros para cambiar los estados de las salidas para
enviar un 1L o 0L ya sea para encender y apagar el
led, mientras que para lograr retardos se debe
ejecutar instrucciones en que el PIC se demore los
ciclos de máquina necesarios para cumplir con los
tiempos necesarios de alto o bajo según el ciclo de
trabajo que se desee.

-En base a la práctica realizada, se logró entender de


mejor manera el uso de algunos mnemónicos en
Fig. 15 Forma de onda obtenida para δ2= 75% assembler para la configuración de puertos, mover
registros y crear rutinas para realizar retardos a
Resultados Obtenidos: conveniencia, y de esta manera aprovechar las
entradas y salidas del microcontrolador PIC
 Para δ1=10% 16F877A que en este caso fue para encender y apagar
Ciclo de trabajo δ1 10.72 %
varios leds.
Frecuencia 1.531 Hz
Período 653.16 ms
Tiempo en alto 70.02 ms 
Tiempo en bajo 583.14 ms
-El PIC 16F877A nos permite controlar los leds a
𝛿(𝑡𝑒ó𝑟𝑖𝑐𝑜) − 𝛿(𝑒𝑥𝑝𝑒𝑟𝑖𝑚𝑒𝑛𝑡𝑎𝑙) partir de los pines de entrada y salida según la
𝑬𝒓𝒓𝒐𝒓 = | | ∗ 100%
𝛿(𝑡𝑒ó𝑟𝑖𝑐𝑜)
10 − 10.72
configuración deseada, la relación de trabajo nos
𝑬𝒓𝒓𝒐𝒓 = |
10
| ∗ 100% ayudara al tiempo de apagado y encendido de los
𝑬𝒓𝒓𝒐𝒓 = 7.2 % leds.

 Para δ2=75% -Las condiciones de diseño están sujetas al


Ciclo de trabajo δ2 79.67 % programador, los acumuladores en esta práctica
Frecuencia 666.7 mHz están conectados a los registros PORTB, PORTD, al
Período 1.499 s acumulador le llegara la información de encendido y
Tiempo en alto 1.194 s apagado de los leds dicha operación queda grabada
Tiempo en bajo 0.305 s en el acumulador para poder operar sobre el dato de
memoria w.
VII. RECOMENDACIONES
Para implementar el circuito diseñado se recomienda
conectar los leds con los respectivos pines del puerto
con el que se programó.

Para lograr que el circuito funcione en el protoboard


se recomienda añadir en el código de compilación la
configuración de fusibles, ya que esta permitía que el
circuito funcione.

Los capacitores que se recomienda usar para


conectar con el cristal para obtener el circuito
oscilador para el microcontrolador deben ser de 22pF
del tipo cerámicos.
VIII. ANEXOS

Fig. 15 Circuito implementado con el PIC 16F877A


para los 4 leds.

Fig. 15 Circuito implementado con el PIC 16F877A


para los 5 leds.
REFERENCIAS
[1] M. Bates," PIC Microcontrollers An
Introduction to Microelectronic", Editorial Elsevier,
Tercera Edición, Inglaterra, 2011.
[2] Barra Zapata, O. (2011). Microcontroladores
PIC con programación PBC. México.

Vous aimerez peut-être aussi