Calling the REXIS Exception Handlers

The exception / reset vector table, typically defined in the startup file, must be modified to call the REXIS exceptions:

 

EXCEPTIONS

REXIS HANDLERS

SysTick timer

rexis_SysTick_Handler

PendSV

rexis_PendSV_Handler

SVC

rexis_SVC_Handler

 

For example, this is an excerpt of a typical startup file created by one of the JumpStart C++ for Cortex project wizards:

 

    .section .isr_vector

    .align 2

    .globl __isr_vector

__isr_vector:

    .long    __stack_end__         /* Top of Stack */

    .long    Reset_Handler         /* -3 - Reset Handler */

    .long    NMI_Handler           /* -2 - NMI Handler */

    .long    HardFault_Handler     /* -1 - Hard Fault Handler */

    .long    MemManage_Handler     /*  0 - MPU Fault Handler */

    .long    BusFault_Handler      /*  1 - Bus Fault Handler */

    .long    UsageFault_Handler    /*  2 - Usage Fault Handler */

    .long    0                     /* Reserved */

    .long    0                     /* Reserved */

    .long    0                     /* Reserved */

    .long    0                     /* Reserved */

    .long    rexis_SVC_Handler     /*  3 - SVCall Handler */

    .long    DebugMon_Handler      /*  4 - Debug Monitor Handler */

    .long    0                     /* Reserved */

    .long    rexis_PendSV_Handler  /*  5 - PendSV Handler */

    .long    rexis_SysTick_Handler /*  6 - SysTick Handler */