Está en la página 1de 10

“Saber para ser”

ESCUELA SUPERIOR POLITÉCNICA DE

CHIMBORAZO

FACULTAD: INFORMÁTICA Y ELECTRÓNICA

CARRERA: ELECTRÓNICA EN CONTROL Y REDES INDUSTRIALES

“Diseño de un Dado Electrónico”

PRÁCTICA No. 1.

DATOS GENERALES

ESTUDIANTES:
- Edison Lliguilema. (1178)
- Erik Chasi. (1181)
- Xavier Amaguayo. (1200)

ASIGNATURA:
Microcontroladores.

NIVEL:
Sexto “A”.

FECHA DE ENTREGA:
05 de diciembre de 2019.
1. Resumen
Con los conocimientos aprendidos en clase y con la ayuda de conocimientos digitales en
este documento se realiza un dado electrónico implementado con la ayuda de PIC16F877A
un microcontrolador el cual es programado, con el fin de que al presionar un botón se pueda
visualizar un número no mayor a 6 al azar en un display de 7 segmentos.
1.1.Palabras claves:
- Dado Electrónico
- Microcontrolador
- Circuito Electrónico
- Cristal oscilador
2. Introducción
Los campos de los microcontroladores tienen sus principios de desarrollo en la tecnología
de los circuitos integrados, en la cual es posible almacenar miles de transistores dentro de un
solo chip. Esto fue un prerrequisito para la producción de los microprocesadores. Las
primeras computadoras fueron construidas agregando componentes externos como lo son:
memorias, puertos de salida y entrada, contadores de tiempo, entre otros. Con el crecimiento
en el desarrollo del circuito integrado fue posible hacer más grandes los encapsulados,
logrando integrar en un solo encapsulado los procesadores y periféricos.
Los 'PIC' son una familia de microcontroladores tipo RISC fabricados por Microchip
Technology Inc. y derivados del PIC1650, originalmente desarrollado por la división
de microelectrónica de General Instruments.
3. Marco Teórico
3.1.Microcontrolador
Circuito integrado digital el cual se puede usar para distintos propósitos, su particularidad
es ser reprogramable y está compuesto por una unidad central de proceso (CPU), memorias
ROM y RAM y entradas y salidas para periféricos.
Mediante instrucciones en el software del microcontrolador, es posible controlar el
hardware o dispositivos periféricos con el uso de un lenguaje acorde al dispositivo, que
permita la comunicación dentro del computador y las funciones programadas a realizarse.

Figura 1: Arquitectura de un microcontrolador.


3.2.PIC16F877A
Pertenece a la familia de microcontroladores de 8 bits, se lo considera un dispositivo
altamente eficiente debido a que se distingue por ser altamente eficiente en el uso de memoria
de datos ya que pose arquitectura Harvard, tecnología RISC y tecnología CMOS.
Este PIC posee un modo SEP de bajo consumo de energía, trabaja en un rango de
operación de 2.0 a 5.5 volteos con una alta disipación de corriente de la fuente de 25 mA,
presenta opciones de selección del oscilador con sus distintos capacitores, presenta también
un bajo consumo de potencia. A continuación, se muestra el datasheet de pines del
PIC16F877A:

Figura 2: Enumeración y nombres de pines del PIC16F877A.

3.3.Lenguaje de Máquina
Lenguaje de programación poco interactivo con el programador, pero con un fin más
allegado al circuito o computador, trabajando en términos binarios o bits, utilizando una serie
de unos y ceros.
Este lenguaje posee instrucciones sencillas que especifican los registros específicos para
operaciones, direccionamiento o control de funciones, posiciones de memoria específicas y
modos de direccionamiento usados para interpretar operandos.
3.4.Display de 7 segmentos
Dispositivo electrónico que puede representar visualmente números o algunos caracteres.
Sus valores se representan en 7 bits pero en la programación se debe tener en cuenta los 8
bits de la palabra; existen dos tipos de display de 7 segmentos, el de cátodo común y ánodo
común, la principal diferencia entre estos es lo que se conecta a su alimentación en el uno
Vcc, y en el otro GND, funcionando primero en alto y el segundo en bajo. A continuación,
se muestra el datasheet de conexiones del display
Figura 3: Datasheet del display de 7 segmentos cátodo y ánodo común.

