Вы находитесь на странице: 1из 22

Universidad Nacional Autnoma de Mxico

Facultad de Ingeniera

Estructura y Programacin de Computadoras

Proyecto:
Programa en lenguaje ensamblador que recibe el nombre de un archivo para leer carcter a carcter y desplegarlos en un display de 7 segmentos.

Integrantes
Argueta Cortes Jairo Isacar Mendoza Galicia Fco. Javier Ramrez Mora Sandra

Junio de 2008

INDICE
PGINA

OBJETIVO 3 PLANTEMAINETO DEL PROYECTO.3 MATERIAL ...4 CONSIDERACIONES PREVIAS..6


DESCRIPCIONDEL CONECTOR FISICO

ACCESO AL PUERTO.. 7 DESARROLLO 9


MONTAJE DEL CIRCUITO DIAGRAMA DE FLUJO CODIGO EN LENGUAJE ENSAMBLADOR

RESULTADOS ..20
FOTOS Y VIDEO
2|Pgina

CONCLUSIONES .21

OBJETIVO
El objetivo de nuestro proyecto es la utilizacin y manejo de un display de siete segmentos va puerto paralelo de una computadora, dicho manejo de este hardware se tendr que lograr utilizando lenguaje ensamblador el cual hemos aprendido en el transcurso del semestre, tambin mediante ste proyecto queremos hacer notar el gran uso que puede tener el puerto paralelo de una computadora, el cual cada vez est siendo menos utilizado e incluso eliminado de las computadoras personales de hoy en da. En cuanto al funcionamiento del display de siete segmentos, se pretende utilizarlo para mostrar todas las letras posibles del alfabeto espaol, dichas letras sern ledas de un archivo y mandadas al display va el puerto paralelo, con un pequeo retardo para mejorar la visualizacin de las letras ledas. En lo que concierne a la lectura del archivo y el envo de los datos al display va el puerto paralelo, se pretender lograrlo mediante el uso del lenguaje ensamblador utilizando los recursos necesarios para lograrlo, tales como el manejo de archivos, macros, procedimientos, notacin, sintaxis y lo que es ms importante el manejo de puertos. Cabe hacer notar que entre la parte lgica y fsica de una computadora hay una relacin muy estrecha de la que haremos uso para lograr nuestro objetivo y aprovecharla tambin para mostrar los conocimientos adquiridos durante el

3|Pgina

curso de Estructura y Programacin de Computadoras para superar los contratiempos que puedan resultar durante la elaboracin del proyecto.

PLANTEAMIENTO DEL PROYECTO


DISPLAY DE 7 SEGMENTOS

Se haba planteado en el equipo el trabajar en el montaje de un circuito que usara un mnimo de componentes y proporciona un test funcional de 8 bits. Cada bit de la entrada poda ser individualmente controlado y visualizado en los LED de salida. Tomando en cuenta los diodos LED que actan en un Display, estos se alimentan nicamente con la corriente proporcionada por las propias salidas del puerto paralelo, por lo tanto se tendra que alimentar los LED y utilizar la corriente absorbida para iluminarlos, pero el conector no proporciona una seal de alimentacin (Vcc) suficiente, de modo que se necesitara una fuente externa, ante tal necesidad se pens en sustituir en los montajes anteriores el sistema de visualizacin mediante 8 diodos LED por un display numrico de 7 segmentos ms un punto decimal. El circuito resulta as ms compacto y seguro en cuanto al cuidado del puerto paralelo y por lo tanto de la tarjeta madre de nuestra computadora.

Figura 1. Ahora bien tomando en cuenta, si se trata de un display de nodo comn hay que alimentar con Vcc= +5 V las dos lneas sealadas como comunes en la figura, y es preciso poner a tierra la lnea correspondiente al segmento que se quiere iluminar. Si se trata de un display de ctodo (que sera el objeto de trabajo) comn, hay que alimentar con +5 V el segmento que se desea iluminar y poner a tierra las dos lneas comunes. As, en un display de ctodo comn, las lneas 1-8 se pueden conectar directamente a las lneas de datos del puerto (pines 2-9 del conector DB25), y las dos lneas comunes se pueden conectar a cualquiera de las patillas de tierra del conector, por ejemplo, la 25.

