| поискавой системы для электроныых деталей |
|
PIC17C44-08/P датащи(PDF) 25 Page - Microchip Technology |
|
|
|||||||||||||||||||||||||||||
PIC17C44-08/P датащи(HTML) 25 Page - Microchip Technology |
|
25 / 240 page ![]() © 1996 Microchip Technology Inc. DS30412C-page 25 PIC17C4X 5.4 Interrupt Operation Global Interrupt Disable bit, GLINTD (CPUSTA<4>), enables all unmasked interrupts (if clear) or disables all interrupts (if set). Individual interrupts can be disabled through their corresponding enable bits in the INTSTA register. Peripheral interrupts need either the global peripheral enable PEIE bit disabled, or the specific peripheral enable bit disabled. Disabling the peripher- als via the global peripheral enable bit, disables all peripheral interrupts. GLINTD is set on reset (interrupts disabled). The RETFIE instruction allows returning from interrupt and re-enable interrupts at the same time. When an interrupt is responded to, the GLINTD bit is automatically set to disable any further interrupt, the return address is pushed onto the stack and the PC is loaded with interrupt vector. There are four interrupt vectors to reduce interrupt latency. The peripheral interrupt vector has multiple interrupt sources. Once in the peripheral interrupt service rou- tine, the source(s) of the interrupt can be determined by polling the interrupt flag bits. The peripheral interrupt flag bit(s) must be cleared in software before re- enabling interrupts to avoid continuous interrupts. The PIC17C4X devices have four interrupt vectors. These vectors and their hardware priority are shown in Table 5-1. If two enabled interrupts occur “at the same time”, the interrupt of the highest priority will be ser- viced first. This means that the vector address of that interrupt will be loaded into the program counter (PC). TABLE 5-1: INTERRUPT VECTORS/ PRIORITIES Address Vector Priority 0008h External Interrupt on RA0/ INT pin (INTF) 1 (Highest) 0010h TMR0 overflow interrupt (T0IF) 2 0018h External Interrupt on T0CKI (T0CKIF) 3 0020h Peripherals (PEIF) 4 (Lowest) Note 1: Individual interrupt flag bits are set regard- less of the status of their corresponding mask bit or the GLINTD bit. Note 2: When disabling any of the INTSTA enable bits, the GLINTD bit should be set (disabled). Note 3: For the PIC17C42 only: If an interrupt occurs while the Global Inter- rupt Disable (GLINTD) bit is being set, the GLINTD bit may unintentionally be re- enabled by the user’s Interrupt Service Routine (the RETFIE instruction). The events that would cause this to occur are: 1. An interrupt occurs simultaneously with an instruction that sets the GLINTD bit. 2. The program branches to the Interrupt vector and executes the Interrupt Ser- vice Routine. 3. The Interrupt Service Routine com- pletes with the execution of the RET- FIE instruction. This causes the GLINTD bit to be cleared (enables interrupts), and the program returns to the instruction after the one which was meant to disable interrupts. The method to ensure that interrupts are globally disabled is: 1. Ensure that the GLINTD bit was set by the instruction, as shown in the follow- ing code: LOOP BSF CPUSTA, GLINTD ; Disable Global ; Interrupt BTFSS CPUSTA, GLINTD ; Global Interrupt ; Disabled? GOTO LOOP ; NO, try again ; YES, continue ; with program ; low |
|
ссылки URL |
| Вашему бизинису помогли Аллдатащит? [ DONATE ] |
Что такое Аллдатащит | реклама | контакт | Конфиденциальность | Ссылка на техническое описание | обмен ссыками | поиск по производителю 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 |