Está en la página 1de 5

UNIVERSIDAD AUTÓNOMA

GABRIEL RENÉ MORENO

LABORATORIO #3
VISUALIZACIÓN NUMÉRICA EN DISPLAY

NOMBRE: Hurtado Rojas Fernando José

REGISTRO: 219075689

MATERIA: RDS410 – Aplicaciones con Microprocesadores


DOCENTE: Marcio Carvajal Cordero

SANTA CRUZ – BOLIVIA


2022
OBJETIVO

Diseñar e Implementar un circuito en base al microcontrolador 89C52 que permita visualizar en tres
displays de siete segmentos los números de 0 a 999 (conteo ascendente).

MARCO TEORICO

Un display de siete segmentos consta de 10 pines, dos pines en común de alimentación, ya sea ánodo
común o cátodo común, 7 pines que corresponden a cada uno de los segmentos, y un pin que
corresponde al punto decimal. La elección del tipo de alimentación del display dependerá de la
programación que se realice, si se utiliza un display de ánodo común se usará la lógica negativa en la
programación, y si se usa un display de cátodo común se usará lógica positiva en la programación. Se
recomienda que para evitar los problemas de corriente con el microcontrolador se use lógica negativa.

Entonces si sacamos los datos por el P0, tenemos que tener en cuenta que para prender un segmento
tenemos que poner un cero lógico en la salida del bit para el caso de un display de ánodo común.

Por lo que para poder visualizar el número 1 tenemos que prender los segmentos “b“ y “c”, para eso
ponemos un cero lógico al bit correspondiente del segmento.
CIRCUITO Y SIMULACIÓN

CÓDIGO DE PROGRAMACIÓN

org 0100h
INICIO:
MOV P0,#64 ;0
ACALL DECENA
ACALL RETARDO
MOV P0,#121 ;1
ACALL DECENA
ACALL RETARDO
MOV P0,#36 ;2
ACALL DECENA
ACALL RETARDO
MOV P0,#48 ;3
ACALL DECENA
ACALL RETARDO
MOV P0,#153 ;4
ACALL DECENA
ACALL RETARDO
MOV P0,#18 ;5
ACALL DECENA
ACALL RETARDO
MOV P0,#2 ;6
ACALL DECENA
ACALL RETARDO
MOV P0,#120 ;7
ACALL DECENA
ACALL RETARDO
MOV P0,#00 ;8
ACALL DECENA
ACALL RETARDO
MOV P0,#24 ;9
ACALL DECENA
ACALL RETARDO
AJMP INICIO

DECENA:
MOV P2,#64 ;0
ACALL UNIDAD
ACALL RETARDO
MOV P2,#121 ;1
ACALL UNIDAD
ACALL RETARDO
MOV P2,#36 ;2
ACALL UNIDAD
ACALL RETARDO
MOV P2,#48 ;3
ACALL UNIDAD
ACALL RETARDO
MOV P2,#153 ;4
ACALL UNIDAD
ACALL RETARDO
MOV P2,#18 ;5
ACALL UNIDAD
ACALL RETARDO
MOV P2,#2 ;6
ACALL UNIDAD
ACALL RETARDO
MOV P2,#120 ;7
ACALL UNIDAD
ACALL RETARDO
MOV P2,#00 ;8
ACALL UNIDAD
ACALL RETARDO
MOV P2,#24 ;9
ACALL UNIDAD
RET

UNIDAD:
MOV P3,#64 ;0
ACALL RETARDO
MOV P3,#121 ;1
ACALL RETARDO
MOV P3,#36 ;2
ACALL RETARDO
MOV P3,#48 ;3
ACALL RETARDO
MOV P3,#153 ;4
ACALL RETARDO
MOV P3,#18 ;5
ACALL RETARDO
MOV P3,#2 ;6
ACALL RETARDO
MOV P3,#120 ;7
ACALL RETARDO
MOV P3,#00 ;8
ACALL RETARDO
MOV P3,#24 ;9
RET

RETARDO:
MOV R0,#15;50
BUCLE1:
MOV R1,#90
BUCLE2:
MOV R2,#74
BUCLE3:
DJNZ R2,BUCLE3
DJNZ R1,BUCLE2
DJNZ R0,BUCLE1
RET
END

CONCLUSIÓN

Podemos utilizar algoritmos repetitivos como vimos para poder crear contadores de cuantos dígitos
queramos, aunque es muy engorroso, también vamos a repasar otros tipos de algoritmos que terminan
siendo más limpios en un futuro.

También podría gustarte