4|Pgina

MATERIAL

1.- Protoboard

2.-Un cable extensin de puerto paralelo (opcional).

3.-Cable plano de 14 o 16 hilos

4.- Display de 7 segmentos de ctodo comn.

5.Opcional. (1) Conector de cable plano a protoboard, (1) conector macho DB25 para cable plano.

5|Pgina

6.- Y por consiguiente la implementacin del cdigo en lenguaje ensamblador, el cual consta de leer un archivo y desplegar carcter por carcter a travs del display, tomando en cuenta que no se podra visualizar caracteres como M, X, etc.

CONSIDERACIONES PREVIAS
Hace aos, IBM dise el puerto paralelo para manejar impresoras desde su gama de microcomputadores PC/XT/AT. Un conector estndar macho de 25 pines apareca en la parte trasera del PC con el solo propsito de servir de interfaz con la impresora. El sistema operativo DOS cargado en dichos PC soporta hasta tres puertos paralelos asignados a los identificadores LPT1, LPT2 y LPT3, y cada puerto requiere tres direcciones consecutivas del espacio de E/S (entrada-salida) del procesador para seleccionar todas sus posibilidades. Desde el punto de vista del hardware, el puerto consta de un conector hembra DB25 con doce salidas latch (poseen memoria/buffer intermedio) y cinco entradas, con ocho lneas de tierra. Desde el punto de vista del software, el puerto paralelo consta de tres registros (datos, estado y control) de 8 bits cada uno, que ocupan tres direcciones de E/S (I/O) consecutivas de la arquitectura x86. La funcin normal del puerto consiste en transferir datos a una impresora mediante 8 lneas de salida de datos, usando las seales restantes como control de flujo. Sin embrago, puede ser usado como un puerto E/S de propsito general por cualquier dispositivo o aplicacin que se ajuste a sus posibilidades de entrada/salida.

Descripcin del conector fsico


La conexin del puerto paralelo al mundo exterior se realiza mediante un conector hembra DB25. Observando el conector de frente y con la parte que tiene mayor nmero de pines hacia arriba, se numera de derecha a izquierda y de arriba a abajo, del 1 al 13 (arriba) y del 14 al 25 (abajo).

6|Pgina

En este conector:

8 lneas (pines) son para salida de datos (bits de DATOS). Sus valores son nicamente modificables a travs de software, y van del pin 2 (dato 0, D0) al pin 9 (dato 7, D7). 5 lneas son de entrada de datos (bits de ESTADO), nicamente modificables a travs del hardware externo. Estos pines son: 11, 10, 12, 13 y 15, del ms al menos significativo. 4 lneas son de control (bits de CONTROL), numerados del ms significativo al menos: 17, 16, 14 y 1. Habitualmente son salidas, aunque se pueden utilizar tambin como entradas y, por tanto, se pueden modificar tanto por software como por hardware. las lneas de la 18 a la 25 son la tierra.

ACCESO ALPUERTO
7|Pgina

El puerto paralelo se identifica por su direccin de E/S (entrada/salida, I/O) base y se reconoce en sistemas MS-DOS por el nmero LPT (lp en Unix/Linux). Cuando arranca la mquina, la BIOS (Basic Input Output System) chequea direcciones especficas de E/S en busca de puertos paralelos y construye una tabla de las direcciones halladas en la posicin de memoria 40h:8h (o 0h:0408h) . Esta tabla contiene hasta tres palabras de 16 bits, cada palabra con el byte bajo primero seguido por el byte alto. Cada palabra es la direccin de E/S base del puerto paralelo (que denominaremos LPT_BASE en lo sucesivo). La primera corresponde a LPT1, la segunda a LPT2 y la tercera a LPT3. Hay que agregar que, en MS-DOS tenemos el dispositivo PRN que es un alias a uno de los dispositivos LPT (generalmente es LPT1, pero se puede cambiar con la orden MODE). Las direcciones base estndar para los puertos paralelos son:

03BCh 0378h 0278h

Checadas en este orden. La siguiente tabla muestra, como ejemplo, la memoria en un PC con dos puertos paralelo instalados en las direcciones hexadecimales 378 y 278.

Identificador Direcci DOS n LPT1 LPT2 LPT3 (no instalado) 0000:040 8/9 0000:040 A/B 0000:040 C/D

Byte bajo 78 78 00

Byte Hexadeci Decim alto mal al 03 02 00 378 278 0 888 632 0

Objeto de Estudio
Registro de datos (D) El registro de estado se halla en LPT_BASE. Se puede leer y escribir. Escribir un dato en el registro causa que dicho dato aparezca en los pines 2 a 9 del
8|Pgina

conector del puerto. Al leer el registro, se lee el ltimo dato escrito (NO lee el estado de los pines; para ello hay que usar un puerto bidireccional).

DESARROLLO

Montaje del circuito

9|Pgina

El circuito se puede montar sobre una placa tipo "protoboard" y utilizar cable plano para realizar las conexiones necesarias entre los componentes. Las entradas/salidas del circuito hacia el PC se pueden reunir en un conector DB25 macho unido a la placa por lneas de cable rgido o de cable plano. A su vez, el conector macho se puede unir directamente al conector hembra del PC mediante un cable de extensin paralelo, lo que normalmente resulta ms cmodo para acceder a la parte trasera del PC donde se sita el conector hembra. Para conectar el circuito al puerto apguese en primer lugar la computadora. Conctese el cable al puerto paralelo asegurndose que el conector est firme en su lugar. Alimntese el circuito (si procede) y por ltimo encindase la computadora. Por regla general, el circuito de restablecimiento de la computadora coloca inicialmente en las lneas de datos del puerto paralelo un valor igual a 0x0h. Por tanto, todos los diodos deben estar apagados una vez
10 | P g i n a

que la computadora ha terminado su proceso de arranque. Sin embargo, si algn diodo permanece encendido esto no indica necesariamente un fallo, y es responsabilidad del software de control que se escriba inicializarlo con un valor adecuado antes de realizar cualquier otra operacin.

Diagrama de Flujo
11 | P g i n a

INICIO

PIDE NOMBRE DEL ARCHIVO

ABREARCHIVO

LEE ARCHIVO
S i DL=1AH

FIN

DL=NUME RO

S i

DL=LETRA MAYUSCUL A

S i

DL=LETR AMINUSC ULA

S i

IMPRME: NUM/MAY/MIN

LEE ARCHIVO

Programa en Lenguaje Ensamblador


12 | P g i n a

;-----------------------------------------------------------------------------;FILE: DISPLAY.ASM ;Programa en L. ensamblador que lee un archivo y ;despliega caracter a caracter en un display de 7 segmentos de ctodo comn. . ; ;ESTRUCTURA Y PROGRAMACION DE COMPUTADORAS ;GRUPO: 1 ; ;INTEGRANTES: ;ARGUET A CORTES JAIRO I. ;GALICIA MENDOZA FCO. JAIVER ;RAMIREZ MORA SANDRA ;-----------------------------------------------------------------------------.MODEL SMALL .STACK .DATA ;Directiva, define el tamao en memoria ;Asigana tamao al segmento de Pila ;Reserva un espacio para DS

