El microprocesador 8085

por Dario Alejandro Alpern

Introducción

El siguiente microprocesador creado por la empresa Intel fue el 8085 en 1977. La alimentación es única: requiere sólo +5V. Esto se debe a la nueva tecnología utilizada para la fabricación llamada HMOS (High performance N-channel MOS) que además permite una mayor integración, llegando a la VLSI (Very Large Scale of Integration o muy alta escala de integración) con más de diez mil transistores (el 8085 no es VLSI, pero sí el 8088, como se verá más adelante). Tiene incorporado el generador de pulsos de reloj con lo que sólo hace falta un cristal de cuarzo y un par de capacitores externos (para el 8080 se necesitaba el circuito integrado auxiliar que lleva el código 8224). Además está mejorado en lo que se refiere a las interrupciones. Incluye las 74 instrucciones del 8080 y posee dos adicionales (RIM y SIM) referidas a este sistema de interrupciones y a la entrada y salida serie. El bus de datos está multiplexado con los ocho bits menos significativos del bus de direcciones (utiliza los mismos pines para ambos buses), con lo que permite tener más pines libres para el bus de control del microprocesador (el 8080 necesitaba un integrado especial, el 8228, para generar el bus de control). Intel produjo ROMs, RAMs y chips de soporte que tienen también el bus multiplexado de la misma manera que el microprocesador. Todos estos integrados forman la familia MCS-85.

Debido a la gran densidad de integración comparado con el 8080, se utilizó mucho este microprocesador en aplicaciones industriales. Sin embargo, para aplicaciones de computación de uso general, se extendió más el uso del microprocesador Z-80 como se indicó en el apartado referente al 8080.

Interrupciones

El microprocesador 8085 posee un complejo y completo sistema de interrupciones. Esta uP posee cinco terminales destinados al tratamiento de interrupciones.

Recordemos que una interrupción es un artificio hardware/software por el cual es posible detener el programa en curso para que, cuando se produzca un evento predeterminado, después de concluir la instrucción que está ejecutando, efectúe un salto a una determinada subrutina en donde se efectuará el tratamiento de la interrupción; una vez acabado éste, el uP continúa con la instrucción siguiente del programa principal.

Así pues, el 8085 dispone de tres formas diferentes de tratar las interrupciones que le llegan por los citados cinco terminales. Los nombres de estos cinco terminales son:

Nivel de prioridadNombre de la interrupciónValor leído en el bus de datosDirección de la subrutina en hexadecimal
Mayor prioridadTRAPNo importa0024
-RST 7.5003C
-RST 6.50034
-RST 5.5002C
Menor prioridadINTR110001110000
110011110008
110101110010
110111110018
111001110020
111011110028
111101110030
111111110038

Control de entrada/salida serie

Este microprocesador posee dos terminales denominados SID (Serial Input Data) y SOD (Serial Output Data). Estos terminales se pueden usar con propósitos generales. Por ejemplo el terminal SID se puede conectar a un interruptor y el SOD a un LED (a través de una compuerta inversora externa). Para leer el estado del terminal SID se ejecuta la instrucción RIM, con lo que se puede leer en el bit 7 del acumulador el estado de dicho terminal.

Para enviar un dato por el terminal SOD se ejecuta la instrucción SIM, donde el bit 7 del acumulador debe tener el valor a poner en el terminal, y el bit 6 debe estar a uno.

Conjunto de instrucciones del 8085

Aparte de las 74 instrucciones del 8080, este procesador posee dos instrucciones más.

Terminales (pinout) del 8085

Este microprocesador estaba encapsulado en el formato DIP (Dual Inline Package) de 40 patas (veinte de cada lado). La distancia entre las patas es de 0,1 pulgadas (2,54 milímetros), mientras que la distancia entre patas enfrentadas es de 0,6 pulgadas (15,32 milímetros).

Nótese en el gráfico el semicírculo que identifica la posición de la pata 1. Esto sirve para no insertar el chip al revés en el circuito impreso.

Las funciones de las 40 patas con las que se conecta el 8085 con el exterior son las siguientes:

PataNombreDescripción
1X1Entre estas dos patas se ubica el cristal
2X2
3RESET OUTPara inicializar periféricos
4SODSalida serie
5SIDEntrada serie
6TRAPEntrada de interrupción no enmascarable
7RST 7.5Entrada de interrupción (máxima prioridad)
8RST 6.5Entrada de interrupción
9RST 5.5Entrada de interrupción
10INTREntrada de interrupción (mínima prioridad)
11/INTAReconocimiento de interrupción
12AD0Bus de direcciones y datos multiplexado
13AD1Bus de direcciones y datos multiplexado
14AD2Bus de direcciones y datos multiplexado
15AD3Bus de direcciones y datos multiplexado
16AD4Bus de direcciones y datos multiplexado
17AD5Bus de direcciones y datos multiplexado
18AD6Bus de direcciones y datos multiplexado
19AD7Bus de direcciones y datos multiplexado
20GNDReferencia de tierra. Todas las tensiones se miden con respecto a este punto.
21A8Bus de direcciones
22A9Bus de direcciones
23A10Bus de direcciones
24A11Bus de direcciones
25A12Bus de direcciones
26A13Bus de direcciones
27A14Bus de direcciones
28A15Bus de direcciones
29S0Bit de estado del 8085
30ALECuando está uno indica que salen direcciones por las patas ADn, en caso contrario, entran o salen datos
31/WRCuando vale cero hay una escritura
32/RDCuando vale cero hay una lectura
33S1Bit de estado del 8085
34IO/MSi vale 1: operaciones con ports, si vale 0: operaciones con la memoria
35READYSirve para sincronizar memorias o periféricos lentos
36/RESET INCuando está a cero inicializa el 8085
37CLK OUTSalida del reloj para los periféricos
38HLDAReconocimiento de HOLD
39HOLDSirve para poner los buses en alta impedancia para el manejo de DMA (acceso directo a memoria)
40VCCtensión de alimentación: +5Vdc

Nedstat Counter