A inicialização de um chip microprocessador 8259A envolve várias etapas:
1.
Reinicialização ao ligar: Aplique energia ao chip 8259A. Isso inicializa o chip e o coloca em um estado conhecido.
2.
ICW1 (palavra de controle de inicialização 1): - Escreva 0x11 no Registro de Controle de Inicialização (ICW1) para iniciar o processo de inicialização.
- O primeiro bit (IC4) é colocado em 1, indicando um comando de inicialização.
- O segundo bit (IC3) também é definido como 1, permitindo que o 8259A aceite mais palavras de inicialização.
3.
ICW2 (palavra de controle de inicialização 2): - Escreva o número base do vetor de interrupção desejado em ICW2.
- Este valor especifica o ponto inicial dos vetores de interrupção. Por exemplo, se você escrever 0x20, as interrupções começarão no local de memória 0x20.
4.
ICW3 (palavra de controle de inicialização 3): - Escreva o modo cascata e o modo de interrupção desejados no ICW3.
- Bit 0 (IR0-IR2) especifica o modo de interrupção para solicitação de interrupção (IRQ) 0, 1 e 2.
- Bit 3 (ICW3-4) especifica se o chip opera em modo simples (ICW3-4 =0) ou em modo cascata (ICW3-4 =1).
5.
ICW4 (Palavra de controle de inicialização 4): - Escreva o modo de máscara especial desejado e o modo buffer/acionado por borda no ICW4.
- Bit 1 (SFNM) especifica o modo especial totalmente aninhado.
- Bit 3 (BUF/EDG) especifica se as interrupções são acionadas por borda (BUF/EDG =0) ou acionadas por nível (BUF/EDG =1).
6.
Ativar interrupções: - Escreva 0x00 no Interrupt Mask Register (IMR) para habilitar todas as interrupções. Isso permite que o 8259A comece a processar interrupções.
Estas etapas completam o processo de inicialização do chip microprocessador 8259A, configurando-o para lidar com solicitações de interrupção e roteá-las para as rotinas de serviço de interrupção apropriadas.