Você está na página 1de 41

PRCTICAS DE ELECTRNICA1

ELECTRNICA ANALGICA ELECTRNICA DIGITAL

NOMBRE : CURSO: GRUPO:


Prcticas de analgica
Prcticas Nota Nota mx 1 10 2 15 3 3 4 8 5 10 6 7 8 9 10 11 12 12 15 13 15 14 8 15 8 Suma 158 nota 10 4 5 15 15 15 Presentacin (1-10) : 5 6 7 8

Prcticas de digital
Prcticas Nota Nota mx 1 6 2 10 3 8 4 8 9 15 10 15 11 20 12 15 Suma 135 Nota 10 8 10 10 10 Presentacin (1-10) :

Observaciones: - La fecha de entrega de este cuaderno de prcticas es el : 12 de Mayo 99 excepto para las prcticas 10 11 y 12, todas deben de estar acabadas. Se devolver una vez corregido, este cuaderno consrvalo y procura tener la mxima claridad en tus medida y conclusiones, te servir en tu futuro profesional. -Rellena las prcticas y haz tus clculos en lpiz, pues es fcil de que te equivoques, no aadas hojas sueltas, recorta y pega detrs de la prctica o en el recuadro correspondiente. Puntuacin = presentacin * punt. de la suma / punt. mxima de la suma Las prcticas representan un 25% de la nota de la asignatura: Nota final = Nota de los exmenes*0.75 + Nota de las prcticas * 0.25

No tirar esta hoja, aunque cambies de portada.

PRACTICA 1 CIRCUITOS RESISTIVOS 1.- Monta el siguiente circuito utilizando los valores de resistencia que prefieras

2.- Completa la siguiente tabla, realizando las operaciones que creas necesarias, y mostrndolas en esta hoja o detrs, imprime el circuito EWB con Amplificadores y Voltmetros, imprmelo con sus valores activos, recortalo y pgalo detrs.

CLCULOS
R R1 R2 R3 R4

MEDIDAS
I V I

ORDENADOR
V I

3.-Comenta los resultados obtenidos

PRACTICA 2 CARGA Y DESCARGA DE UN CONDENSADOR 1.- Calcula el circuito siguiente de tal forma que el condensador tarde 50 segundos en cargarse; y 80 segundos en descargarse, una vez colocado el conmutador S en la posicin2, muestra tus clculos detrs de esta hoja, y monta el circuito en el taller

RECUERDA: El tiempo que tarda un condensador en cargarse o descargarse depende de la constante de carga t=5RC 2.- Realiza las medidas necesarias para dibujar las grficas correspondientes a la carga del condensador, por ejemplo cada 5 o 10 seg. CARGA REAL
t (seg.) Vc (V) 0 5 10 15 20 25 30 35 40 45 50 55 60

3.- Realiza las medidas necesarias para dibujar las grficas del taller correspondientes a la descarga del condensador, por ejemplo cada 5 o 10 seg. DESCARGA REAL T (seg.) 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 Vc (V) 4.- Dibuja las 2 grficas (grficas de taller) en el papel cuadriculado de la hoja siguiente, adelas a esta memoria, la de Carga Real pntala de azul, y la Descarga Real, de negro 5.- Con las siguientes frmulas tienes que rellenar los cuadros de la carga terica y la de la descarga terica: Vc=E-(E-Eo) e-t/RC t=RC ln(E-Eo)/(E-Vc) CARGA TERICA t (seg.) 0 10 40 Vc (V) 12 DESCARGA TERICA t (seg.) 0 10 40 Vc (V) 10 6.- Dibuja en la hoja cuadriculada anterior las dos curvas correspondientes a la Carga Terica y a la Descarga Terica, con los mismos colores, pero en TRAZOS. Son las grficas tericas 7.- Monta en el ordenador este circuito rellena unas tablas equivalentes a los pasos 2 y 3 adems observa los efectos que producen los cambios de valores, tanto de resistencia, como de capacidad, en el tiempo de carga y descarga, imprime una hoja con el circuito, las tablas de valores, y las grficas de carga y descarga. stas sern las grficas de ordenador. 8.- Cul es la conclusin que sacas al observar dichas curvas, las del taller, las tericas y las del ordenador?

PRACTICA 3 MEDIDAS CON EL OSCILOSCOPIO El objetivo de esta prctica es que cojas soltura con la diferente instrumentacin del taller, polmetros, osciloscopios, fuentes de alimentacin en continua --- y en alterna ~. MEDIDA FRECUENCIA 1.- Coloca en el GBF una seal alterna senoidal de 5Vmax, 1khz (si faltan GBF sirve la f.a. del entrenador, con la salida marcada como ~ en rojo) 2.- Conecta la sonda del osciloscopio a la salida del generador 3.- Coloca en la pantalla del osciloscopio uno o dos periodos de la seal 4.- Completa los siguientes campos, con la mayor atencin posible: TIME/DIV= N de divisiones horizontales=

Multiplicando el n de divisiones por el valor de la base de tiempos, obtenemos el valor del periodo T y como sabemos que f=1/T obtendremos el valor de la frecuencia f= f medido con los instrumentacin2 = MEDIDA VOLTIOS 5.- El osciloscopio tiene un conmutador rotativo para adecuar la seal de entrada amplificndola o reducindola, VOLT/DIV, segn el canal, gira el conmutador hasta que la seal se pueda visualizar en la pantalla sin salirse de ella, pero ocupando lo mximo 6.- Rellena los siguientes campos VOLT/DIV= N de divisiones verticales de pico a pico=

Vpp= VOLT/DIV * N div horiz pp = Vp = Vpp/2 = V ef= Vp/ 2 = V ef medida con el polmetro = MEDIDA VOLTIOS DE TENSIN CONTINUA 7.- Coloca ahora la fuente de alimentacin3 en la sonda, y en conmutador, primero ajusta la tierra con el conmutador en GD fijando la posicin inicial del trazo, y despus en DC, pon la fuente de alimentacin a 15 V, y mide su tensin anlogamente al caso de alterna paso 5 y 6, y comprueba su veracidad con el polmetro. Cul es tu conclusin?

2 3

Del polmetro, o si los polmetros no tienen medidas de frecuencia, con el frecuencmetro. Del entrenador V1, o de la fuente de alimentacin en contnua. 4

PRACTICA 4 CORRIENTE ALTERNA 1.- Monta el siguiente circuito

utilizando los valores de R C y v que prefieras para visualizar bien el desfase R= C= v= V, Hz

2.- Completa la siguiente tabla, realizando las operaciones que creas necesarias, y (las operaciones puntuan 10 puntos, son complejos) mostrndolas en esta hoja o detrs CLCULOS Z R C desfase 3.-Comenta los resultados obtenidos V I MEDIDAS V I ORDENADOR V I