; _3 ; 2 | _1 | 4 ; 5|_ |7 ; 6 8 ; DEclaracion de los segmentos para imprimir en display ; NUMERACION ; NOMBRE HEX. SEGMENTOS BIN. CERO EQU 7EH ; ,7,6,5,4,3,2, ,: 01111110B UNO EQU 48H ; ,7, , ,4, , , : 01001000B DOS EQU 3DH ; , ,6,5,4,3, ,1: 00111101B TRES EQU 6DH ; ,7,6, ,4,3, ,1: 01101101B CUATRO EQU 4BH ; ,7, , ,4, ,2,1: 01001011B CINCO EQU 67H ; ,7,6, , ,3,2,1: 01100111B SEIS EQU 77H ; ,7,6,5, ,3,2,1: 01110111B SIETE EQU 4EH ; ,7, , ,4,3,2,,: 01001110B OCHO EQU 7FH ; ,7,6,5,4,3,2,1: 01111111B NUEVE EQU 6FH ; ,7,6, ,4,3,2,1: 01101111B PUNTO EQU 80H ; 8, , , , , , ,,: 10000000B APAGADO EQU 0H ; , , , , , ,,,,: 00000000B ; ABECEDARIO MAYUSCULAS AM EQU 5FH ; ,7,,5,4,3,2,1: 01011111B BM EQU 7FH ; ,7,6,5,4,3,2,1: 01111111B CM EQU 36H ; ,,6,5,,3,2,,: 00110110B EM EQU 37H ; ,,6,5,,3,2,1: 00110111B FM EQU 17H ; ,,,5,,3,2,1: 00010111B GM EQU 77H ; ,7,6,5,,3,2,1: 01110111B HM EQU 5BH ; ,7,,5,4,,2,1: 01011011B IM EQU 48H ; ,7,,,4,,,,: 01001000B JM EQU 68H ; ,7,6,,4,,,,: 01101000B LM EQU 32H ; ,,6,5,,,2,,: 00110010B OM EQU 7EH ; ,7,6,5,4,3,2,,: 01111110B PM EQU 1FH ; ,,,5,4,3,2,1: 00011111B SM EQU 67H ; ,7,6,,,3,2,1: 01100111B TM EQU 16H ; ,,,5,,3,2,,: 00010110B UM EQU 7AH ; ,7,6,5,4,,2,,: 01111010B ; ABECEDARIO MINUSCULAS AMIN EQU 7DH ; ,7,6,5,4,3,,1:

01111101B 13 | P g i n a

BMIN CMIN DMIN EMIN GMIN HMIN IMIN LMIN NMIN OMIN RMIN UMIN

EQU 73H EQU 31H EQU 79H EQU 3FH EQU 6FH EQU 53H EQU 40H EQU 12H EQU 51H EQU 71H EQU 11H EQU 70H

; ; ; ; ; ; ; ; ; ; ; ;

,7,6,5,,,2,1: 01110011B ,,6,5,,,,1: 00110001B ,7,6,5,4,,,1: 01111001B ,,6,5,4,3,2,1: 00111111B ,7,6,,4,3,2,1: 01101111B ,7,,5,,,2,1: 01010011B ,7,,,,,,,: 01000000B ,,,5,,,2,,: 00010010B ,7,,5,,,,1: 01010001B ,7,6,5,,,,1: 01110001B ,,,5,,,,1: 00010001B ,7,6,5,,,,,: 01110000B

NOMARCH DB ? ; A guardar nombre del archivo HANDLE DW ? ; Manipulador NOMBRE DB 'NOMBRE DEL ARCHIVO A LEER:',10D,13D,'$' OEMSG DB 'NO SE PUEDE ABRIR$' RFMSG DB 'NO SE PUEDE LEER$' CFMSG DB 'NO SE PUEDE CERRAR$' FBUFF DB ? B DB ? .CODE DESP MACRO A ;Macro que despliega caracter en display MOV DX,378H ;Direccion del puerto paralelO en DX MOV AL,A ;Se posiciona en AL lo que se va enviar OUT DX,AL ;Envio de datos a trves OUT CALL DELAY ;Temporizador ENDM ;Fin de macro

INICIO: ;Define etiqueta de inicio MOV AX,@DATA ;Referencia al registro de datos MOV DS,AX ;Pasa de AX a DS CALL PIDE ;Llamada al proceso para pedir nombre del archivo JC FIN ;En caso de no poder pedir nombre salta a la etiqueta FIN CALL ABREARCH ;Llamada al proceso para abrir archivo JC FIN ;En caso de no poderse abrir salta a la etiqueta FIN CALL LEEARCH ;Llamada al preoceso para leer archivo JC FIN ;En caso de no poderse leer salta a la etiqueta FIN CALL CIERRARCH ;Llamada al preoceso para cerrar archivo JC FIN ;En caso de no poderse cerrar salta a la etiqueta FIN FIN: MOV AH,4CH INT 21H DELAY PROC MOV CX,54C0H D1: PUSH CX D2: LOOP D2 POP CX LOOP D1 RET DELAY ENDP

;Interrupcion, devuelve el control al usuario

;Temporizador ;4FCOH

14 | P g i n a

PIDE PROC ;Proceso que pide el nombre del archivo a leer LEA DX,NOMBRE ;Pasa a DX la direccion efectica del la cadena a imprimir MOV AH,9H ;Mensaje que solicita ingresar el nombre del archivo a leer INT 21H MOV SI,0 ;Inicializa SI NEXT: MOV AH,1H ;Entrdada por teclado INT 21H MOV NOMARCH[SI],AL;Guarda caracter a caracter en la variable NOMARCH INC SI ;Incrementa SI CMP AL,13D ;Compara si AL es igual a [ENTER] 13D JNE NEXT ;Si no es igual se repite el ciclo NEXT DEC SI ;Decrementa SI MOV NOMARCH[SI],0 ;Implementacion de cadena ASCII Z RET ;Regresa a donde fue llamado el proceso PIDE ENDP ;Fin de proceso PIDE

ABREARCH PROC ;Proceso que realiza la apertura del archivo MOV AH,3DH ;Abre archivo. DS:DX;apunta al archivo.AL=0 (slo lectura) ;1 (slo escritura) 2 (escritura/lectura) LEA DX,NOMARCH ;Da la direccion efecctia del archivo MOV AL,0 ;Atributo del archivo: 0 = Archivo de slo lectura INT 21H JC ERRORABR ;Salto en caso de no poderse abrir MOV HANDLE,AX ;Uso del manipulador para guardar las propiedades del archivo RET ;Regresa el control a donde fue llamdo el proceso ERRORABR: LEA DX,OEMSG ;Pasa a DX la direccion efectica del la cadena a imprimir MOV AH,9H ;Mensage de error de apertura INT 21H RET ;Regresa a donde fue llamado el proceso ABREARCH ENDP ;Fin del proceso ABREARCH

LEEARCH PROC

;Proceso que realiza la lectura de archivo especificado

MOV AH,3FH ;Lectura desde archivo. BX:Manejador de archivo ;CX: numero de bytes a leer ;DS=DX=buffer a ser cargado AX:numero de bytes leidos MOV BX,HANDLE ;Manejador de archivo LEA DX,FBUFF ;Buffer a ser cragado MOV CX,1 ;Numro de bytes a leer INT 21H JC ERRORLEE ;Salto para en caso de no poderse leer CMP AX,0 ;Bytes leidos=0? JZ EOFF ;Si es igual a cero salta la etiqueta EOFF MOV DL,FBUFF ;Pasa a DL lo que hay en el bufer CMP DL,1AH ;Verifica si es fin de archivo JZ EOFF ;Si es igual salta la etiqueta EOFF MOV AH,2H INT 21H CALL CALL CALL CALL CALL ;Imprime caracteres leidos en pantalla

COMPARANUM ;Llama al Proceso COMPARA COMPARAMAY ;Llama al Proceso COMPARA COMPARAMAY2 COMPARAMIN ;Llama al Proceso COMPARA COMPARAMIN2 15 | P g i n a

