Está en la página 1de 14

UNIVERSIDAD MAYOR, REAL Y PONTIFICIA

DE SAN FRANCISCO XAVIER DE CHUQUISACA

FACULTAD TÉCNICA
Carrera de Electrónica

PROYECTO FINAL
MICROPROCESADORES
ELC 420

“Lectura corrediza de un Nombre


en matriz de diodos”

Docente: Ing. Edgar Ortuño

Universitarios: Cruz O. Dayber

Fecha de Presentación: ………….

Sucre - Bolivia
1. Introducción.
Como proyecto final de la materia de Microprocesadores se realizará un programa para
representar una seria de letras en la matriz de diodo 8x8 del entrenador MDA 8086. Consiste
de dar una aplicación de anuncio promocional o propaganda el cual se pueda leer en la
matriz de diodos.
El proyecto consistirá en mostrar una imagen en una matriz de diodos de 8x8 (En el
entrenador MDA 8086.
En total se mostrarán 6 figuras de un solo color (ROJO) más una fecha aún no determinada,
utilizando en la programación comandos que simulan el uso de bucles y también se usará
procedimientos cercanos.

N O M B R E

Fig. 1 representación de las letras en la matriz de diodos

2. Objetivos.
 Poner en práctica los conocimientos adquiridos durante el semestre en base
al microprocesador 8086.
 Tener la capacidad de dar solución a los inconvenientes que se puedan dar
durante el desarrollo del proyecto.
3. Desarrollo.-
A continuación, se procederá a mostrar algunos conceptos necesarios para el desarrollo de
este proyecto, el código desarrollado, la interfaz del circuito, etc.

3.1. Funcionamiento del Procesador 8086.-


El 8086 puede transferir 16 bits a la vez en el mismo bus. Y la cola de instrucciones es de 6
bytes. Las características que destacan son el bus de direcciones de 20 bits, con lo que
pueden direccionar hasta 1 Megabyte de memoria RAM, y hacer el manejo de memoria en
forma segmentada en bloques de 64K bytes. Para esto cuenta con 4 registros de segmento
de 16 bits cada uno (CS, SS, DS y ES) y con registros de 16 bits como offset (IP, SP, DI y
SI principalmente).
Este microprocesador tiene 2 procesadores conectados internamente, estos procesadores
son:
EU: Unidad de ejecución (Executivo Unit). - Se encarga de las operaciones aritméticas y
lógicas, proporciona direcciones lógicas al BIU. El registro de banderas contiene 6 banderas
de estado (que la EU manipula para indicar el estado del resultado de una operación lógica
o aritmética) y 3 banderas de control que se pueden manipular por los programas para
alterar las operaciones del procesador.
BIU: Unidad de interfaz con el Bus (Bus Interface Unit). - El BIU se adelanta a una petición
de instrucción del EU y busca más instrucciones de la memoria. Una instrucción que
transfiere el control a otra localidad el BIU limpia la cola y busca las nuevas instrucciones
desde la nueva dirección.
3.2. Interfaz del circuito.-
Para el desarrollo de este proyecto se utilizó los conocimientos aprendidos durante la
materia, por lo que la interfaz del circuito que se utilizó fue la misma del uso de la Matriz de
diodos, tomando en cuenta los mismos puertos.
A continuación, se muestran los diagramas de la interfaz del circuito y la interfaz de la matriz
de diodos.
Fig. 2 interfaz de la matriz de diodos

Fig. 3 diagrama del circuito interno de la matriz de diodos, vista de frente en el ENTRENADOR
3.3. Ejecución del programa en memoria.-
Al momento de programar definimos la dirección de memoria donde se almacenara, y por
lo tanto donde se iniciara el programa realizado, por lo tanto en el entrenador según el
programa realizado iniciaremos en el SEGMENT 0000 y OFFSET 1000. A partir de ahí cada
comando se ira leyendo dentro de la memoria.
Código del programa:

CODE SEGMENT
ASSUME CS:CODE,DS:CODE,ES:CODE,SS:CODE
;
PPIC_C EQU 1EH
PPIC EQU 1CH
PPIB EQU 1AH
PPIA EQU 18H
;
ORG 1000H
MOV AL,10000000B
OUT PPIC_C, AL
;
MOV AL, 11111111B
OUT PPIA, AL
;
L1: MOV SI, OFFSET FONT1
;
MOV BL, 80
L3: MOV BH, 30
L2: PUSH SI
CALL SCAN
POP SI
DEC BH
JNZ L2
;
ADD SI, 8
DEC BL
JNZ L3
;
JMP L1
;
;
;
SCAN PROC NEAR
MOV AH,00000001B
SCAN1: MOV AL,BYTE PTR CS:[SI]
OUT PPIB,AL
;
MOV AL,AH
OUT PPIC,AL
CALL TIMER
INC SI
CLC
ROL AH, 1
JNC SCAN1
RET
SCAN ENDP
;
TIMER: MOV CX, 0AFH
TIMER1: NOP
NOP
NOP
NOP
LOOP TIMER1
RET
;
FONT1: DB 11111111B FONT41: DB 10110101B
DB 11111111B DB 10010001B
DB 11111111B DB 11111111B
DB 11111111B DB 11000001B
DB 11111111B DB 10110111B
DB 11111111B DB 11000001B
DB 11111111B DB 11111111B
DB 11111111B DB 10000001B
; ;
FONT2: DB 11111111B FONT42: DB 10010001B
DB 11111111B DB 11111111B
DB 11111111B DB 11000001B
DB 11111111B DB 10110111B
DB 11111111B DB 11000001B
DB 11111111B DB 11111111B
DB 11111111B DB 10000001B
DB 10000001B DB 11011111B
; ;
FONT3: DB 11111111B FONT43: DB 11111111B
DB 11111111B DB 11000001B
DB 11111111B DB 10110111B
DB 11111111B DB 11000001B
DB 11111111B DB 11111111B
DB 11111111B DB 10000001B
DB 10000001B DB 11011111B
DB 10111101B DB 11101111B
; ;
FONT4: DB 11111111B FONT44: DB 11000001B
DB 11111111B DB 10110111B
DB 11111111B DB 11000001B
DB 11111111B DB 11111111B
DB 11111111B DB 10000001B
DB 10000001B DB 11011111B
DB 10111101B DB 11101111B
DB 10111101B DB 11011111B
; ;
FONT5: DB 11111111B FONT45: DB10110111B
DB 11111111B DB 11000001B
DB 11111111B DB 11111111B
DB 11111111B DB 10000001B
DB 10000001B DB 11011111B
DB 10111101B DB 11101111B
DB 10111101B DB 11011111B
DB 11111111B DB 10000001B
; ;
FONT6: DB 11111111B FONT46: DB11000001B
DB 11111111B DB 11111111B
DB 11111111B DB 10000001B
DB 10000001B DB 11011111B
DB 10111101B DB 11101111B
DB 10111101B DB 11011111B
DB 11111111B DB 10000001B
DB 10111101B DB 11111111B
; ;
FONT7: DB 11111111B FONT47: DB11111111B
DB 11111111B DB 10000001B
DB 10000001B DB 11011111B
DB 10111101B DB 11101111B
DB 10111101B DB 11011111B
DB 11111111B DB 10000001B
DB 10111101B DB 11111111B
DB 10000001B DB 10000001B
; ;
FONT8: DB 11111111B FONT48: DB 10000001B
DB 10000001B DB 11011111B
DB 10111101B DB 11101111B
DB 10111101B DB 11011111B
DB 11111111B DB 10000001B
DB 10111101B DB 11111111B
DB 10000001B DB 10000001B
DB 10111101B DB 10100101B
; ;
FONT9: DB 10000001B FONT49: DB 11011111B
DB 10111101B DB 11101111B
DB 10111101B DB 11011111B
DB 11111111B DB 10000001B
DB 10111101B DB 11111111B
DB 10000001B DB 10000001B
DB 10111101B DB 10100101B
DB 11111111B DB 10100101B
; ;
FONT10: DB10111101B FONT50: DB11101111B
DB 10111101B DB 11011111B
DB 11111111B DB 10000001B
DB 10111101B DB 11111111B
DB 10000001B DB 10000001B
DB 10111101B DB 10100101B
DB 11111111B DB 10100101B
DB 10000001B DB 11111111B
; ;
FONT11: DB10111101B FONT51: DB11011111B
DB 11111111B DB 10000001B
DB 10111101B DB 11111111B
DB 10000001B DB 10000001B
DB 10111101B DB 10100101B
DB 11111111B DB 10100101B
DB 10000001B DB 11111111B
DB 11101111B DB 10111001B
; ;
FONT12: DB11111111B FONT52: DB10000001B
DB 10111101B DB 11111111B
DB 10000001B DB 10000001B
DB 10111101B DB 10100101B
DB 11111111B DB 10100101B
DB 10000001B DB 11111111B
DB 11101111B DB 10111001B
DB 11110111B DB 10110101B ;
; ;
FONT13: DB10111101B FONT53: DB11111111B
DB 10000001B DB 10000001B
DB 10111101B DB 10100101B
DB 11111111B DB 10100101B
DB 10000001B DB 11111111B
DB 11101111B DB 10111001B
DB 11110111B DB 10110101B
DB 10000001B DB 10101101B
; ;
FONT14: DB 10000001B FONT54: DB 10000001B
DB 10111101B DB 10100101B
DB 11111111B DB 10100101B
DB 10000001B DB 11111111B
DB 11101111B DB 10111001B
DB 11110111B DB 10110101B
DB 10000001B DB 10101101B
DB 11111111B DB 10011101B
; ;
FONT15: DB 10111101B FONT55: DB 10100101B
DB 11111111B DB 10100101B
DB 10000001B DB 11111111B
DB 11101111B DB 10111001B
DB 11110111B DB 10110101B
DB 10000001B DB 10101101B
DB 11111111B DB 10011101B
DB 10111111B DB 11111111B
; ;
FONT16: DB 11111111B FONT56: DB10100101B
DB 10000001B DB 11111111B
DB 11101111B DB 10111001B
DB 11110111B DB 10110101B
DB 10000001B DB 10101101B
DB 11111111B DB 10011101B
DB 10111111B DB 11111111B
DB 10000001B DB 11111111B
; ;
FONT17: DB10000001B FONT57: DB 11111111B
DB 11101111B DB 10111001B
DB 11110111B DB 10110101B
DB 10000001B DB 10101101B
DB 11111111B DB 10011101B
DB 10111111B DB 11111111B
DB 10000001B DB 11111111B
DB 10111111B DB 11111111B
; ;
FONT18: DB11101111B FONT58: DB 10111001B
DB 11110111B DB 10110101B
DB 10000001B DB 10101101B
DB 11111111B DB 10011101B
DB 10111111B DB 11111111B
DB 10000001B DB 11111111B
DB 10111111B DB 11111111B
DB 11111111B DB 10111111B
; ;
FONT19: DB11110111B FONT59: DB10110101B
DB 10000001B DB 10101101B
DB 11111111B DB 10011101B
DB 10111111B DB 11111111B
DB 10000001B DB 11111111B
DB 10111111B DB 11111111B
DB 11111111B DB 10111111B
DB 10000001B DB 10000001B
; ;
FONT20: DB 10000001B FONT60: DB10101101B
DB 11111111B DB 10011101B
DB 10111111B DB 11111111B
DB 10000001B DB 11111111B
DB 10111111B DB 11111111B
DB 11111111B DB 10111111B
DB 10000001B DB 10000001B
DB 11100111B DB 10111111B
; ;
FONT21: DB11111111B FONT61: DB 10011101B
DB 10111111B DB 11111111B
DB 10000001B DB 11111111B
DB 10111111B DB 11111111B
DB 11111111B DB 10111111B
DB 10000001B DB 10000001B
DB 11100111B DB 10111111B
DB 10000001B DB 11111111B
; ;
FONT22: DB10111111B FONT62: DB 11111111B
DB 10000001B DB 11111111B
DB 10111111B DB 11111111B
DB 11111111B DB 10111111B
DB 10000001B DB 10000001B
DB 11100111B DB 10111111B
DB 10000001B DB 11111111B
DB 11111111B DB 10000001B
; ;
FONT23: DB 10000001B FONT63: DB11111111B
DB 10111111B DB 11111111B
DB 11111111B DB 10111111B
DB 10000001B DB 10000001B
DB 11100111B DB 10111111B
DB 10000001B DB 11111111B
DB 11111111B DB 10000001B
DB 10111101B DB 10100101B
; ;
FONT24: DB 10111111B FONT64: DB11111111B
DB 11111111B DB 10111111B
DB 10000001B DB 10000001B
DB 11100111B DB 10111111B
DB 10000001B DB 11111111B
DB 11111111B DB 10000001B
DB 10111101B DB 10100101B
DB 10000001B DB 10100101B
; ;
FONT25: DB11111111B FONT65: DB10111111B
DB 10000001B DB 10000001B
DB 11100111B DB 10111111B
DB 10000001B DB 11111111B
DB 11111111B DB 10000001B
DB 10111101B DB 10100101B
DB 10000001B DB 10100101B ;
DB 10111101B DB 11111111B
; ;
FONT26: DB10000001B FONT66: DB10000001B
DB 11100111B DB 10111111B
DB 10000001B DB 11111111B
DB 11111111B DB 10000001B
DB 10111101B DB 10100101B
DB 10000001B DB 10100101B ;
DB 10111101B DB 11111111B
DB 11111111B DB 11001111B
; ;
FONT27: DB11100111B FONT67: DB 10111111B
DB 10000001B DB 11111111B
DB 11111111B DB 10000001B
DB 10111101B DB 10100101B
DB 10000001B DB 10100101B
DB 10111101B DB 11111111B
DB 11111111B DB 11001111B
DB 11000001B DB 10000111B
; ;
FONT28: DB 10000001B FONT68: DB11111111B
DB 11111111B DB 10000001B
DB 10111101B DB 10100101B
DB 10000001B DB 10100101B
DB 10111101B DB 11111111B
DB 11111111B DB 11001111B
DB 11000001B DB 10000111B
DB 10110111B DB 10000011B
; ;
FONT29: DB11111111B FONT69: DB10000001B
DB 10111101B DB 10100101B
DB 10000001B DB 10100101B
DB 10111101B DB 11111111B
DB 11111111B DB 11001111B
DB 11000001B DB 10000111B
DB 10110111B DB 10000011B
DB 11000001B DB 11000001B
; ;
FONT30: DB 10111101B FONT70: DB 10100101B
DB 10000001B DB 10100101B
DB 10111101B DB 11111111B
DB 11111111B DB 11001111B
DB 11000001B DB 10000111B
DB 10110111B DB 10000011B
DB 11000001B DB 11000001B
DB 11111111B DB 10000011B
; ;
FONT31: DB 10000001B FONT71: DB 10100101B
DB 10111101B DB 11111111B
DB 11111111B DB 11001111B
DB 11000001B DB 10000111B
DB 10110111B DB 10000011B
DB 11000001B DB 11000001B
DB 11111111B DB 10000011B
DB 11111111B DB 10000111B
; ;
FONT32: DB10111101B FONT72: DB11111111B
DB 11111111B DB 11001111B
DB 11000001B DB 10000111B
DB 10110111B DB 10000011B
DB 11000001B DB 11000001B
DB 11111111B DB 10000011B
DB 11111111B DB 10000111B
DB 11111111B DB 11001111B
; ;
FONT33: DB11111111B FONT73: DB 11001111B
DB 11000001B DB 10000111B
DB 10110111B DB 10000011B
DB 11000001B DB 11000001B
DB 11111111B DB 10000011B
DB 11111111B DB 10000111B
DB 11111111B DB 11001111B
DB 10000001B DB 11111111B
; ;
FONT34: DB 11000001B FONT74: DB10000111B
DB 10110111B DB 10000011B
DB 11000001B DB 11000001B
DB 11111111B DB 10000011B
DB 11111111B DB 10000111B
DB 11111111B DB 11001111B
DB 10000001B DB 11111111B
DB 10111101B DB 11111111B
; ;
FONT35: DB 10110111B FONT75: DB10000011B
DB 11000001B DB 11000001B
DB 11111111B DB 10000011B
DB 11111111B DB 10000111B
DB 11111111B DB 11001111B
DB 10000001B DB 11111111B
DB 10110101B DB 11111111B
DB 10010001B DB 11111111B
; ;
FONT36: DB 11000001B FONT76: DB 11000001B
DB 11111111B DB 10000011B
DB 11111111B DB 10000111B
DB 11111111B DB 11001111B
DB 10000001B DB 11111111B
DB 10110101B DB 11111111B
DB 10010001B DB 11111111B
DB 11111111B DB 11111111B
; ;
FONT37: DB 11111111B FONT77: DB 10000011B
DB 11111111B DB 10000111B
DB 11111111B DB 11001111B
DB 10000001B DB 11111111B
DB 10110101B DB 11111111B
DB 10010001B DB 11111111B
DB 11111111B DB 11111111B
DB 11000001B DB 11111111B
; ;
FONT38: DB 11111111B FONT78: DB 10000111B
DB 11111111B DB 11001111B
DB 10000001B DB 11111111B
DB 10110101B DB 11111111B
DB 10010001B DB 11111111B
DB 11111111B DB 11111111B
DB 11000001B DB 11111111B
DB 10110111B DB 11111111B
; ;
FONT39: DB 11111111B FONT79: DB 11001111B
DB 10000001B DB 11111111B
DB 10110101B DB 11111111B
DB 10010001B DB 11111111B
DB 11111111B DB 11111111B
DB 11000001B DB 11111111B
DB 10110111B DB 11111111B
DB 11000001B DB 11111111B
; ;
FONT40: DB 10000001B CODE ENDS
DB 10110101B END
DB 10010001B
DB 11111111B
DB 11000001B
DB 10110111B
DB 11000001B
DB 11111111B
;

También podría gustarte