Vous êtes sur la page 1sur 13

UNIVERSIDAD NACIONAL DEL ALTIPLANO ESCUELA PROFESIONAL INGENIERIA ELECTRNICA

INFORME DE PROYECTO PROYECTO: SISTEMA DE CONTROL DE TRFICO CURSO: MICROPROSESADORES Y MICOCONTROLADORES PRESENTADO POR: ANCHAPURI CHAGUA ROLANDO DOCENTE: Ing. DELGADO HUAYTA Ivn

PRESENTACIN Con el paso del tiempo las personas nos hemos visto obligadas a recurrir ms al us o de la tecnologa como medio fundamental para el desarrollo de sus actividades ta nto en el nivel domstico como en el comercial e industrial, razn por la cual a tra vs de la descripcin del trabajo elaborado denominado Sistema mnimo, pretendemos plant ear posibles soluciones a los innumerables casos que se presentan en las reas ant es mencionadas. El Sistema mnimo es en esencia un conjunto de elementos electrnicos que interactan entre s para realizar alguna tarea determinada mediante el uso de programacin para que elementos como memorias, decodificadores entre otros dispositivos lleven a cabo eficientemente su objetivo. Para el presente trabajo se utilizaron herramientas de desarrollo tales como sim uladores, as como la recopilacin de la imprescindible teora que permita comprender el funcionamiento de los dispositivos utilizados que nos permiti culminar satisfa ctoriamente los objetivos trazados.

OBJETIVOS: Ver el funcionamiento de todos los componentes en un sistema minimo. Dar aplicacin del programa assembler en un sistema minimo. Familiarzacion con el programa assembler . MARCO TEORICO: A continuacin damos una breve descripcin de los componentes que constituyen un sis tema mnimo y las herramientas utilizadas para realizar el proyecto: MICROPROCESADOR 8085 En muchos textos que tratan el tema de los microprocesadores se ha escrito sobre

las caractersticas tcnicas y funcionales de este tipo de dispositivos. No se pret ende aqu realizar una exposicin exhaustiva de dichas caractersticas, para lo cual s era ms oportuno acudir a los manuales del fabricante, sino ms bien llevar a cabo un estudio paulatino del microprocesador 8085A, y de una serie de dispositivos aso ciados (memorias, perifricos, etc.) que lleve al lector a asimilar sus estructura s bsicas y modos de funcionamiento, de manera que adquiera la base suficiente par a poder llevar a cabo un diseo con dichos componentes. A lo largo del desarrollo de este tema, adems de realizar una breve introduccin a los microprocesadores y su constitucin bsica general, pasaremos al estudio concret o del microprocesador 8085 de INTEL, del que abordaremos tanto su constitucin fsic a como su estructura funcional. Estos dos aspectos, nos harn tener una idea clara y transparente sobre dicho microprocesador. CONSTITUCIN BSICA DEL MICROPROCESADOR En la actualidad los microprocesadores estn entrando en muchos campos de la elect rnica tradicional, debido a una serie de ventajas como pueden ser: la necesidad d e emplear menos componentes, que lleva aparejado un menor volumen, menor consumo , menos conexiones y mayor fiabilidad; y la posibilidad de programar el sistema que aporta gran facilidad para simplificar diseos y minimizar los tiempos de desa rrollo. La programacin proporciona adems la posibilidad de emplear un mismo sistema para l a realizacin de tareas muy diversas.

Figura 1 CARACTERSTICAS: Tras habernos iniciado a los microprocesadores en el punto anterior de una forma generalista, pasamos ahora a iniciar el estudio del microprocesador 8085A. La r epresentacin esquemtica de sus seales o lneas de conexin exterior, pueden apreciarse en la FIG.13A, indicndose en dicha figura el sentido de accin de todas las seales q ue vendr marcado por el sentido de las flechas que las representan. Por ejemplo p odemos ver que la seal ALE es generada por el microprocesador y sale hacia el ext erior; del mismo modo la seal SID ser una seal que procedente del exterior entrar en el microprocesador para ser tratada. Figura 2 Es importante detenerse unos instantes en la observacin de esta figura y estudiar superficialmente todas las lneas que posee. Debe decirse que las seales marcadas con letra en negrita son activas con nivel lgico 0, por ejemplo la seal RD (lectur a). Como caractersticas ms importantes en el 8085 pueden destacarse: Se presenta en encapsulado dual in line de 40 patillas. El bus de datos y la parte baja del bus de direcciones estn multiplexados . En total posee un bus de direcciones de 16 bits. Direccionamiento de E/S para 256 elementos o puertos. Un acumulador de 8 bits. Seis registros bsicos de 8 bits cada uno de uso general. Estos registros pueden usarse como registros pares para el tratamiento de informacin de 16 bits. Dos registros de direcciones de 16 bits (SP y PC). Un bloque de cinco seales de interrupcin distintas con diferentes ordenes de prioridad. Dos seales que permiten la transferencia de informacin en serie (SID y SOD). Tensin de alimentacin nica de +5V. Buffers para la salida y entrada de informacin por los buses de direccion

es y datos. Generador de impulsos de reloj incorporado. En los manuales o folletos proporcionados por los fabricantes se especifican con mucho ms detalle y minuciosidad, las caractersticas y propiedades del microproces ador, incluyendo adems los diagramas de tiempo correspondientes a la ejecucin de l as instrucciones en funcin de la frecuencia del cuarzo colocado en las lneas X1 y X2. DESCRIPCIN FSICA DEL 8085 Como se ha mencionado anteriormente, este microprocesador se presenta en un enca psulado de 40 patillas cuya distribucin puede verse en la FIG.14A. A continuacin s e da una descripcin de la funcin de cada una de las patillas: Patillas 1 y 2 (X1 y X2): Permiten la generacin de las seales de reloj, me diante la utilizacin de un cristal de cuarzo, segn se ver posteriormente. Patilla 3 (RESET OUT): Seal de salida. Cuando en ella tenemos un 1, quier e decir que el microprocesador queda reinicializado. Esta seal es generada por el propio microprocesador. Patilla 4 (SOD): Salida serie. Se activa mediante la instruccin SIM. Patilla 5 (SID): Entrada serie. El dato queda cargado en el bit 7 del Ac umulador cuando se ejecuta la instruccin RIM. Patilla 6 (TRAP): Interrupcin. Cuando se activa esta patilla bien por fla nco o por nivel lgico 1, el microprocesador finaliza la instruccin que estaba ejec utando y salta a una subrutina enganchando en la direccin de memoria 0024H. Al ha cer este salto, lleva el contenido del Contador de Programa a la pila, al objeto de que cuando termine la subrutina, mediante una instruccin RET, vuelva a tomar el curso normal de su trabajo al recargar el Contador de Programa con el conteni do de la pila. Esta es la interrupcin de ms alta prioridad. Patilla 7 (RST 7.5): Interrupcin. Es enmascarable por programa. Para cons eguir esto, es necesario que se haya ejecutado la instruccin EI con posterioridad a DI y a continuacin enmascararla (o no), colocando un 0 en el bit adecuado medi ante la instruccin SIM. Esta interrupcin se activa por flanco y nos permite enganc har en la direccin 003CH. Patilla 8 (RST 6.5): Se activa por nivel 1 lgico, que debe mantenerse has ta que la peticin de interrupcin sea atendida. Es enmascarable por programa (Idem. a la anterior). Permite enganchar en la direccin 0034H. Patilla 9 (RST 5.5): Se activa por nivel 1 lgico, que debe mantenerse has ta que la peticin de interrupcin sea atendida. Es enmascarable por programa (Idem. a la anterior). Permite enganchar en la direccin 002CH. Patilla 10 (INTR): Interrupcin. Cuando en esta patilla introducimos un 1 lgico, el contador de programa no se incrementa y el 8085 busca una instruccin que entra a la CPU por el bus de datos mediante hardware externo y activa INTA que es la seal de reconocimiento. Se puede entonces presentar el cdigo de operacin de u na instruccin RST o CALL para realizar el subprograma de tratamiento de la interr upcin. La interrupcin queda autorizada o prohibida por programa (EI o DI). Queda p rohibida a continuacin de un RESET o inmediatamente despus de una interrupcin. Form a un segundo grupo de interrupciones al emplear las instrucciones RST 1,2,3,4,5, 6 y 7. INTA es la seal de reconocimiento. Las instrucciones RESTART pueden produc ir interrupciones por software, pero al activar esta patilla INTR del 8085A, si se introduce por el bus de datos el cdigo de una instruccin RST, la interrupcin se produce por hardware. Patilla 11 (INTA): Reemplaza a RD en una operacin de lectura de instruccin que sea una interrupcin. Patillas 12 a 19 (AD0 a AD7): Conforman el bus de datos/direcciones mult iplexado durante la ejecucin de una instruccin. Transporta desde el principio la p arte BAJA del bus de direcciones para a continuacin transportar los 8 bits de dat os. Este bus est en estado de ALTA IMPEDANCIA durante un HOLD o durante un HLT. E s un bus tri-estado. Patilla 20 (GND): Masa o tensin de referencia.