JMP LEEARCH ;Repite el ciclo para pedir el siguiente caracter ERRORLEE: LEA DX,RFMSG MOV AH,9H ;Mensaje de error de lectura INT 21H EOFF: DESP APAGADO ;Lamada al MACRO DESP para apagar display RET ;Regresa a donde fue llamado el proceso LEEARCH ENDP ;Fin del proceso LEEARCH CIERRARCH PROC ;Proceso que cierra el archivo MOV AH,3EH ;Cierra manejador de archivo. BX; manejador de archivos. MOV BX,HANDLE ;Manipulador en BX INT 21H RET ;Regresa a donde fue llamado el proceso CIERRARCH ENDP ;Fin del proceso CIERRARCH COMPARANUM PROC CMP DL,'9' ;Compara si el carater que hay en DL es igual a su ;correspondiente en el abecedario o numero decimal. JE IMPRIME9 ;Si es igual Salta a la Etiqueta Correspondiente, si no ;sigue comparando CMP DL,'8' JE IMPRIME8 CMP DL,'7' JE IMPRIME7 CMP DL,'6' JE IMPRIME6 CMP DL,'5' JE IMPRIME5 CMP DL,'4' JE IMPRIME4 CMP DL,'3' JE IMPRIME3 CMP DL,'2' JE IMPRIME2 CMP DL,'1' JE IMPRIME1 CMP DL,'0' JE IMPRIME0 CMP DL,'.' JE IMPRIMEPUN RET ;Regresa a donde fue llamado el proceso,solo ;en caso de no cumplirse ninguna comparacion IMPRIME9: DESP NUEVE JMP LEEARCH IMPRIME8: DESP OCHO JMP LEEARCH IMPRIME7: DESP SIETE JMP LEEARCH IMPRIME6: DESP SEIS JMP LEEARCH IMPRIME5: DESP CINCO JMP LEEARCH

;Llamada al MACRO DESP para imprimir caracter en el dispaly ;Salata para leer nuevo caracter

16 | P g i n a

IMPRIME4: DESP CUATRO JMP LEEARCH IMPRIME3: DESP TRES JMP LEEARCH IMPRIME2: DESP DOS JMP LEEARCH IMPRIME1: DESP UNO JMP LEEARCH IMPRIME0: DESP CERO JMP LEEARCH IMPRIMEPUN: DESP PUNTO JMP LEEARCH COMPARANUM ENDP COMPARAMAY PROC CMP DL,'A' JE IMPRIMEA CMP DL,'B' JE IMPRIMEB CMP DL,'C' JE IMPRIMEC CMP DL,'E' JE IMPRIMEE CMP DL,'F' JE IMPRIMEF CMP DL,'G' JE IMPRIMEG CMP DL,'H' JE IMPRIMEH CMP DL,'I' JE IMPRIMEI CMP DL,'J' JE IMPRIMEJ CMP DL,'L' JE IMPRIMEL CMP DL,'O' JE IMPRIMEO RET IMPRIMEA: DESP AM JMP LEEARCH IMPRIMEB: DESP BM JMP LEEARCH IMPRIMEC: DESP CM JMP LEEARCH IMPRIMEE: DESP EM JMP LEEARCH IMPRIMEF: DESP FM JMP LEEARCH 17 | P g i n a

IMPRIMEG: DESP GM JMP LEEARCH IMPRIMEH: DESP HM JMP LEEARCH IMPRIMEI: DESP IM JMP LEEARCH IMPRIMEJ: DESP JM JMP LEEARCH IMPRIMEL: DESP LM JMP LEEARCH IMPRIMEO: DESP OM JMP LEEARCH

COMPARAMAY ENDP COMPARAMAY2 PROC CMP DL,'P' JE IMPRIMEP CMP DL,'S' JE IMPRIMES CMP DL,'T' JE IMPRIMET CMP DL,'U' JE IMPRIMEU RET IMPRIMEP: DESP PM JMP LEEARCH IMPRIMES: DESP SM JMP LEEARCH IMPRIMET: DESP TM JMP LEEARCH IMPRIMEU: DESP UM JMP LEEARCH COMPARAMAY2 ENDP COMPARAMIN PROC CMP DL,'a' JE IMPRIMEam CMP DL,'b' JE IMPRIMEbm CMP DL,'c' JE IMPRIMEcm CMP DL,'d' JE IMPRIMEdm CMP DL,'e' JE IMPRIMEem CMP DL,'g' JE IMPRIMEgm 18 | P g i n a