PRCTICA 5 CURVA CARACTERSTICA DEL DIODO 1.- Realiza el siguiente montaje con un diodo, puede ser zener o no, completa la tabla, la I la calculas con la ley de Ohm Cmo la calcularas teniendo los valores de V, E y R?

V diodo E I R= 2.- Invierte la posicin del diodo y repite el proceso anterior V diodo E I R= 3.-Representa los resultados obtenidos en una grfica I del diodo en el ejey, V diodo ejex

4.- Que conclusin sacas al ver la forma y los valores de la grfica. Ponlo detrs. 5.- Busca el diodo en los manuales, e indica aqu las caractersticas que ves ms importantes

PRCTICA 6 RECTIFICACIN 1.- Monta los siguientes circuitos de rectificacin

2.-Mide todas sus seales con el osciloscopio, dibjalas con un mnimo de precisin colocando sus valores y escalas empleadas, anota la tensin en continua que hay en la carga. 3.- Dibujo las tres formas de onda en los siguientes recuadros:

4.- Repite los procesos anteriores con el ordenador, imprime las formas de onda del osciloscopio pgalas detrs. 5.- Comenta tus conclusiones

PRACTICA 7 RECORTADOR ZENER 1.- Monta los siguientes circuitos en el taller:

2- Coloca el transformador ~ +- 12V en la entrada y una vez conectado al cicuito mide con el osciloscopio tanto la entrada como la salida 3.-Dibuja las formas de onda , entrada y salida en la msma grfica:

4.- comenta los resultados obtenidos en cada circuito, Para que sirven ? Qu aplicaciones ves a estos circuitos?

PRACTICA 8 FILTRADO Y RIZADO 1.- Monta el siguiente circuito, el tranformador ser el de 220/12~. Disalo para un rizado razonable como el de la figura, rellena este cuadro: Condensador elegido: Resistencia de carga elegida: Diodos V rizado pico a pico terico.

2.- Determina las seales de rizado, y la seal de continua en la carga 3.- Mntalo tambin en el ordenador, imprime el circuitto con la forma de onda en el osciloscopio, imprmelo, recorta y pgalo detrs, mide la seal de rizado y de continua en la carga. 4.- Ahora en el taller inserta un 78XX y mide la seal de rizado y de continua en la carga. 5.- Rellena la siguiente tabla, los clculos mstralos en esta hoja por la parte de atrs (8 puntos) MEDIDAS ORDENADOR CLCULOS V RIZADO pico a pico Vcc EN LA CARGA Con 78XX no hay 78XX 6.- Comenta tus conclusiones

PRCTICA 9 RECTIFICACIN DE POTENCIA 1.- Monta el siguiente circuito en el ordenador. Como resistencia de carga puedes usar una bombilla, o una resistencia de 1K,fija un ngulo de conduccin mximo y mnimo, y utiliza un potencimetro para regular la luz, puede ser alrededor de 25K, y el condensador de 100n, la red 100V y 50HZ. ensea los clculos en la parte de atrs. Imprime el circuito cuando tengas una seal de osciloscopio representativa, tienes que probar diferentes configuraciones, los valores anteriores son orientativos. Pgalo en la parte de atrs.

2.- Rellena la siguiente tabla: ng. cond. ng. Cond. Mximo elegido Mnimo elegido

3.- Ahora con la informacin del osciloscopio rellena esta tabla: Vp DIAC Vv DIAC Vp TRIAC Frecuencia V RED eficaz

4.- Mide el ngulo de conduccin con el potencimetro al mnimo y al mximo si tienes potenciometro y rellena la siguiente tabla
NGULO CONDUCCIN MNIMO MXIMO CALCULADO MEDIDO No No ORDENADOR

6.- Comenta los resultados

10

PRCTICA 10 POLARIZACIONES DEL TRANSISTOR BIPOLAR


1.- Disea los siguientes circuitos de polarizacin para un determinado punto de operacin, antes rellena esta tabla de la eleccin del punto Q, elige los valores que creas convenientes

2.- Mntalo en el taller, y en el ordenador, realiza todas las medidas necesarias para rellenar la tabla siguiente, a la hora de imprimir el circuito, imprimirlo con los valores de los ampermetros y voltmetros, elabora los clculos y tambin adelos a la prctica, pero no hojas sueltas. Polarizacin fija:

Vcc
TERICO PRCTICO EWB

Vce

Vbe

Vrc

Vrb

Ib

Ic

Ie

Polarizacin con realimentacin en el emisor:

Vcc
TERICO PRCTICO EWB

Vce

Vbe

Vrc

Vre

Vrb

Ib

Ic

Ie

Polarizacin con realimentacin en el colector:

Vcc
TERICO PRCTICO EWB

Vce

Vbe

Vrc

Vrb

Vr2

Ib

Ic

Ie

Polarizacin por divisor de tensin:

Vcc Vce Vbe Vrc Vre Vr1 Vr2 I1-2


TERICO PRCTICO EWB

Ib

Ic

Ie

11

PRACTICA 11 TRANSISTOR EN CONMUTACIN


1.- Disea Rb y Re en el circuito de la figura de tal manera que el transistor este en sobresaturacin cuando se cierre el interruptor. Hay que tener en cuenta la resistencia del REL que es aproximadamente 10 (mdelo con el polmetro) y la hfe del transistor que utilices (mdelo tambin), la fuente de alimentacin Vcc no es necesario que sea de 25V, puede ser otro valor, igualmente con la Vb 2.- Mntalo en el taller, no es necesario que realices el circuito de la derecha (la de alterna), es slo un ejemplo para que veas como desde un elemento de pequea potencia, (la pila y el interruptor de la derecha, que pueden ser perfectamente puertas lgicas o cualquier circuito digital como un puerto de un ordenador) se puede controlar un circuito de alta potencia (el de la izquierda) 3.- Dibjalo en el EWB, y observa su funcionamiento, imprmelo y pgalo detrs. 4.- contesta a las siguientes preguntas: Qu funcin tiene el diodo en paralelo con la bobina del rel?

Quizs no dispongas de dos fuentes de alimentacin Cmo se soluciona el problema?

Basndote en este circuito Podras disear un temporizador?

12

PRCTICA 12 AMPLIFICADOR CON BJT 1.- Realiza un diseo de amplificador con BJT, realimentado por emisor, y con divisor de tensin en la base como la figura, los valores son libres, el proceso de diseo mstralo en la hoja de atrs o en hoja aparte, junto con los valores de las tensiones en la base, emisor y colector continuas, transistor del apndice B