Patillas 21 a 28 (A8 a A15): Transporta la parte ALTA del bus de direcci ones. Est en estado de ALTA IMPEDANCIA con un HOLD o un HLT. Es un bus tri-estado . Patilla 29 (S0): Es una salida que codifica el estado del bus de datos d urante el curso del ciclo de mquina que est en ejecucin (junto con S1). Patilla 30 (ALE): Libera un impulso cada vez que el bus AD0-AD7 presenta la parte baja de una direccin. Se utiliza para diferenciar entre la parte baja d e la direccin y el dato que se presentar a continuacin. Patilla 31 (WR): Indica que el dato presente en el bus de datos debe que dar escrito en la memoria o en la E/S direccionada. Nivel bajo activo. Patilla 32 (RD): Indica que el dato presente en el bus de datos debe ser ledo de la memoria o de una E/S direccionada. Nivel bajo activo. Patilla 33 (S1): Salida que codifica el estado del bus de datos junto co n S0. Patilla 34 (IO/M): Si es un 1 indica que el microprocesador selecciona u na E/S en el caso de una instruccin IN u OUT. Si es 0 selecciona la memoria. Patilla 35 (READY): Es una entrada que indica que la memoria o E/S selec cionada por un ciclo de escritura o lectura est dispuesta a recibir o proveer el dato. Si es 0 el 8085 espera a su puesta a 1 antes de seguir su ciclo de lectura o escritura. Patilla 36 (RESET IN): Si es activada con un 0, se reinicializa el conta dor de programa a 0000H, as como la autorizacin de interrupcin. Patilla 37 (CLK OUT): Seal de salida de reloj del 8085. Tambin llamada CLK . Patilla 38 (HLDA): Si es un 1 indica que el microprocesador responde a l a demanda de espera (HOLD) y que el bus y lneas de control estn en estado de alta impedancia. Patilla 39 (HOLD): Indica que algn otro usuario esta solicitando el acces o el bus de direcciones y al bus de datos. El microprocesador termina la ejecucin del ciclo en curso, despus posiciona en estado de alta impedancia al bus AD0-AD1 5 y las lneas de control RD, WR e IO/M, sealando este paso sobre la lnea HLDA. Patilla 40 (Vcc): Tensin de alimentacin de +5V. ROM 2816 ElMicrochip.28C16de16Kelctricamenteborrablenovoltil se accede como una memoria RAM esttica para la lectura o escritura Nosotros emplearemos la EPROM 28C16, que posee una capacidad de 16Kbytes de memo ria. Su distribucin de patillas puede verse en la siguiente figura. A continuacin se describe la funcin de sus terminales: Patillas A0,... A14. Representan el bus de direcciones. Patillas D0,... D7. Representan el bus de datos. Patilla GND. Representa la tensin de referencia o masa. Patilla Vcc. Tensin de alimentacin. Patilla Vss. Entrada de programacin. Patilla (CE) . Terminal de seleccin de chip. Patilla (OE) . Terminal de lectura. Patilla (WE) .Terminal de escritura. Figura 3 Diagrama Figura4