CMP DL,'h' JE IMPRIMEhm CMP DL,'i' JE IMPRIMEim CMP DL,'l' JE IMPRIMElm CMP DL,'n' JE IMPRIMEnm CMP DL,'o' JE IMPRIMEom

RET IMPRIMEam: DESP AMIN JMP LEEARCH IMPRIMEbm: DESP BMIN JMP LEEARCH IMPRIMEcm: DESP CMIN JMP LEEARCH IMPRIMEdm: DESP DMIN JMP LEEARCH IMPRIMEem: DESP EMIN JMP LEEARCH IMPRIMEgm: DESP GMIN JMP LEEARCH IMPRIMEhm: DESP HMIN JMP LEEARCH IMPRIMEim: DESP IMIN JMP LEEARCH IMPRIMElm: DESP LMIN JMP LEEARCH IMPRIMEnm: DESP NMIN JMP LEEARCH IMPRIMEom: DESP OMIN JMP LEEARCH

COMPARAMIN ENDP COMPARAMIN2 PROC CMP DL,'r' JE IMPRIMErm CMP DL,'u' JE IMPRIMEum RET IMPRIMEum: DESP UMIN 19 | P g i n a

JMP LEEARCH IMPRIMErm: DESP RMIN JMP LEEARCH COMPARAMIN2 ENDP

END INICIO

;Fin etiqueta

RESUSTADOS
FOTOS Y VIDEO.

Supongamos que en el archivo se encuentra la palabra HOLA. Una vez compilado y ejecutado el programa se observara lo siguiente; C:\>tasm DISPLAY.ASM C:\>tlink DISPLAY C:\>DISPLAY NOMBRE DEL ARCHIVO A LEER:
20 | P g i n a

HOLA.TXT HOLA

Esta es una lista de los caracteres que se pueden imprimir en el display: 0123456789.ABCEFGHIJLOPSTU.abcdeghilnoru...
PARA VER LOS CARATERES ANTERIORES VER EL SIGUIENTE LINK:

VIDEO DISPLAY.3gp

CONCLUSIONES
Al trabajar con un display de 7 segmentos, nos pudimos percatar de la importancia de tener un buen nivel de conocimiento en lenguaje ensamblador, ya que para la realizacin del proyecto hicimos uso de importantes conceptos del lenguaje, como fueron el manejo de archivos, macros, procedimientos, notacin, y sobre todo del manejo de puertos. Para el proyecto, tambin se requiri trabajar con la parte fsica, esta consisti en las conexiones necesarias entre la tarjeta, el display y el puerto paralelo. Durante la realizacin del proyecto, se presentaron algunos pequeos inconvenientes. Tal fue el caso de la declaracin de las letras del alfabeto, ya
21 | P g i n a

que debido a la forma del display, no fue posible implementar la declaracin para todas las letras, tanto minsculas como maysculas. En cuanto al cdigo en ensamblador, nos pudimos percatar de que al momento de hacer la comparacin entre las letras ledas del archivo y las declaradas por los segmentos, para mandarlas a imprimir en el display, no era posible hacer uso de un gran nmero de saltos, por lo cual se decidi fragmentar el procedimiento de comparacin en varios procedimientos ms pequeos que involucraran menos comparaciones. Dentro del aspecto fsico, result un poco desfavorable trabajar con el puerto paralelo, ya que algunas computadoras no lo poseen, por lo cual, fue necesario trabajar con un equipo que contara con sta caracterstica. A pesar de los inconvenientes dados, fue muy interesante trabajar con un display en el proyecto, ya que result muy productivo observar e implementar un trabajo que involucrara la parte lgica (lenguaje ensamblador) y la parte fsica (el display), ya que nos percatarnos de la gran relacin y dependencia que existe entre estas dos partes. Tambin es importante sealar que durante la realizacin este proyecto pudimos utilizar gran parte de los conocimientos adquiridos durante el curso de estructuras y programacin de computadoras, los cuales, son de gran utilidad en muchas otras reas.

22 | P g i n a

Вам также может понравиться