2.- Mntalo y realiza las mediciones de la ganancia en el osciloscopio, y realiza las medidas de Vb, Ve, Vc con el polmetro o con el osciloscpio. 3.- Realiza igual con el ordenador, tomando las mismas medidas, imprime el osciloscopio y el circuito con los voltmetros que utilices, imprmelos con sus valores, y pgalo atrs. 4.- Rellena la siguiente tabla CALCULADOS GANANCIA Vc Vb Ve ENSEA LOS CLCULOS DE DISEO EN LA PARTE DE ATRAS (10 puntos) 5.- Comenta los resultados obtenidos MEDIDOS ORDENADOR

13

PRACTICA 13 CIRCUITOS CON AMPLIFICADOR OPERACIONAL (5 p)1..- Disea el siguiente circuito para que realice la salida del osciloscopio

Ensea tu diseo por la parte de atrs, mntalo en el taller y compara el valor terico con el real R1= R2= R+= Ganancia Terica Ganancia real=

Pon la realimentacin positiva, Que ocurre? Comenta el resultado:

(5 puntos)2.- Disea por ordenador un circuito que realice la siguiente expresin Vsalida = 2 Va + 3 Vb - Vc Va, Vb, Vc son tensiones que son de entrada, luego coloca unos valores arbitrarios Va que sea tensin alterna y Vb, Vc continua, imprime el circuito con sus formas de onda Imprime el circuito propuesto en EWB (5puntos) 3.- Realiza por ordenador un filtro pasa banda desde 100Hz hasta 10 Khz, ensea el diseo y la impresin del circuito con el diagrama de Bode.Ganancia 32 dB. Imprime el circuito propuesto en EWB

14

PRCTICA 14 ASTABLE Y MONOESTABLE CON 555 (Esta prctica pertenece a Analgica, no la cambies de sitio, aunque a lo mejor la teoria la has dado ya en digital) 1..- Disea el siguiente circuito para que realice la salida del osciloscopio

Para visualizarlo, en vez de 0.2mseg, que sean 0.2seg, cuenta por ejemplo 10 pulsos y as determina la duracin de un pulso.. 2.-Ensea tu diseo por la parte de atrs, mntalo en el taller y compara el valor terico con el real, rellena estos valores: R1= Rellena esta tabla: Th y Tl T total R2= CALCULADOS
4

C= MEDIDOS ORDENADOR

3.- Realiza por ordenador y en el taller un monoestable con un tiempo de duracin de 2 seg, observa su funcionamiento, imprime las formas de onda ,el circuito y ensea el diseo en la hoja de atrs 4.-Comenta el resultado de estos circuitos, monoestable y astable:

Quizs no puedas diferenciar la parte alta de la parte baja en el taller, as que esta casilla no la rellenes, slo la del tiempo total contando varios impulsos. 15

PRACTICA 15 MULTIVIBRADOR ASTABLE 1.- Monta en el taller el circuito siguiente :

2.- Realiza las medidas siguientes

TH TL medido medido

TH TL Vce Q1 calculado calculado

Vce Q2

Vbe

3.- Calcula los valores de R1 y R2 para que el Tiempo alto sea 2 veces ms grande que el del diseo anterior y el tiempo bajo la mitad, ensea aqu los clculos, mntalo en el taller y en el ordenador, imprmelo. 4.- Conclusiones y utilidades que se te ocurren en estos circuitos.

16

PRACTICAS DE ELECTRNICA DIGITAL PRCTICA 1 MEDIDAS DE PARMETROS DE LAS PUERTAS LGICAS 1.- Monta el siguiente circuito:

2.- utilizando el polmetro y midiendo tanto la entrada como la salida determina los umbrales de entrada y salida, vas subiendo la tensin en la entrada desde 0V, y cuando cambie de estado, lo rellenas en la casilla (VIHmin o VILmax?) medida, ahora ves bajando la entrada desde 5V, cuando cambie de valor, rellenalo en la casilla (VIHmin o VILmax?) medida busca estos valores en el Databook del CI o en el libro de teoria, y rellena el resto de la tabla Medidas VILmax VIHmin VOLmax VOHmin No No Databook

Familia lgica y numeracin = 3.- Tiempo de propagacin. monta el siguiente esquema:

compara con el osciloscopio las dos seales y calcula el tiempo de propagacin, busca en el Databook ese valor y rellena la tabla: medida tp 4.- Cuales son tus conclusiones?Por qu no coinciden los valores medidos y el databook?es correcto el mtodo de medicin?por qu no se han rellenado los VO medidos? databook

17

PRCTICA 2 CIRCUITOS COMBINACIONALES LSI 1.- Un sistema de alarma est construido por cuatro detectores denominados a, b, c, d; el sistema debe de activarse cuando se activen tres o cuatro detectores, si solo lo hacen dos detectores, es indiferente la activacin o no del sistema. Por ltimo, el sistema nunca debe de activarse si se dispara un solo detector o ninguno. Por razones de seguridad el sistema deber activar si a=0, b=0, c=0 y d=1. Implementar este sistema, ensea el diseo en hoja aparte, y monta el circuito propuesto: Dibujo:

Numeracin pastilla

Cantidad

Precio por pastilla

Total:

Total: 2.- Disear el sistema que aparece en la figura constituido por cuatro interruptores a,b,c,d en cuyas posiciones de activados introducen un nivel 1 a las respectivas entradas del bloque A Las salidas del bloque A cumple las siguientes normas: F1 se activa con 1 cuando existen dos interruptores no contiguos que estn desactivados, aunque hayan dos interruptores desactivados contiguos, por razones de seguridad si abcd=1001 entonces F1=1 y tambin si abcd=0110 entonces F1=0 F2 se activa con 1 cuando hay dos o ms interruptores activados F3 se activa con 1 cuando hay alguno de los interruptores activados Las salidas del bloque A se encuentran conectadas a 3 pequeos pilotos as como a las entradas del bloque B Por ltimo, las salidas del bloque B representan la codificacin en binario del nmero de pilotos encendidos que hay en su entrada Implementarlo en el ordenador, la simplificacin realizarla con ayuda del ordenador, imprimir el diagrama de bloques, y los diagramas de cada bloque, aqu quzs necesites ms de una hoja, adelas a la prctica pero no en hojas sueltas, grpalas, o insertalas en la encuadernacin. Rellena las tablas bloque A Numeracin pastilla Cantidad Precio por pastilla Total:

bloque B Numeracin pastilla

Cantidad

Precio por pastilla

Total: Total: Total:

a b c

F1 F2 F3

X1 X2

18