INTERFAZ PERIFERICA PROGRAMABLE 8255 El 8255 es un dispositivo de entrada/salida de propsito general. Consiste en tres puertos paralelos de 8 bits configurables de varias maneras para transmitir o r ecibir datos a travs de ellos, usando un cierto protocolo o de forma limpia. El concepto de puerto aqu es el de un lugar a travs del cual el procesador transmi te o recibe datos. Una vez configurado el chip, el procesador puede enviarle un dato al PPI, para hacrselo llegar a un dispositivo conectado a l. El PPI mantiene el dato disponible todo el tiempo que el dispositivo necesite para leerlo y lueg o puede avisar al procesador para que le enve el siguiente. DESCRIPCIN BSICA DEL PATILLAJE CS: Seleccin del chip para configuracin. RD: Indicacin de que el procesador pretende leer del 8255 WR: Indicacin del que el procesador va a escribir en el 8255 A0-A1: Selector de registros: 0 0: selecciona el puerto A 0 1: Selecciona el puerto B 1 0: Selecciona el puerto C 1 1: Selecciona el registro de control. Reset: Limpia los registros de control y todos los puertos. TRATAMIENTO DE BUSES 74373 Como se ha visto en el tema anterior, una de las principales caractersticas que p resenta el microprocesador 8085 es poseer un bus de datos (de 8 lneas) multiplexa do con la parte baja del bus de direcciones. Este multiplexado quiere decir que en un instante determinado tendremos en las 8 lneas del bus la informacin perteneciente a una direccin y un instante ms tarde ten dremos en esas mismas lneas la informacin perteneciente a un dato. Corresponde por tanto a la circuitera externa, separar estas seales de modo apropi ado, tal que no se produzcan interferencias por informaciones errneas en el resto de los componentes del sistema. De esta forma se obtendr una separacin total entr e el bus de datos (8 bits) y el bus de direcciones (16 bits). Como sabemos el microprocesador 8085 dispone de una lnea de control o sincronizacin de nominada ALE, por medio de la cual suministra un pulso de tensin de nivel lgico 1 cuando se presenta la parte baja de una direccin en el bus AD0,...,AD7 y cuando a parece un dato la seal ALE pasa al estado lgico 0. Deberemos por tanto emplear est a seal de control para separar estas informaciones utilizando un circuito integra do que acte de cerrojo (latch) y realice la separacin fsica. El esquema de principi o responde a la figura mostrada. Mientras ALE est a nivel lgico 1, la informacin presente en las entradas del cerroj o, procedente de las lneas AD0,...,AD7 del microprocesador, pasa a las salidas, c onfigurando de este modo la parte baja de las direcciones. En el instante en que ALE pasa a nivel 0, esa informacin queda almacenada y retenida en las salidas de l cerrojo, que no cambiaran su estado mientras ALE no pase a nivel 1. Por tanto ahora puede cambiar la informacin presente en las lneas AD0,..., AD7 del microproc esador, que nos suministrar el dato oportuno, sin afectar a la parte baja de las direcciones. ESTRUCTURA LATCH 74373 Figura5

