INTERRUPT CONTROL UNIT

External interrupt acknowledge cycles must be run for every maskable interrupt. Therefore, the interrupt response time for every interrupt will be 55 clocks, as shown in Figure 8-21.

Interrupt presented to Interrupt Control Unit

Clocks

 

Interrupt presented to external 82C59A

5

 

 

INTA

4

 

IDLE

2

 

INTA

4

 

IDLE

5

 

READ IP

4

 

IDLE

3

 

READ CS

4

 

IDLE

4

 

PUSH FLAGS

4

 

IDLE

3

 

PUSH CS

4

 

PUSH IP

4

First instruction fetch

IDLE

5

 

 

from interrupt routine

Total 55

A1200-A0

Figure 8-21. Interrupt Response Time in Slave Mode

8.5.3Initializing the Interrupt Control Unit for Master Mode

Follow these steps to initialize the Interrupt Control Unit for Master mode.

1.Determine which interrupt sources you want to use.

2.Determine whether to use the default priority scheme or devise your own.

3.Program the Interrupt Control register for each interrupt source.

For external interrupt pins, select edge or level triggering.

For INT0 or INT1, enable cascade mode, special fully nested mode, or both, if you wish to use them.

If you are using a custom priority scheme, program the priority level for each interrupt source.

4.Program the Priority Mask with a priority mask level, if you wish to mask interrupts based on priority. (The default is level seven, which enables all interrupt levels.)

8-30

Page 225
Image 225
Intel 80C186XL, 80C188XL user manual Inta Idle Read IP Read CS Push Flags Push CS Push IP