PRCTICA 3 CIRCUITOS COMBINACIONALES MSI 1.- Implementar en el ordenador la siguiente funcin empleando un multiplexor de 16 canales tipo 74150 (Imprime el cto) F= xy + xzv + xyv + zv + yv 2.- Ahora implementarlo con 8 canales tipo 74151 en ordenador (Imprime el cto) y en el taller ensea el diseo de los dos Cual es la conclusin que deduces? 3.- Utilizando un decodificador BCD tipo 7442 y puertas NAND implementar en el ordenador la siguiente funcin F= abc + abc + abc + abc

19

PRCTICA 4 CIRCUITOS ARITMTICOS 1.- Disea y realiza un sumador-restador de 4 bits segn las siguientes instrucciones a) La resta debe de realizarse en C1 b) existe una entrada P que determina si se realiza una resta o una suma P=0 suma P=1 resta c)Utilizar el 7486 y el 7483

Ensea el diseo, y mntalo en el ordenador (imprime el circuito), o en el taller. 2.- Realiza la suma de tambin dos palabras de 4 bits con el sumador completo en ordenador, imprime el resultado

20

PRCTICA 7 CONTADOR REVERSIBLE SNCRONO Los siguientes circuitos, preferentemente se realizarn en el ordeandor, no es necesario imprimirlos, slo mostrar el diseo funcional5 de todos ellos atrs.

1 2 3 4 5

Realizar un circuito ... Contador mdulo 7 Divisor 26 Contador 2 a 8 ascendente Contador 13 a 5 descendente Contador 7 a 9 ascendente

Con el integrado ... 7490 7493 74190 o 74191 74190 o 74191 74192

PRACTICA 8 REGISTROS DE DESPLAZAMIENTO Dibuja el diseo funcional de estos circuitos: 1.- Con el 74194 realiza un circuito secuenciador de Leds en el taller, es decir, que se desplace un Led encendido, (hay que realizar un pulso corto en el SR) Ejemplo de funcionamiento : 1000 0100 0010 0001 2.- Cmo harias que se recoriese siempre? Es decir :1000 0100 0010 0001 1000 0100 .. 3.- RETO Cmo harias un coche fantstico ? es decir 1000 0100 0010 0001 0001 0010 0100 1000 y otra vez a empezar pista: aadir algo que recuerde que direccin tomar, ejem RS
Recorte del manual 74194

Diseo funcional se refiere a que los dibujos deben de mostrar con claridad las conexiones, es decir, que no hay que respetar el orden de los pines en la colocacin de los mismos. 21

PRCTICA 9 ESTUDIO DE UNA MEMORIA EPROM BORRADO GRABADO Y APLICACIONES


1.- Supongamos que un tribunal esta compuesto de 5 personas, disponen de un interruptor para determinar si es culpable (1) o inocente (0) el acusado, como la votacin se desea que sea secreta, se precisa de un circuito electrnico que realice las siguientes salidas a) Mostrar el nmero de votos culpables , que por simplificacin, se visualizar en un solo Display b) Que un LED rojo se encienda si el acusado es culpable c) Que un LED verde se encienda si hay ms de un 75% que opina que es inocente d) Que un LED rojo pequeo que determine el empate Implementar este circuito con la EPROM 27C64A, borrarla y programarla, despues montar el circuito, rellena la tabla de verdad (paciencia), y los valores en hexadecimal que se graban en la memoria. Hay que poner a la salida de la EPROM unos trigger 7414, como son inversores, o grabarlo al revs, o poner dos trigger en cascada. Dibujar diseo funcional del circuito atrs.
decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Binario 00000 00001 00010 00011 00100 Grabacin en binario Grabacin en hexadecimal

2.- Contestar a las siguientes preguntas Capacidad de palabras que almacena El tamao de la palabra que almacena El nmero total de bits que almacena El tipo de memoria integrada Caractersticas elctricas de la pastilla Haz un dibujo de la estructura interna de la memoria EPROM 27C64A:

22

PRCTICAS CON EL 8085 Indice: 1. Generalidades del 8085 1.1. Harware del 8085 1.2. Instrucciones del 8085 1.2.1. Instrucciones de transferencia de datos 1.2.2. Instrucciones aritmticas 1.2.3. Instrucciones lgicas 1.2.4. Instrucciones de desplazamiento 1.2.5. Instrucciones de salto 1.2.6. Instrucciones de subrutinas 1.2.7. Instrucciones de pila 1.2.8. Instrucciones de control 2. Manejo del simulador 8085 2.1. PRCTICA 10 3. Manejo del micro 8085 desde el PC 3.1. Introduccin 3.2. Comandos 3.3. Subrutinas 3.4. direcciones de nuestros programas Manejo del micro 8085 desde la consola 3.5. Introduccin 3.6. Comandos 3.7. Interrupciones 3.8. Grabar y leer desde una cinta cassette Prcticas 3.9. Manejo del entrenador 3.10. PRCTICA 11 3.11. Semforo 3.12. PRCTICA 12

23

1.- Generalidades del 8085 1.1.- Hardware del 8085 Dentro del 8085 tenemos los siguientes registros: A (8) ALU Unidad Aritmetico S Z AC P CY ... Flag (8) Lgica B (8) C (8) D (8) E (8) H (8) L (8) registros auxiliares Acumulador U.C. Unidad Control

RI (8) reg. de instruciones SP (16) stack pointer puntero de pila PC (16) contador del programa

Todos estan conectados entre si, y el 8085 tiene exteriormente 3 buses como todos los microprocesadores (pero con tamaos diferentes): Nombre bits comentarios D.B. Bus de datos 8 conectado al R.I. desde este registro la U.C. lee las (data bus) instrucciones y las procesa. A.B. Bus de direcciones 16 conectado al PC indica la direccin de memoria del (Adrress Bus) programa que se esta leyendo. C.B. Bus de Control 10 Conectado a la U.C. para controlar el sistema Hay que sealar que el 8085 tiene el bus de direcciones multiplexado, es decir, tiene 8 pines AD0 .... AD7 que son bus de datos y bus de direcciones (la parte baja), para diferenciarlo tiene un pin llamadoALE que cuando es 0 las lineas AD0...AD7 es bus de datos D0...D7, y cuando ALE=1, las lineas AD0...AD7 es parte baja del bus de direcciones A0...A7. El bus de control adems del ALE, tiene los siguientes pines: Lectura Escritura: RD# y WR#6 Acceso a memoria o a perifricos: IO/M#. pin indicador de estar preparado para atender al dispositivo exterior : READY. pin indicador que el dispositivo externo esta ocupando los buses : HOLD. pin indicador que el 8085 no hace caso a los buses HLDA. pin indicador que el 8085 se ha reseteado RESETOUT. y pines indicadores de estado S0 S1 (S0S1 =01 Escribe dato, =10 Lee dato, =11 Busca direccin).

El smbolo # indica que es activo a nivel bajo. 24

En la pag 280 y 281 explica el funcionamiento de cada uno de los registros, unidades etc.., seala brevemente el significado de cada uno de ellos: Descripcin A

B, C D, E H, L

Flag S Z AC P CY ALU

U.C.

R.I. P.C. S.P. 1.2.- Instrucciones del 80857


7

Estas hojas son las que se permitirn en los exmenes. 25

Nomenclatura: r = un registro de 1 byte , puede ser cualquiera de estos : A, B,C,D,E,H,L. (rs =registro origen de datos, source, rd = registro destino de los datos) [1000] = el dato almacenado en la direccin 1000H [HL] = el dato almacenado en la direccin contenida en el registro HL M= dato = un nmero de 1 byte, por ejemplo 4AH, suelen ser los datos. addr = un nmero de 2 bytes, por ejemplo 10B2H, suelen ser las direcciones H=hexadecimal, B=Binario, D = Decimal 1.2.1.- Instrucciones de transferencia de datos MOV rd,rs MOV rd,M MOV M,rs MVI rd,dato LDAX B STAX B LDAX D STAX D LXI B,addr XCHG LXI D,addr LXI H,addr ejemplo de utilizacin : SHLD addr LHLD addr STA addr LDA addr

26

1.2.2.- Instrucciones aritmticas ADD rs ADD M ADI dato ADC rs ADC M ACI dato INR rs INR M INX B INX D INX H DAD B DAD D DAA 1.2.3.- Instrucciones lgicas ANA rs ANA M ANI dato ORA rs ORA M ORI dato CMA XRA rs XRA M XRA dato CMP rs CMP M CPI dato alteran solo el flag : Z, S, CY, AC ... SUB rs SUB M SBI dato SBB rs SBB M SBI dato DCR rs DCR M DCX B DCX D DCX H STC CMC

27

1.2.4 Instrucciones de desplazamiento RLC RRC RAL RAR 1.2.5 Instrucciones de salto JMP addr Jcondicion addr PCHL RSTn condicin puede ser alguna de las siguientes: Z NZ P M C NC PO PE

1.2.6 Instrucciones para las subrutinas CALL addr Ccondicin 1.2.7.- Pila PUSH B POP B PUSH D POP D 1.2.8.-Instrucciones de control HLT NOP SIM EI IN puerto OUT puerto XTHL SPHL RET Rcondicin

28

2.- Manejo del simulador 8085 Vamos a realizar un pequeo ejemplo de funcionamiento. Vamos a mover el contenido de la direccin 2000H al acumulador, y almacenarlo en la 2001H, y el contenido de la direccin 2002H moverlo al registro B, y almacenarlo en la 2003H.
a)

Escribir el siguiente programa en un editor, por ejemplo el EDIT de MS-DOS, guardarlo como PRUEBA.ASM el archivo fuente debe de tener la extensin *.ASM (vamos al direcctorio 8085, desde el raiz : CD 8085, y EDIT PRUEBA.ASM) ;programa de muestra ;*** mover datos **** ;colocacin de los n ORG 2000H DATO1: DB 05H DATO2: DB A4H DATO3: DB 45H,12H ;programa1 ORG 1000H LDA DATO1 STA DATO2 LXI H, DATO3 MOV B,M INX H MOV M,B END todo lo que se escribe despus de ; no se ensambla, as que se puede utilizar como comentarios. ORG = organizar las siguientes lneas a partir de la direccin en este caso 2000H DB=se utiliza para poner datos, en este caso, pone 05 en 2000, A4 en 2001 etc... aqu DATO1 es una etiqueta, y toma el valor de la direccin donde esta escrita, en este caso DATO1 es igual a 2000 y DATO2? hay que poner : y escribirlas en la primera columna, el resto del programa a partir de la columna 10.

tambin puede haberse escrito: DATO1 EQU 2000H EQU= equivale a ... el programa se ha escrito a partir de la direccin 1000H, carga el acumulador (loadA) y lo almacena (storeA), podra haberse escrito STA 2000H y LDA 2001H, para el registro B hay que utilizar el registro M, antes de utilizar el registro M hay que cargar HL la direccin que queremos, LXI H,DATO3 = LXI H,2002H, lo mueve a B, y para moverlo al 2003 podra haberse escrito LXI H,2003H o como en este caso, incrementando lo que tena, movemos de B a M, y para finalizar END. b) despus de guardarlo ensamblarlo con la instruccin: ASM8085 PRUEBA.CCC esto crea 3 ficheros, si salen errores hay que corregirlo en el prueba.asm: PRUEBA.ERR = listado de errores de 1 pasada.
(A=argumento errneo, D=etiqueta no existe, L=etiqueta erronea, U=smbolo indefenido, S= error sintaxis)

PRUEBA.LST = listado del programa, aqu salen los errores de 2 pasada. PRUEBA.OBJ = listado en lenguaje mquina. c) simularlo con el programa SIM8085, una vez dentro pulsar F4 y cargar el PRUEBA.OBJ, utilizar los siguientes comandos: V=ver memoria, en este caso nos interesa ver lo que hay en la 2000H y siguientes. M=modificar memoria, si queremos alterar los n que hemos metido. R=modificar los registros, en este caso pondremos el contador del programa PC en la direccin de comienzo de nuestro programa: 1000H T=trazar o ejecutar paso a paso, ir pulsando y observar lo que ocurre en cada instruccin.

29

Q=salir otras utilidades: F1 visualiza una ayuda C=ver el cdigo E=ejecutar entre dos direcciones, ESC para salir, I para interrupcin 7.5

30

