| Electronic Components Datasheet Search |
|
STR720 Datasheet(PDF) 54 Page - STMicroelectronics |
|
|
|||||||||||||||||||||||||||||
STR720 Datasheet(HTML) 54 Page - STMicroelectronics |
|
54 / 401 page ![]() STR720 - ENHANCED INTERRUPT CONTROLLER (EIC) 54/401 Figure 8. Nested interrupt request sequence example The IPR is a read/clear register, so writing a ‘0’ has no effect, while writing a ‘1’ reset the related bit. Therefore refrain from using read-modify instructions to avoid corruption of the IPR status. Dynamic priority level modification: the main program and routines can be specifically prioritized. Since CIPR is a read/write register, it is possible to modify dynamically the current priority value during program execution. This means that a critical section can have a higher priority with respect to other interrupt requests. A subsequent lowering of the priority is allowed only down to the initial level of interrupt routine. Such initial priority level has been, of course, conveniently stored inside the EIC hardware stack. Note that it is likewise possible to even manipulate the Main Program execution priority. Maximum depth of nesting: no more than 15 routines can be nested (one for each priority level, from 1 to 15). If an interrupt routine at level N is being serviced, no other Interrupts located at level N can interrupt it. This implies a maximum number of 16 nested levels including the main program priority level. Priority level 0: Interrupt requests at level 0, even if enabled, cannot be acknowledged, as their priority cannot be strictly higher than the CIPR value. The pending bit in the IPR (Interrupt Pending Register) is anyway set. Such a feature comes useful in a totally interrupt polled environment. The whole interrupting process is constituted by the following subsequent major steps: INTERRUPT 0 HAS PRIORITY LEVEL 0 INTERRUPT 1 HAS PRIORITY LEVEL 1 INTERRUPT 2 HAS PRIORITY LEVEL 2 INTERRUPT 3 HAS PRIORITY LEVEL 3 INTERRUPT 4 HAS PRIORITY LEVEL 4 INTERRUPT 5 HAS PRIORITY LEVEL 5 INTERRUPT 6 HAS PRIORITY LEVEL 6 INTERRUPT 7 HAS PRIORITY LEVEL 7 INT. 1 INT. 5 INT. 2 7 6 5 4 3 1 2 0 PRIORITY LEVEL MAIN PROGRAM MAIN PROGRAM CPL set to 0 CPL = 1 INT. 5 CPL = 2 INT. 3 CPL = 3 CPL = 5 INT. 3 CPL = 3 INT. 4 CPL = 4 INT. 5 CPL = 5 INT. 7 CPL = 5 INT. 2 CPL = 2 CPL = 0 INT. 2 INT. 5 INT. 3 INT. 4 INT. 7 INT. 1 INT. 5 re-enable interrupt re-enable interrupt re-enable interrupt re-enable interrupt re-enable interrupt re-enable interrupt 1 |
|
Link URL |
| Does ALLDATASHEET help your business so far? [ DONATE ] |
About Alldatasheet | Advertisement | Contact us | Privacy Policy | Link to Datasheet | Link Exchange | Manufacturer List All Rights Reserved©Alldatasheet.com |
| Russian : Alldatasheetru.com | Korean : Alldatasheet.co.kr | Spanish : Alldatasheet.es | French : Alldatasheet.fr | Italian : Alldatasheetit.com Portuguese : Alldatasheetpt.com | Polish : Alldatasheet.pl | Vietnamese : Alldatasheet.vn Indian : Alldatasheet.in | Mexican : Alldatasheet.com.mx | British : Alldatasheet.co.uk | New Zealand : Alldatasheet.co.nz |
|
Family Site : ic2ic.com |
icmetro.com |