3.5.Oscilador de Cristal de Cuarzo


Dispositivo que convierte energía de corriente continua en corriente alterna a una
determinada frecuencia con ayuda de la resonancia mecánica. Se utilizan como generadores
de frecuencia de radio y televisión, controlar el tiempo en circuitos integrados como un reloj.
Este cristal debe venir acompañado de dos capacitores en paralelo.

Figura 4: Cristal oscilador de cuarzo.

4. Diseño y desarrollo
4.1.Algoritmos de Control
Para el diseño del dado electrónico fue creado un algoritmo de control que se compone de
un ciclo o bucle “LOOP” que contiene todos los pasos para generar los números aleatorios
del dado electrónico y se muestra en la Figura 5, así mismo dentro de esta rutina se utilizó
una subrutina “DELAY” cuyo algoritmo se describe en la Figura 6.
Figura 5: Diagrama de flujo del “Dado Electrónico”.
Figura 6: Diagrama Flujo de Delay.

4.2.Diseño
Para implementar el circuito del dado electrónico se siguió el esquema que se presenta en
la Figura #, el cual está formado por un microcontrolador PIC 16F877A, un pulsador, una
resistencia de 10𝐾Ω, siete resistencias de 220Ω y un display de 7 segmentos cátodo común.

Figura 7: Simulación del “Dado Electrónico”.


5. Resultados
El programa está diseñado para que al alimentar el circuito, se inicialice en 0 en el display,
una vez que se pulse el botón, comenzarán a correr valores en orden de 1-6 en el display y se
repetirá la secuencia hasta que se deje de pulsar el botón; una vez que se deja de pulsar el
botón, el display muestra el último número que se mostró en la sucesión, después de un
periodo de tiempo el programa vuelve a empezar en 0 listo para repetir el proceso.
Para comprobar el correcto funcionamiento del circuito implementado, se conectó directo
a Vcc el pin 1(Master Clear) y se procede a alimentar el circuito con Vcc y Gnd. El dado está
programado para inicializarse en 0 como se muestra en la siguiente imagen.

Figura 8: Circuito implementado antes de pulsar el botón.

A continuación, se procede a pulsar el botón y la serie de números empieza a repetirse de


1-6 en el display hasta que se deje de pulsar el botón como se muestra en la siguiente imagen:

Figura 9: Circuito implementado mientras se pulsa el botón.

Al dejar de pulsar el botón este mostrará el último dígito en el display que se repita en la
serie de 1-6 como se muestra a continuación:
Figura 10: Circuito implementado después de soltar el botón.

Se muestra en el display el último valor que se repitió en la serie de 1-6 y por un periodo
de tiempo y se vuele a reiniciar el programa mostrando en el display 0, hasta que se vuelva a
pulsar el botón y se inicie la serie numérica en el display nuevamente.
6. Conclusiones
• Las salidas del microchip dependerán si están en alto o bajo acomodándose al
display que se va a utilizar, esto debe tenerse en cuenta en la programación al
momento de generar los números de la salida.
• El cristal debe estar de preferencia conectado a dos capacitores en paralelo
correspondientes a la frecuencia del oscilador y ambos conectados a GND.
• El Dado variará los números mientras el botón se encuentre activado, y dejará de
variar los números quedándose en el último dígito en el instante que el botón se
desactiva por un tiempo y volverá a inicializarse.
• El código debe estar acorde al microcontrolador con el que se desea trabajar,
teniendo en cuenta sus funciones especiales para empezar a asignar las variables
de los registros.
• La alimentación del circuito debe oscilar entre los 5 volteos DC.
7. Bibliografía
• Oscilador de cristal. (2019, 19 de noviembre). Wikipedia, La enciclopedia libre.
Fecha de consulta: 15:03, diciembre 4, 2019
desde https://es.wikipedia.org/w/index.php?title=Oscilador_de_cristal&oldid=1214
29223.
• Qué es un Microcontrolador. SHERLIN, Electrónica teórica y práctica. Fecha de
consulta: 22:14, diciembre 4, 2019 desde:
https://sherlin.xbot.es/microcontroladores/introduccion-a-los-
microcontroladores/que-es-un-microcontrolador
• Veloso, C. Display de 7 segmentos, ánodo y cátodo común. (2016, 9 de marzo).
ELECTRONTOOLS. Fecha de consulta: 23:20, diciembre 4, 2019 desde:
https://www.electrontools.com/Home/WP/2016/03/09/display-7-segmentos/
8. Anexos
LIST P=16F877A
#include <p16F877A.inc>
RADIX HEX
__CONFIG _FOSC_XT & _WDTE_ON & _PWRTE_OFF & _BOREN_ON & _LVP_ON & _CPD_OFF &
_WRT_OFF & _CP_OFF
PUERTOA EQU 0X05 GOTO PROS1
PUERTOD EQU 0X08 PROS1 MOVLW B'00000110';1 00000110
REG1 EQU 0X20 MOVWF PUERTOD
REG2 EQU 0X21 CALL DELAY
REG3 EQU 0X22 GOTO PROC2
org 0x0000 PROS2 MOVLW B'01011011';2 01011011
BSF STATUS,RP0 MOVWF PUERTOD
MOVLW 0X07 CALL DELAY
MOVWF ADCON1 BTFSC PORTA,0
MOVLW B'00000001' GOTO PROS4
MOVWF TRISA GOTO PROS3
MOVLW B'00000000' PROS3 MOVLW B'01011011';2 01011011
MOVWF TRISD MOVWF PUERTOD
BCF STATUS,RP0 CALL DELAY
GOTO PROS2
LOOP BTFSS PORTA,0 PROS4 MOVLW B'01001111';3 01001111
GOTO PROC1 MOVWF PUERTOD
GOTO PROC2 CALL DELAY
PROC1 MOVLW B'00111111';0 11000000 BTFSC PORTA,0
MOVWF PUERTOD GOTO PROS6
CALL DELAY GOTO PROS5
GOTO LOOP PROS5 MOVLW B'01001111';3 01001111
PROC2 MOVLW B'00000110';1 00000110 MOVWF PUERTOD
11111001
CALL DELAY
MOVWF PUERTOD
GOTO PROS4
CALL DELAY
PROS6 MOVLW B'01100110';4 01100110
BTFSC PORTA,0
MOVWF PUERTOD
GOTO PROS2
CALL DELAY MOVWF REG3
BTFSC PORTA,0 UNO DECFSZ REG3,F
GOTO PROS8 GOTO UNO
GOTO PROS7 DECFSZ REG2,F
PROS7 MOVLW B'01100110';4 01100110 GOTO DOS
MOVWF PUERTOD DECFSZ REG1,F
CALL DELAY GOTO TRES
GOTO PROS6 RETURN
PROS8 MOVLW B'01101101';5 01101101 END
MOVWF PUERTOD
CALL DELAY
BTFSC PORTA,0
GOTO PROS10
GOTO PROS9
PROS9 MOVLW B'01101101';5 01101101
MOVWF PUERTOD
CALL DELAY
GOTO PROS8
PROS10 MOVLW B'01111101';6 01111101
MOVWF PUERTOD
CALL DELAY
BTFSC PORTA,0
GOTO LOOP
GOTO PROS11
PROS11 MOVLW B'01111101';6 01111101
MOVWF PUERTOD
CALL DELAY
GOTO PROS10
DELAY MOVLW 0X30
MOVWF REG1
TRES MOVLW 0X40
MOVWF REG2
DOS MOVLW 0X10