PRCTICA 10 SIMULADOR SIM8085 En esta prctica la intencin es que tomis un primer contacto con el 8085, y realizar los ejercicios de un microprocesador en un PC, para despus pasarlos a la prctica. Los ejercicios van ordenados de menor a mayor complejidad, realzalos primero en una hoja aparte, discutindolo con tus compaeros de prctica, y realzalos en el ordenador. Tienes que ensamblarlos, comprobar que funcionan, y entregar los listados *.LST o *.ASM, no entregues una hoja por ejercicio, sino un listado donde estn todos los listados de los ejercicios para ahorrar papel. Ejercicios: 10.1.- Realizar una transferencia de datos [1500] <= [1503] y [2500] <= 0 con las instrucciones MOV MVI. 10.2.- Idem pero con las funciones LDA y STA 10.3 .- Sumar 3 nmeros de 1 byte, almacenar su resultado y su posible acarreo, [1003] <= [1000]+[1001]+[1002] el acarreo almacenarlo en [1004] 10.4.- Sumar dos nmeros de 2 bytes de la siguiente forma, con registros simples 1 nmero [1000][1001] 2 nmero + [1002][1003] . resultado [1006] [1004][1005] 10.5.- Idem con registros dobles. 10.6.- Multiplicar un nmero por 4 de la siguiente forma : [1001] <= [1000] * 4 10.7.- Multiplicar 2 nmeros de un byte : [1002] <= [1000]*[1001] 10.8.- Dividir 2 nmeros de un byte : [1002] <= cociente [1000]/[1001] [1003] <= resto de [1000]/[1001] 10.9.- Hacer un intermitente de un LED por el puerto paralelo OUT 00H 10.10 .- Encender 8 Leds secuencialmente por el puerto paralelo OUT 00H 10.11.- Ejercicio de libre enunciado, tiene que ser original respecto a los dems grupos de prcticas, si no se te ocurren enunciados, consulta al profesor, imprime el listado *.ASM y adjntalo a los anteriores, crea una transparencia del diagrama en bloques para exponerlo a la clase y explicar a los dems qu has hecho y cmo. Este ejercicio es el que realmente punta. Cuando acabes con la exposicin, ensea todos los listados al profesor. (Esto se hace para obligar a que tengas los listados, quizs el da de maana los necesites)

31

3.- Manejo del micro 8085 desde el PC 3.1 Introduccin Para utilizar el micro 8085 desde el PC, se debe de poner el conmutador Teclado/CRT en la posicin CRT. En el fichero CONFIG.SYS del PC debe de existir la lnea DEVICE=ANSI.SYS. Y tambin tener conectado un cable conexin serie de tres hilos de la siguiente forma: En el micro (tres hilos) TX ------------------------RX ------------------------GND ----------------------En el PC (macho de 25 pines) RX (3) TX (2) RTS (4) con CTS (5) GNE (7) DSR (6) con DTR (20)

Ejecutar el fichero DDT85 he indicar en qu puerto esta COM1 COM2 etc..., de esta forma se consigue una comunicacin de 2400 baudios cada dato de 8 bits, con 2 de stop. Pulsar INIC antes de utilizar los comandos. Si se quiere ensamblar un fichero por ejemplo PRUEBA.ASM para el 8085, ejecutar HACERHEX PRUEBA, es un fichero BATH que ensambla y ejecuta a la vez el DDT85. 3.2 Comandos D direccin baja,direccin alta =Visualiza la memoria desde la direccin alta hasta la baja, ejem D1009,2A50 Gdireccin comienzo =ejecuta el programa desde la direccin comienzo, si no se pone, ejecuta desde donde apunta el registro PC. N =ejecucin paso a paso I direccin =inserta en la memoria a partir de direccin. Mdireccin baja, direccin alta, destino = mueve la memoria, ejem M1E00,1E06,1F00 = mueve el bloque de memoria desde la 1E00 hasta 1E06 a la 1F00 Sdireccin =Visualiza y modifica la direccin, ejem S1000 Xregistro =Visualiza y modifica los registros, ejem XA, si no se pone el registro, los visualiza en este orden: A B C D E F H L M P S L nombre del programa offset = carga un programa desde el ordenador a partir de la direccin 1000H, el offset es el nmero de posiciones de memoria que se incrementa el programa, ejem offset=10, entonces lo carga en la 1010, luego es aconsejable utilizar en vuestros programas ORG 0000H o ORG 0500H H = fin de la comunicacin

32

3.3 Subrutinas Estas son algunas de las subrutinas que podis utilizar: Direccin nombre8 descripcin Interrupc reg. alt. 9 0A51 CI1 Carcter de consola al acumulador Masc F 0A5D CO1 Del registro C al display AF 0A33 PRIMES un mensaje que esta en memoria, que AHLF comienza en la direccin apuntada por HL se visualiza en el display 0AB7 ADRD el contenido de HL se visualiza en el ABCF display 04C9 UPDAD TODOS 04D5 UPDDT el contenido del acumulador se visualiza en el display 0B74 DELAY retraso de 1 mseg 044E RDKBD dem CI1 HLF 041D OUTPT dem Primes 037D GTHEX n hex de 2 bytes ejem A725 desde el teclado, al display y al registro DE 02BF TODIR Idem que el anterior, pero sin visualizarlo Para utilizar estas subrutinas, hay que utilizar el comando EQU, por ejemplo: RDKBD EQU 044EH UPDDT EQU 04D5H Para permitir desenmascarar todas las interrupciones, es necesario poner 08H al Acumulador, y ejecutar SIM, y para habilitar el sistema de interrupciones EI Estas direcciones pertenecen a la ROM y son inalterables, pues vienen de fbrica. 3.4 Direcciones de nuestros programas. Nos dividiremos la memoria RAM para efectuar nuestros programas y as no chafar los programas de nuestros compaeros: grupo profesor GRUPO 1 GRUPO 2 GRUPO 3 direcciones 1000 10FF 1100H 12FFH 1300H 14FFH 1500H 15FFH grupo GRUPO 4 GRUPO 5 GRUPO 6 LIBRE direcciones 1700H 18FFH 1900H 1FFH 1B00H 1CFFH 1D00H 1FFFH

8 9

El nombre puede ser arbritario las teclas azules tienen el siguiente cdigo: EJEC=15H GO=12H SMANT=13H

EREG=14H

POST=11H

EJEC=10H 33

4 Manejo del micro 8085 desde la cnsola


4.1 Introduccin El 8085 como tiene los buses de datos y el de direcciones multiplexado, el 74373 los demultiplexa, 8085 ------ AB y DB (8) ------- 74373 ----- ABL (8) ----- DB(8) Tiene un reloj de cuarzo de 4.915 MHz, un dedodificadro de 3 a 8 canalies 74138 y puertas and 7408 para la realizacin del mapa de memoria, que es la siguiente: Direcciones chip, mapa hardware descripcin, mapa software 0000 EPROM 4k Programa monitor de la cnsola y 0FFF 2732 subrutinas anteriores 1000 2x RAM 2k Programas de usuario 1FFF 4016 2000 RAM 256 bytes Utilizado por la cnsola 20FF 8155 U17 Perifricos: Tiene una ranura de expansin J1 de 50 hilos, una salida MIC EAR para comunicarse con un cassette, como memoria externa, y tres puertos: tipo jumper puerto chip ref SERIE J8 8251 U13 U11 U12 PARALELO J5 PA 81555 U14 J6 PB J7 PC J2 PA 8255 U15 J3 PB J4 PC 4.2 Comandos INIC = Se produce un reset y aparece en el display 8085.

