20.22 Fixed Vector/Exception Vector Information (interrupt_fvector[])
Here, fixed vector table of the RXv1 architecture (address from 0xFFFFFF80 to 0xFFFFFFFF) / exception vector table of RXv2 architecture is defined.
Not only interrupt handler address but also the endian select register, etc., are included in fixed vector table/exception vector table.
In the RI600PX, the vector number is allocated according to the vector address as shown in Table 20-10. The Table 20-10 also shows the setting of the vector to which the definition is omitted.
Note, the content of fixed vector table/exception vector table is different in each MCU. For details, refer to the hardware manual of the MCU used.
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.
1
The vector address in Table 20-10 is the address of fixed vector table in RXv1 architecture.
The address of exception vector table in RXv2 architecture is decided by EXTB register. The initial value of EXTB register at the time of reset is same as fixed vector table in RXv1 architecture. Refer to "FIX_INTERRUPT_VECTOR section" in section 2.6.4.
2
Do not define a handler to the vector-21. If defined, the access exception handler never be initiated.
|
interrupt_fvector[ <1. Vector number> ] { entry_address = <2. Interrupt handler entry address (entry_addreess)>; pragma_switch = <3. Switch passed to pragma directive (pragma_switch)>; }; |
- Description
Define the starting function of the interrupt handler or the set value to fixed vector/exception vector.
Define the starting function of the interrupt handler or the set value to fixed vector/exception vector.
- 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.
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 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.
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.