MEMORIA RAM 6116 A continuacin veremos un resumen de las distintas memorias de cada tipo: Memoria RAM dinmica: Este tipo de memoria RAM se caracteriza por almacena r los bits que representan la informacin, en forma de cargas elctricas, aprovechan do la capacidad generada en un transistor MOS que constituye la celda elemental de informacin. Sin embargo esta carga as almacenada, se va perdiendo con el tiempo, llegando a desaparecer al cabo de unos ms, debido a fugas elctricas. Es por tanto imprescindible con este tipo de memorias emplear circuitos de refresco cuya misin es leer la informacin que contiene la memoria y volver a guardarla exactamente ig ual a intervalos de tiempo prximos a 1 o 2 ms. Hay microprocesadores que incluyen un sistema de refresco para trabajar con este tipo de memorias, en caso contrar io sera preciso disear uno. Las RAM dinmicas poseen gran capacidad de memoria y son muy econmicas, suelen emplearse en sistemas que requieren mucha memoria. Memoria RAM esttica: Es la memoria que emplearemos nosotros en nuestro si stema. Esta constituida a partir de elementos flip-flop que configuran las celdi llas de informacin, es decir, cada celdilla o flip-flop representa un bit. Su con tenido permanece estable (a diferencia de las dinmicas) hasta que eliminemos la t ensin de alimentacin, momento en que perdemos toda la informacin almacenada. Si des eamos retener la informacin de la RAM, no tendremos ms alternativa, que disear un s istema de alimentacin auxiliar (con bateras por ejemplo) que sustituya a la tensin principal cuando desaparezca. Existen RAM estticas de diferente ancho de palabra, en nuestro caso solo tratarem os la RAM de 8 bits. Disponemos en el mercado de una amplia variedad de componentes RAM entre los que es posible elegir para disear un sistema. Nosotros vamos a emplear la memoria RA M 6116, que se presenta en un encapsulado de 24 patillas y podemos ver represent ada en la FIG.23A. Se trata de una memoria fabricada con tecnologa "CMOS" de bajo consumo con una capacidad de 16384 bits, es decir, 2 Kbytes para lectura/escrit ura. La descripcin de los distintos terminales es la siguiente: Patillas A0,... A10. Son el bus de direcciones. Patillas D0,... D7. Constituyen el bus de datos. Patilla GND. Es el terminal de masa o tensin de referencia. Patilla Vcc. Es el terminal de alimentacin (+5V). Patilla CS. Entrada de seleccin de componente. Patilla OE. Entrada de lectura. Patilla WE. Entrada de escritura. (Recuerde que las seales marcadas en negrita tienen nivel activo BAJO).

Para llevar a cabo la interconexin entre esta memoria y el microprocesador, debem os fijarnos en el esquema de la FIG.23B. Como podemos apreciar, las conexiones a realizar son las siguientes: Las lneas de direccin A0, A1, A2, ..., A7 son conectadas a las salidas DO0 , DO1, DO2, ..., DO7 del 8212. Las lneas de direccin A8, A9 y A10, se conectan a las lneas correspondiente s A8, A9 y A10 del bus de direcciones del microprocesador.

Los terminales D0, D1, D2, ..., D7 de la memoria RAM se conectan a las ln eas AD0, AD1, AD2, ..., AD7 del bus de datos del microprocesador, respectivament e. El terminal GND ser conectado a masa, mientras que Vcc se lleva a la alim entacin de +5V. La lnea CS, de seleccin de chip, es conectada a una de las salidas del dec odificador de direcciones 74LS138. El terminal WE se conecta a la seal WR del microprocesador. La patilla OE se conecta a la salida RD del microprocesador.

DECODIFICACIN DE DIRECCIONES

74LS138

