Configure FreeRTOS Demo Project Interrupt Handlers
From EdWiki
Revision as of 08:42, 9 February 2017 by Jshankar (Talk | contribs) (Created page with "FreeRTOS requires the use of several hardware interrupts/peripherals to function, notably the SysTick feature for its RTOS tick and the software interrupt calls SVCall and Pen...")
FreeRTOS requires the use of several hardware interrupts/peripherals to function, notably the SysTick feature for its RTOS tick and the software interrupt calls SVCall and PendSV for its internal operation (or rather, how RTOS tasks perform system calls of the kernel).
First off, what functions does it provide for these interrupts? Check the portable port.c file:
All ARM projects include a special .c file for the Interrupt Vector Table and C init runtime functions (reset vector, Fault, NMI, etc). This is "tm4c123gh6pm_startup_ccs_gcc.c" in our case.
Let's declare those interrupt handler functions with the "extern" keyword in our vector table file:
Then, place those function names (pointers to those functions) in the correct slots in the interrupt vector table itself: