Actions

EmSys

Difference between revisions of "Configure FreeRTOS Demo Project Interrupt Handlers"

From EdWiki

(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...")
(No difference)

Revision as of 08:42, 9 February 2017

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:

port.c

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:

IRQ Handlers

Then, place those function names (pointers to those functions) in the correct slots in the interrupt vector table itself:

IRQ Handlers