|
ICARUS OS (Intelligent Cooperative Architecture for Real-time Unified Systems) 0.1.0
Preemptive Real-Time Operating System for ARM Cortex-M7
|
Interrupt Service Routines. More...
#include "bsp/config.h"#include "stm32h7xx_it.h"#include <stdbool.h>#include "icarus/config.h"#include "icarus/svc.h"#include "st7735.h"#include "lcd.h"Go to the source code of this file.
Functions | |
| void | NMI_Handler (void) |
| This function handles Non maskable interrupt. | |
| void | HardFault_Handler (void) |
| This function handles Hard fault interrupt. | |
| void | MemManage_Handler (void) |
| This function handles Memory management fault. | |
| void | BusFault_Handler (void) |
| This function handles Pre-fetch fault, memory access fault. | |
| void | UsageFault_Handler (void) |
| This function handles Undefined instruction or illegal state. | |
| void | SVC_Handler (void) |
| This function handles System service call via SWI instruction. | |
| void | DebugMon_Handler (void) |
| This function handles Debug monitor. | |
| void | PendSV_Handler (void) |
| This function handles Pendable request for system service. | |
| void | SysTick_Handler (void) |
| This function handles System tick timer. | |
| void | OTG_FS_IRQHandler (void) |
| This function handles USB On The Go FS global interrupt. | |
Variables | |
| PCD_HandleTypeDef | hpcd_USB_OTG_FS |
| volatile uint32_t | g_memmanage_fault_count = 0 |
| volatile uint32_t | g_last_fault_addr = 0 |
| volatile uint32_t | g_last_fault_pc = 0 |
Interrupt Service Routines.
Copyright (c) 2025 STMicroelectronics. All rights reserved.
This software is licensed under terms that can be found in the LICENSE file in the root directory of this software component. If no LICENSE file comes with this software, it is provided AS-IS.
Definition in file stm32h7xx_it.c.
| void BusFault_Handler | ( | void | ) |
This function handles Pre-fetch fault, memory access fault.
Definition at line 232 of file stm32h7xx_it.c.
References E3_GPIO_Port, and E3_Pin.
| void DebugMon_Handler | ( | void | ) |
This function handles Debug monitor.
Definition at line 303 of file stm32h7xx_it.c.
| void HardFault_Handler | ( | void | ) |
This function handles Hard fault interrupt.
Definition at line 97 of file stm32h7xx_it.c.
References E3_GPIO_Port, and E3_Pin.
| void MemManage_Handler | ( | void | ) |
This function handles Memory management fault.
If the fault is a recoverable data access violation (DACCVIOL) from unprivileged thread mode (PSP), we advance the stacked PC by 2 bytes (Thumb instruction) and return so the task continues. The task can then check g_memmanage_fault_count to detect it.
If the fault is not recoverable (instruction fetch, or from MSP), fall through to the 4-blink halt.
Definition at line 159 of file stm32h7xx_it.c.
References E3_GPIO_Port, E3_Pin, g_last_fault_addr, g_last_fault_pc, and g_memmanage_fault_count.
| void NMI_Handler | ( | void | ) |
This function handles Non maskable interrupt.
Definition at line 81 of file stm32h7xx_it.c.
| void OTG_FS_IRQHandler | ( | void | ) |
This function handles USB On The Go FS global interrupt.
Definition at line 378 of file stm32h7xx_it.c.
References hpcd_USB_OTG_FS.
| void PendSV_Handler | ( | void | ) |
This function handles Pendable request for system service.
Definition at line 328 of file stm32h7xx_it.c.
| void SVC_Handler | ( | void | ) |
This function handles System service call via SWI instruction.
Definition at line 288 of file stm32h7xx_it.c.
| void SysTick_Handler | ( | void | ) |
This function handles System tick timer.
Definition at line 346 of file stm32h7xx_it.c.
References current_task_ticks_remaining, ICARUS_TICKS_PER_TASK, os_running, os_tick_count, and scheduler_enabled.
| void UsageFault_Handler | ( | void | ) |
This function handles Undefined instruction or illegal state.
Definition at line 258 of file stm32h7xx_it.c.
References E3_GPIO_Port, and E3_Pin.
| volatile uint32_t g_last_fault_addr = 0 |
Definition at line 144 of file stm32h7xx_it.c.
Referenced by MemManage_Handler().
| volatile uint32_t g_last_fault_pc = 0 |
Definition at line 145 of file stm32h7xx_it.c.
Referenced by MemManage_Handler().
| volatile uint32_t g_memmanage_fault_count = 0 |
Definition at line 141 of file stm32h7xx_it.c.
Referenced by MemManage_Handler().
|
extern |
Referenced by OTG_FS_IRQHandler().