Interrupt Control Unit - Intel 80C188EC User Manual

Hide thumbs Also See for 80C188EC:
Table of Contents

Advertisement

INTERRUPT CONTROL UNIT

;We begin with a type 28h (Type 40) interrupt.
XOR
MOV
MOV
MOV
MOV
MOV
MOV
MOV
;The remainder of the vectors would be initialized similarly.
;The above code was chosen for clarity, not efficiency!
;Now we begin initialization of the 8259A modules ... ICW1 is first
MOV
XOR
MOV
OUT
;Now set base interrupt type at 28H for slave module in ICW2
MOV
MOV
OUT
;Slave ID is next in ICW3. The slave id must be 7.
MOV
MOV
OUT
;ICW4 completes the initialization
MOV
MOV
OUT
;The initialization of the slave 8259A module is done.
Example 8-1. Initializing the Interrupt Control Unit (Continued)
8-48
AX, AX
DS, AX
AX, OFFSET TIM0_HANDLER
BX, 28H*4
DS:[BX], AX
AX, SEG TIM0_HANDLER
BX, 28H*4+2
DS:[BX], AX
DX, SPICP0
AH, AH
AL, 10001B
DX, AL
DX, SPICP1
AL, 28H
DX, AL
DX, SPICP1
AL, 7
DX, AL
DX, SPICP1
AL, 1
DX, AL
;Clear AX
;Data seg points to vector table
;Store the offset of the handler
;Store segment of the handler
;ICW1 for the slave is
;accessed thru SPICP0
;Clear reserved bits
;Edge trigger, cascade mode,
;IC4 required
;ICW2 is accessed thru SPICP1
;Base type is 28H (Type 40)
;ICW3 is also thru SPICP1
;ID=7 always for slave module
;ICW4 is also thru SPICP1
;No special fully nested mode
;No AEOI mode factory test codes
;set correctly

Advertisement

Table of Contents
loading

This manual is also suitable for:

80c186ec

Table of Contents