20.21 Relocatable Vector Information (interrupt_vector[])
Here, each interrupt handler for relocatable vector of the RX MCU is defined.
If any interrupt occurs whose vector number is not defined here, the system goes down.
Note, the cfg600px does not generate code to initialize the interrupt control registers, the causes of interrupts, etc. for the interrupts defined here. These initialization need to be implemented in the application.
Note Since the vector number from 1 to 8 are reserved by the RI600PX, do not define these vectors. And do not define the vectors which are reserved by the MCU specification.
Parentheses < >show the user input part.
- Description
Define the vector number.
- Definition format
Numeric value
- Definition range
From 0 to 255
- When omitting
Cannot be omitted.
2 ) Interrupt handler entry address (
entry_addreess)
- Description
Define the starting function of the interrupt handler.
- Definition format
Symbol
- When omitting
Cannot be omitted.
3 ) Kernel interrupt specification (
os_int)
- Definition format
Symbol
- Definition range
Select either of the following:
- When omitting
Cannot be omitted.
4 ) Switch passed to pragma directive (
pragma_switch)
- Description
The cfg600px outputs "#pragma interrupt" directive to handle the function specified by
entry_address as a interrupt function to the system information header file kernel_id.h.
The switches passed to this pragma directive should be specified for
pragma_switch.
- Definition format
Symbol
- Definition range
The following can be specified. To specify multiple choices, separate each with a comma. However, "ACC" and "NOACC" cannot be specified at the same time.
E: The "enable" switch that permits a multiple interrupt is passed.
F: The "fint" switch that specifies a fast interrupt is passed. Note, a fast interrupt must be handled as non-kernel interrupt (os_int = NO).
S: The "save" switch that limits the number of registers used in the interrupt handler is passed.
ACC: The "acc" switch that guarantees the ACC register in the interrupt handler is passed.
NOACC: The "no_acc" switch that does not guarantee the ACC register in the interrupt handler is passed
- When omitting
No switches are passed.
Note 1 Refer to
Table 20-9 for the guarantee of the ACC register.
Table 20-9 Guarantee of the ACC Register
|
"-save_acc" compiler option
|
|
|
Neither "ACC" nor "NOACC" is not specified.
|
Neither "acc" nor "no_acc" switch is not passed.
The ACC register is not guaranteed.
|
Neither "acc" nor "no_acc" switch is not passed.
The ACC register is guaranteed.
|
|
The "acc" switch is passed.
The ACC register is guaranteed.
|
|
The "no_acc" switch is passed.
The ACC register is not guaranteed.
|
-
entry_address : The entry address of the base clock interrupt processing routine in the RI600PX