pic24hj16gp304 Microchip Technology Inc., pic24hj16gp304 Datasheet - Page 81

no-image

pic24hj16gp304

Manufacturer Part Number
pic24hj16gp304
Description
High-performance, 16-bit Microcontrollers
Manufacturer
Microchip Technology Inc.
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
pic24hj16gp304-E/ML
Manufacturer:
MICROCHIP
Quantity:
12 000
Part Number:
pic24hj16gp304-E/PT
Manufacturer:
MICROCHIP
Quantity:
12 000
Part Number:
pic24hj16gp304-E/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
pic24hj16gp304-H/ML
Manufacturer:
MICROCHIP
Quantity:
12 000
Part Number:
pic24hj16gp304-H/PT
Manufacturer:
MICROCHIP
Quantity:
12 000
Part Number:
pic24hj16gp304-I/ML
Manufacturer:
MICROCHIP
Quantity:
12 000
Part Number:
pic24hj16gp304-I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
pic24hj16gp304T-I/PT
Manufacturer:
Microchip Technology
Quantity:
10 000
6.4
6.4.1
To configure an interrupt source at initialization:
1.
2.
3.
4.
6.4.2
The method used to declare an ISR and initialize the
IVT with the correct vector address depends on the
programming language (C or Assembler) and the lan-
guage development toolsuite used to develop the appli-
cation.
In general, the user application must clear the interrupt
flag in the appropriate IFSx register for the source of
interrupt that the ISR handles. Otherwise, the program
will re-enter the ISR immediately after exiting the
routine. If the ISR is coded in assembly language, it
must be terminated using a RETFIE instruction to
unstack the saved PC value, SRL value and old CPU
priority level.
© 2007 Microchip Technology Inc.
Note:
Set the NSTDIS bit (INTCON1<15>) if nested
interrupts are not desired.
Select the user-assigned priority level for the
interrupt source by writing the control bits in the
appropriate IPCx register. The priority level will
depend on the specific application and type of
interrupt source. If multiple priority levels are not
desired, the IPCx register control bits for all
enabled interrupt sources can be programmed
to the same non-zero value.
Clear the interrupt flag status bit associated with
the peripheral in the associated IFSx register.
Set the interrupt enable control bit associated
with the source in the appropriate IECx register
to enable the interrupt source.
Interrupt Setup Procedures
INITIALIZATION
INTERRUPT SERVICE ROUTINE
At a device Reset, the IPCx registers are
initialized such that all user interrupt
sources are assigned to priority level 4.
PIC24HJ32GP202/204 and PIC24HJ16GP304
Preliminary
6.4.3
A Trap Service Routine (TSR) is coded like an ISR,
except that the appropriate trap status flag in the
INTCON1 register must be cleared to avoid re-entry
into the TSR.
6.4.4
All user interrupts can be disabled using this proce-
dure:
1.
2.
To enable user interrupts, the POP instruction can be
used to restore the previous SR value.
The DISI instruction provides a convenient way to dis-
able interrupts of priority levels 1-6 for a fixed period of
time. Level 7 interrupt sources are not disabled by the
DISI instruction.
Note:
Push the current SR value onto the software
stack using the PUSH instruction.
Force the CPU to priority level 7 by inclusive
ORing the value OEh with SRL.
TRAP SERVICE ROUTINE
INTERRUPT DISABLE
Only user interrupts with a priority level of
7 or lower can be disabled. Trap sources
(level 8-level 15) cannot be disabled.
DS70289A-page 79

Related parts for pic24hj16gp304