S.M/ANT =Sustituir memoria y anterior POST =Posterior, equivale al enter ejemplo, queremos meter a partir de la direccin 1000 los siguientes datos 31,8C,1F, solucin: SM/ANT 1000 POST 31 POST 8C POST 1F si hay error: SM/ANT 1000 POST 31 POST 8D POST SM/ANT 8C POST 1F E REG =Examinar los registros, para ver uno concreto, pulsar su nombre, si quieres ver todos, pulsar POST (hacia delante) o ANT (hacia atrs) y se vern en el siguiente orden: A B C D E F I H L SPH SPL PCH PCL F= S Z X AC X P C I=X X X IE M7.5 M6.5 M5.5 IE =Validacin de interrupciones, y las M son las mscaras de las interrupciones GO = Ejecuta el programa, visualiza el PC, introducir la direccin de comienzo, y pulsar EJEC, para interrumpir INIC, el programa puede finalizar con alguna instruccin como RST0, RST1 o JMP 0000H, se aconseja situar la pila al final (LXI SP. 1FFFH) EJEC =Ejecuta paso a paso, POST para pasar al siguiente paso INTR VECT = Se realiza la interrupcin 7.5, (RST 7.5), es un interruptor conectado directamente al pin 7 del 8085 (Ver interrupciones) E =Lee un programa desde el cassette C =Graba un programa al cassette

34

4.3 Interrupciones En las interrupciones vectorizadas, el micro salta a una direccin fijada, donde se trata a la interrupcin, hay de dos tipos: Interrupciones tipo software: RST0, RST1, RST2 .... RST7 Interrupciones tipo hardware: RST5.5, RST 6.5, RST7.5, INTR, TRAP (la interrupcin 5.5 es la que utiliza el teclado) En las interrupciones tipo hardware, es necesario que para que no tengan mscara, para quitarles las mscara se puede modificar el registro I, o con la instruccin SIM. Tambin hay que validarlas con la instruccin EI En la interrupcin 7.5 el 8085 salta a la direccin 00CEH, que en este entrenador esta en la ROM, y tiene grabado la siguiente tabla: 00CE C3 00CF CE 00D0 20 Es decir JMP 20CE, lo que significa que vuelve a saltar a la direccin 20CE y que pertenece a la RAM pequea 8155, que slo tienes 3 sitios libres, donde se puede poner un salto a otra direccin de tu programa entre la 1000 y la 1FFF Conclusin: si pulsas la tecla INT7.5 el programa salta a la direccin 20CE y slo tienes 3 sitios libres para poner lo que desees. 4.4 Grabar y leer programas desde una cinta de cassette Grabar: Situar la cinta en el lugar que deseas con el contador de cassette Conectar MIC del cassette con MIC del micro Pulsar C, con CoPr poner la direccin comienzo del programa, pulsar EJEC, y con FiPr poner la direccin final del programa, pulsar EJEC, con PrO introducir un n de programa entre la 00 hasta la FF Poner REC en el Cassette y pulsar EJEC despues de 5 vueltas aprox. cuando aparece en el monitor es que ya a terminado Leer: Posicionar la cinta en la posicin que se dej, para esto se tiene que llevar la cuenta. Pulsar E, con CODE (Comienzo destino) introducir la direcin de comienzo, pulsar EJEC con PrO introducir un n de programa entre la 00 hasta la FF poner Play, y pulsar EJEC, si sale . es que esta en lectura, si sale - es que ha acabado, volumen medio alto.

35

5 Prcticas 5.1 Prcticas para el manejo del entrenador Enunciado: Se realizar un programa que efectue la suma de los 10 primeros nmeros hexadecimales, es decir 1+2+3+4+5+6+7+8+9+A, el resultado da 37H. Solucin: Programa: Direcc. 1000 SP,1FFFH 1003 1005 1007 1008 1009 100C Cod. Maq. 31 FF 1F 3E 00 06 0A 80 SUMAR: 05 C2 07 10 CF Ensambl. LXI MVI A,00H MVI B,0AH ADD B DCR B JNZ SUMAR RST 1 ;fin

Realizarlo en el entrenador a travs del ordenador, y desde la consola, observar sin pulsar INIC pues borra los contenidos de todos los registros, como en el acumulador se ha almacenado un 37H Desde el ordenador hacer el fichero que se llame por ejemplo PRUEBA.ASM y ejecutar despus HACERHEX PRUEBA. (todo en el directorio 8085). Cargar el programa con el comando L, y ejecutar con G1000 (recordar que ORG 0000H). Desde la consola, ir metiendo los cdigos mquina en hexadecimal, con la tecla SME/ANT y ejecutar con GO 1000 y EJEC.

36

PRACTICA 11 PRCTICAS CON EL ENTRENADOR 8085 En esta prctica la intencin es programar con un mdulo que tenga un 8085 verdadero, y utilizar el PC como elemento til de programacin/grabacin. Los ejercicios van ordenados de menor a mayor complejidad, realzalos primero en una hoja aparte, discutindolo con tus compaeros de prctica, y realzalos en el ordenador, y ejecuta el fichero 'Batch' "HacerHex" para ensamblarlo, convertirlo en cdigo hexadecimal tipo Intel, y grabarlo al equipo. Ejemplo, si haces el programa en un fichero texto, lo grabas con extensin ASM, lo copias en un disco, y lo llevas al ordenado que est conectado con el mdulo 8085, si lo has llamado por ejem ejer.asm, y esta en la unidad a: tienes que ejecutar: HACERHEX A:EJER Luego en el mdulo, poner 1 como indicador de que se esta usando la linea COM2, pulsar L, y en NOMBRE DEL FICHERO=A:EJER, en OFFSET pulsar intro. Para ejecutarlo pulsar G1000 si has puesto ORG 0000H en tu porograma, si no, la direccin que has puesto, +1000. Tienes que comprobar que funcionan, y entregar los listados *.LST o *.ASM, no entregues una hoja por ejercicio, sino un listado donde estn todos los listados de los ejercicios para ahorrar papel. Ejercicios: 11.1.- Captar y visualizar una letra 11.2.- Sumar 2 nmeros y visualizarlos 11.3.- Hacer un mensaje intermitente. 11.4.- Hacer un contador 11.5.- Ejercicio de libre enunciado, tiene que ser original respecto a los dems grupos de prcticas, si no se te ocurren enunciados, consulta al profesor, imprime el listado *.ASM y crea una trasparencia para exponerlo a la clase y explicar a los dems qu has hecho y cmo, grbalo en el equipo y mustralo. . Este ejercicio es el que realmente punta. Cuando acabes con la exposicin, ensea todos los listados al profesor. (Esto se hace para obligar a que tengas los listados, quizs el da de maana los necesites)

37

6.- El semforo Tiene el siguiente esquema de cruces: Las esquinas se llaman S1, S2, S3 y S4 con sus correspondientes semforos Gx, Fx y Px

Cmo se envian los valores a los semforos?, cada puerto controla una esquina, y como en un golpe de reloj no se pueden enviar a todos, se hacen en 4 golpes golpe de reloj puerto 1 S1 PUERTO C 8255 OUT 3AH 2 S2 PUERTO A 8255 OUT 38H F2 VNR 3 S3 PUERTO B 8255 OUT 39H P3 G3 F3 4 S4 PTO B DEL 8155 OUT 22H P4 G4 F4 VNR

semfo P1 G1 F1 P2 G2 ro bits VR VNR VNR VR VNR

VR VNR VNR VR VNR

El puerto A del 8155 (OUT 21H) se utilizar como entrada para poner los semforos en intermitencia. Cmo se envan estos valores? Al inicio del programa hay que insertar el siguiente cdigo: MVI A, 80H ;carcter de control del 8255 OUT 3BH ;salida al control 8255 MVI A, 02H ;carcter de control del 8155 OUT 20H ;salida al control 8155 Conexiones :

38

PROGRAMA SEMFORO:
;$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ;PROGRAMA PARA CONTROLAR EL SEMAFORO DE LA SERIE ;uP-2000 (SEMAFORO-2000) ;CONEXIONES A REALIZAR ;PB8155 ---->S4 ;PB8255 ---->S3 ;PA8255 ---->S2 ;PC8255 ---->S1 ;PA0-8155 --->INTERRUPTOR S0 DE LA TARJETA ;$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ CONTWO8255 EQU 80H ;CONTROL WORD 8255 CONTWO8155 EQU 02H ;CONTROL WORD 8155 PCO8255 EQU 3BH ;PUERTA CONTROL 8255 PA8255 EQU 38H ;PA DEL 8255 PB8255 EQU 39H ;PB DEL 8255 PC8255 EQU 3AH ;PC DEL 8255 PCO8155 EQU 20H ;PUERTA CONTROL 8155 PA8155 EQU 21H ;PA DEL 8155 PB8155 EQU 22H ;PB DEL 8155 GTHEX EQU 037DH ;CAPTAR TECLADO UPDAD EQU 04C9H ;VISUALIZACION ADDRES OUTPT EQU 041DH ;VISULIZACION UPDDT EQU 04D5H ;VISULIZACION DATOS DELAY EQU 0B74H ;RETARDO 1 MSG. ; ;$$$$$$$$$$$$$$$$$$$$$INICIO DEL PROGRAMA $$$$$$$$$$$$$$$$$$$$$$$$$ ;inicializar las variables ORG 0000H LXI SP,1FF0H ;INICIALIZAR LA PILA MVI OUT MVI OUT XRA STA ;programa INIC: CONT: LXI IN ANI CNZ SHLD MOV CPI JZ LDA CPI JZ MVI STA CALL CALL A,CONTWO8255 PCO8255 A,CONTWO8155 PCO8155 A FLIN H,TABLA PA8155 01H TOINTE PTTAB A,M 0FFH INIC FLIN 01H INTER A,01H FLIN SATAB TEMP1 ;FLAG DE INTERMITENCIA ;INIC 8255 ;TODAS COMO SALIDAS

;APUNTAR A TABLA ;LEER ESTADO INTERRUP ;PONER INTERMITENTE ;GUARDAR PTR TABLA ;TRAER VALOR ;ES ULTIMO? ;TRAER FALG INTER ;ES 1? ;PONER A 1 ;SACAR VALORES ;TEMPORIZAR

39

; incrementar la tabla 4 lugares INCRE: LHLD PTTAB ;TRAER PUNTERO INX H ;APUNTAR A LOS SIGUI INX H INX H INX H SHLD PTTAB ;GUARDAR PUNTERO JMP CONT ;tointe mantiene los semforos en intermitencia TOINTE: MVI A,01H ;PONER FLAG DE INTER STA FLIN LXI H,TABIN ;APUNTAR A TAB INTERMI RET ;Inter hace 6 intermitencias del semforo encendido Verde antes de cambiar a rojo INTER: XRA A ;PONER FLIN A CERO STA FLIN MVI INTER1: CALL CALL CALL CALL DCR JNZ B,06H SATAB TEMP2 SATAIN TEMP2 B INTER1 ;NUMERO DE INTERMI ;SACAR VALORES ;RETARDO ;PONER NARANJAS A "0" ;RETARDO ;ES ULTIMO?

JMP INCRE ;Satab saca los valores de la tabla por las respectivas puertas conectadas a los semforos SATAB: LHLD PTTAB ;TRAER PUNTERO TABLA MOV A,M ;TRAER VALOR OUT PC8255 INX H MOV A,M OUT PA8255 INX MOV OUT INX MOV OUT H A,M PB8255 H A,M PB8155 ;TRAER SIGUIENTE

;TRAER SIGIENTE

;TRAER SIGUIENTE

RET ;Satain saca la tabla de intermitencias SATAIN: LHLD PTTAB MOV A,M ANI 6DH OUT PC8255 INX MOV ANI OUT INX MOV ANI OUT H A,M 6DH PA8255 H A,M 6DH PB8255

;TRAER PUNTERO TAB ;PONER A "0" LOS NARAN

40

INX MOV ANI OUT

H A,M 6DH PB8155

RET ;Temp1 y temp2 son temporizaciones TEMP1: LXI D,19FFH ;VALOR DE RETARDO TEM: CALL DELAY ;RETARDO 1 MSG. DCX D MOV A,E ORA D JNZ TEM RET ; TEMP2: LXI D,2FFH ;VALOR DE RETARDO CALL TEM RET ;$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ;TABLA DE SALIDAS A SACAR TABLA: DB DB ;TANTAS LINEAS COMO QUERIS DB DB ;LAS TABLAS ES LO QUE DB ;TENEIS QUE HACER, FINALIZAR CON 0FFH DB DB ;$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ;TABLA DE INTERMITENCIAS DB ;TAMBIN ESTAS 1 LINEA, FINALIZAR CON 0FFH DB ;$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ; ;$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ ;POSICIONES DE MEMORIA RESERVADAS ; FLIN: DS 1 ;FLAG DE INTERMITENCIA PTTAB: DS 2 ;PUNTERO DE TABLA ; END TABIN:

PRCTICA 12

SEMFORO

En esta prctica tienes que hacer un programa que controle un cruce de semforos como el del taller, las reglas son libres, pero tiene que ser coherente, y razonado, como antes ser original respecto a los dems grupos de prcticas, imprime el listado *. LST y fotocpialo en una trasparencia para exponerlo a la clase y explicar a los dems qu has hecho y cmo, grbalo en el equipo y mustralo junto con el cruce. FIN PRCTICAS

41

Você também pode gostar