La palabra de comando de 8259 se divide en dos partes:
- Palabras de comando de inicialización (ICW)
- Palabras de comando de operación (OCW)
Palabras de comando de inicialización (ICW):
- ICW se da durante la inicialización de 8259, es decir, antes de que comience a funcionar.
- Los comandos ICW 1 e ICW 2 son obligatorios para la inicialización.
- El comando ICW 3 se da durante una configuración en cascada.
- Si se necesita ICW 4 , entonces se especifica en ICW 1 .
- El orden de secuencia para dar los comandos ICW es fijo, es decir, ICW 1 se da primero y luego ICW 2 y luego ICW 3 .
- Ninguno de los comandos ICW puede repetirse, pero todo el proceso de inicialización puede repetirse si es necesario.
Palabras de comando de operación (OCW):
- OCW se da durante la operación de 8259, es decir, el microprocesador comienza a usar 8259.
- Los comandos OCW no son obligatorios para 8259.
- El orden de secuencia para dar comandos OCW no es fijo.
- Los comandos OCW se pueden repetir.
Secuencia de inicialización de 8259:
Comando ICW1 :
- La palabra de control se reconoce como ICW 1 cuando A 0 = 0 y D 4 = 1.
- Tiene los bits de control para el modo de activación de borde y nivel, modo único/en cascada, intervalo de dirección de llamada y si se requiere ICW4 o no.
- Las líneas de dirección A 7 a A 5 se utilizan para direcciones de vector de interrupción.
Cuando se carga el ICW 1 , las inicializaciones realizadas son:
- El circuito de detección de flanco se restablece porque, de forma predeterminada, la interrupción 8259 se activa por flanco.
- Se borra el registro de máscara de interrupción.
- IR7 está asignado a la prioridad 7.
- La dirección del modo esclavo se asigna como 7.
- Cuando D 0 = 0, esto significa que no se requiere el comando IC 4 . Por lo tanto, las funciones utilizadas en IC4 se restablecen.
- El modo de máscara especial se restablece y la lectura de estado se asigna a IRR.
Comando ICW2 :
- La palabra de control se reconoce como ICW 2 cuando A 0 = 1.
- Almacena la información sobre la dirección del vector de interrupción.
- En el sistema basado en 8085, los bits A15 a A 8 de la palabra de control se utilizan para direcciones de vector de interrupción.
- En el sistema basado en 8086, se insertan los bits T 6 a T 3 en lugar de A 15 a A 8 y A 10 a A 8 para seleccionar el nivel de interrupción, es decir, 000 para IR 0 y 111 para IR 7 .
ICW 3 :
La palabra de comando ICW 3 se usa cuando hay más de un 8259 presente en el sistema, es decir, cuando el bit SNGL en ICW 1 es 0, cargará un registro esclavo de 8 bits.
ICW 4 :
- Cuando AEOI = 1, se selecciona el fin automático del modo de interrupción.
- Cuando SFMN = 1, se selecciona un modo especial totalmente anidado.
- cuando BUF = 0, entonces se usa el modo sin búfer (es decir, M/S no importa) y cuando M/S = 1, entonces 8259 es maestro, de lo contrario es esclavo.
- cuando µPM = 1, entonces se realizan 8086 operaciones, de lo contrario se realizan 8085 operaciones.
Palabra de comando operativo (OCW):
OCW 1:
se utiliza para configurar y restablecer los bits de máscara en IMR (registro de máscara de interrupción). M 7 – M 0 describe 8 bits de máscara
OCW 2 :
se utiliza para seleccionar el modo de funcionamiento del 8259. Aquí, L 2 a L 0 se utilizan para describir el nivel de interrupción en el que se debe realizar la acción.
Las operaciones detalladas se describen en el siguiente diagrama.
OCW 3 –
- Cuando el bit ESMM (Habilitar modo de máscara especial) está configurado, entonces el bit SMM no importa. Si SMM = 1 y ESMM = 1, entonces 8259 entrará en modo de máscara especial.
- Si ESMM = 1 y SMM = 0, el 8259 volverá al modo de máscara normal.
- RR y RIS se utilizan para dar el comando de registro de lectura.
- P = 1 se utiliza para el comando de sondeo.
Publicación traducida automáticamente
Artículo escrito por goutamnagpal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA