![Segger embOS-MPU Скачать руководство пользователя страница 34](http://html1.mh-extra.com/html/segger/embos-mpu/embos-mpu_manual_1233804034.webp)
34
CHAPTER 6
Interrupt handling API
6.8 Interrupt handling API
For the Cortex-M core, which has a built-in vectored interrupt controller, embOS delivers
additional functions to install and setup interrupt handler functions.
This API is not available in embOS library mode
OS_LIBMODE_SAFE
.
To handle interrupts with the vectored interrupt controller, embOS offers the following
functions:
6.8.1 OS_ARM_ISRInit()
Description
Used to initialize the interrupt handling.
Prototype
void
OS_ARM_ISRInit(OS_U32 IsVectorTableInRAM,
OS_U32 NumInterrupts,
OS_ISR_HANDLER* VectorTableBaseAddr[],
OS_ISR_HANDLER* RAMVectorTableBaseAddr[]);
Parameters
Parameter
Description
IsVectorTableInRAM
Defines whether a RAM vector table is used.
0: Vector table in Flash.
1: Vector table in RAM.
NumInterrupts
Number of implemented interrupts.
VectorTableBaseAddr
Flash vector table address.
RAMVectorTableBaseAddr
RAM vector table address.
Additional information
This function must be called before
OS_ARM_EnableISR()
,
OS_ARM_InstallISRHandler()
,
OS_ARM_DisableISR()
,
OS_ARM_ISRSetPrio()
can be called.
Example
void
OS_InitHW(
void
) {
OS_ARM_ISRInit(
1u
,
82
, (OS_ISR_HANDLER**)__Vectors, (OS_ISR_HANDLER**)pRAMVectTable);
OS_ARM_InstallISRHandler(OS_ISR_ID_TICK, OS_Systick);
OS_ARM_ISRSetPrio(OS_ISR_ID_TICK,
0xE0u
);
OS_ARM_EnableISR(OS_ISR_ID_TICK);
}
embOS-MPU for Cortex-M and IAR
© 2010-2020 SEGGER Microcontroller GmbH
Содержание embOS-MPU
Страница 4: ...4 embOS MPU for Cortex M and IAR 2010 2020 SEGGER Microcontroller GmbH ...
Страница 6: ...6 embOS MPU for Cortex M and IAR 2010 2020 SEGGER Microcontroller GmbH ...
Страница 21: ...Chapter 4 CPU and compiler specifics embOS MPU for Cortex M and IAR 2010 2020 SEGGER Microcontroller GmbH ...
Страница 44: ...Chapter 8 VFP support embOS MPU for Cortex M and IAR 2010 2020 SEGGER Microcontroller GmbH ...