10.8 Interrupt Vector Tables for PIC32 MCUS Featuring Dedicated Programmable Variable Offsets

Some PIC32 families feature variable offsets for vector spacing. This feature allows the interrupt vector spacing to be configured according to application needs. A specific interrupt vector offset can be set for each vector using its associated OFFxxx register. For details on the interrupt vector-table variable offset feature, refer to the PIC32 Family Reference Manual (DS61108) and also the data sheet for your specific PIC32 MCU.

The XC32 toolchain provides a device-specific default linker script and a corresponding object file that work together with the default runtime startup code. The following table shows the files, located in /pic32mx/lib/proc/devicename, that are used to initialized vector-table offset registers.

Filename Description
devicename.ld Device linker script
vector_offset_init.o Vector Offset initialization
crt0_boot_isa.o Device runtime startup code