Debemos entender que la mayora de los componentes que se emplean en los diseos con microprocesadores, necesitan ser conectados a los buses de datos y direcciones, por tanto deben poseer la caracterstica de permitir dejar en estado de alta impe dancia las lneas que se conecten a dichos buses. De este modo podremos conectar v arios componentes al mismo conjunto de lneas sin que se produzcan interferencias entre ellos, ya que solamente permanecer activo aquel que sea seleccionado, quedand o el resto en estado de alta impedancia (tri-estado). Por tanto los componentes sobre los que debe actuar el microprocesador, adems de las lneas necesarias para conectarse a los buses, deben poseer algn terminal que p ermita al microprocesador habilitarlo para trabajar con l o por el contrario, dejar lo fuera de servicio. Este terminal ser el que realiza la seleccin del componente. Por otro lado sabemos que el bus de direcciones sirve para seleccionar algn regis tro (o alguna direccin) determinado en un componente, por tanto tendremos dos tip os de selecciones simultneas: Se debe seleccionar el componente que contiene la direccin o registro al que necesitamos acceder. Hay que indicar el registro o la direccin que deseamos dentro del compone nte. Para llevar a cabo estos procesos emplearemos el direccionamiento por decodificac in, aunque hay otros mtodos posibles. Las lneas de direccin ms bajas, son las que normalmente se emplean para apuntar a u n registro determinado o a una direccin dada y las lneas de direccin ms altas (A15, A14, A13, ...) se llevan a las entradas de un circuito integrado decodificador qu e ser el que con una de sus salidas, seleccione el componente que deseamos. Existen varios decodificadores que pueden ser empleados para este trabajo y que son de uso corriente. En nuestro caso ser utilizado el 74LS138. Se trata de un co nocido decodificador de 3 a 8 lneas de lgica transistor-transistor que se presenta en un encapsulado de 16 patillas cuya distribucin puede apreciarse en la FIG.4. La funcin de cada una de sus lneas se describe a continuacin: A0, A1 y A2 son las seales de entrada en cdigo binario. O0,..., O7 son las lneas de salida con nivel bajo activo. GND es el terminal de masa o tensin de referencia. Vcc es la patilla de alimentacin (+5V). E3 es una seal de habilitacin activa a nivel alto. E1 y E2 son seales de habilitacin activas a nivel bajo. A continuacin se muestra la tabla de la verdad, a travs de cuya observacin y anlisis puede apreciarse perfectamente la forma de actuar del decodificador.

Como vemos se emplean la lnea de direccin ms alta (A15) para atacar la entrada de c ontrol E3, mientras que las entradas de datos binarias del decodificador (A0, A1 , A2) son manejadas por las direcciones A12, A13 y A14 del microprocesador. De e sta forma puede utilizarse la lnea de direccin A15 tambin para seleccionar una mem oria EEPROM, puesto que al comenzar su ejecucin el microprocesador arranca en la direccin 0000H en su contador de programa, por lo que tendremos un 0 en la lnea A1 5 con la que podemos seleccionar una EEPROM al tiempo que bloqueamos el 74LS138. Las otras dos lneas de control E1 y E2 se colocan a nivel bajo para dejar activo el decodificador. De todas formas es posible dar otra funcin a estas lneas de con trol en el diseo global del sistema. Las lneas de salida O0, O1, O2, ..., O7 del d ecodificador quedarn disponibles para seleccionar los componentes deseados. En ca da una de ellas, se colocar una resistencia a +5V para asegurar el nivel lgico 1, en las salidas no activas. DIAGRAMA CIRCUITAL DEL SISTEMA MINIMO.

DIAGRA CIRCUITAL DEL DTMF.

PROGRAMACION ;******************************************************************************* ***** ;******************************************************************************* ***** .DATA 0150H ; Datos de las letras a displayar en el LCD_2x16 ; EPIE UNA PUNO 2012 ; TECNOLOGIA LCD ;---------------------------------------------------------------------------------DB 20H,20H,20H,20H,20H,45H,50H,49H,45H,20H,55H,4EH,41H,2AH ; 150 DB 20H,20H,20H,20H,50H,55H,4EH,4FH,20H,32H,30H,31H,32H,2AH ; 15E DB 20H,20H,20H,54H,45H,43H,4EH,4FH,4CH,4FH,47H,49H,41H,2AH ; 16C DB 20H,20H,20H,20H,20H,20H,4CH,43H,44H,20H,20H,20H,20H,2AH ; 17A .DEFINE ;---------------------------------------------------------------------------------PA85 00H ; Puerto A del PPI 8255 PB85 01H ; Puerto B del PPI 8255 Asignado para el bus de datos LCD PC85 02H ; Puerto C del PPI 8255 Asignado para el bus de control LCD PR85 03H ; Registro Ctr PPI 8255 PILA 0FFFH ; STACK POINTER ;---------------------------------------------------------------------------------.ORG 0000H JMP 0040H .ORG 0024H JMP LEER

.ORG 0040h ; CONFIGURACION DEL SP, PPI y INTERUPCIONES ;---------------------------------------------------------------------------------DI LXI H,PILA SPHL MVI A,80H OUT PR85 ;---------------------------------------------------------------------------------;***************************** PROGRAMA PRINCIPAL (VOID MAIN)******************* **** ;******************************************************************************* **** INI_REG_C: MVI A,00H OUT PB85 OUT PC85 CALL Delay CALL LCD_INI INICIO: MVI LXI DCR JMP DIS_1_1: LXI B,015EH DIS_1_0: Baud: MVI A,00H LDAX B CPI 2AH JZ ST1 OUT PB85 CALL WR_LCD INX B JMP Baud ;Mensaje A displayar en el LCD one file D,03H B,0150H D DIS_1_0 ; Direccion donde estan almacenados los Datos ;Poniendo a CERO los puertos a utilizar

;Mensaje a Displayar en el LCD two file

;Compara si ya es fin de mensaje

ST1: CALL EN_TER DCR D MOV A,D JZ SIG_MEN JMP DIS_1_1 ;Salta a Dis_1_1 ;----------------------------------------------------------------------------------SIG_MEN: CALL Delay_2 CALL POS_INI_LCD

MVI LXI DCR JMP DIS_2_1:

D,03H B,016CH D DIS_2_0 ;Mensaje a Displayar en el LCD two file

LXI B,017EH DIS_2_0: MVI A,00H Baud_2: LDAX B CPI 2AH JZ ST_2 OUT PB85 CALL WR_LCD INX B JMP Baud_2 ST_2: CALL EN_TER DCR D MOV A,D JZ SALIR CALL Delay_2 CALL POS_INI_LCD JMP DIS_2_1 ;Salta a Dis_2_1 ;----------------------------------------------------------------------------------SALIR: MVI A,00H OUT PB85 OUT PC85 CALL POS_INI_LCD BINF: JMP BINF CALL INICIO ;Compara si ya es fin de mensaje ;Mensaje A displayar en el LCD one file

;RETORNA AL PRINCIPIO DEL PROGR.

;-----------------------------------------------------------------------------------;******************** FUNCIONES PARA EL CONTROL DEL LCD 2X16 ******************* ****** ;******************************************************************************* ****** LCD_INI: PUSH PSW MVI A,00H OUT PC85 CALL Delay MVI A,38H OUT PB85 CALL CTR_LCD

;Retardo para el LCD ;Inicializa el LCD

MVI A,00H OUT PC85 MVI A,0CH del LCD OUT PB85 CALL CTR_LCD MVI A,00H OUT PC85 MVI A,02H el LCD OUT PB85 CALL CTR_LCD MVI A,00H OUT PC85 MVI A,01H OUT PB85 CALL CTR_LCD MVI A,00H OUT PC85 POP PSW RET CTR_LCD: PUSH PSW MVI A,04H OUT PC85 CALL Delay_2 MVI A,00H OUT PC85 POP PSW RET WR_LCD: PUSH PSW MVI A,05H OUT PC85 CALL Delay_2 MVI A,00H OUT PC85 POP PSW RET EN_TER: PUSH PSW MVI A,C0H OUT PB85 CALL CTR_LCD MVI A,00H OUT PB85 POP PSW RET POS_INI_LCD: ;Limpiando LCD ;Indicando la posecicion en la empezara ;Indicando el numero de Filas a Utilizar

PUSH PSW MVI A,02H el LCD OUT PB85 CALL CTR_LCD MVI A,00H OUT PB85 MVI A,01H OUT PB85 CALL CTR_LCD MVI A,00H OUT PB85 POP PSW RET Delay: PUSH PSW te11: LXI DCX MOV ORA NOP NOP JNZ RET Delay_2: tos PUSH PSW te22: LXI DCX MOV ORA NOP NOP JNZ RET ;****************************************************************************** LEER: CALL Delay IN 00H ADI 30H OUT 01H CALL WR_LCD RET H,0FFFH H A,H L te22 ;Tiempo de espera para que el LCD procese los Da H,7FFH H A,H L te11 ;Tiempo de espera para que el LCD procese los comandos ;Limpiando LCD ;Indicando la posecicion en la empezara

POP PSW

POP PSW

Vous aimerez peut-être aussi