// // Created by cfif on 14.07.2026. // #ifndef HVAC_M7_HARDFAULT_H #define HVAC_M7_HARDFAULT_H #include "stdint.h" typedef enum { HARD_RESET_HARD_FAULT = 0x1, HARD_RESET_STACK_OVERFLOW = 0x2, HARD_RESET_FREERTOS_ASSERT = 0x3, HARD_RESET_API_ASSERT = 0x4 } eHardResetType; extern void HardReset_C_Handler(uint32_t *sp, uint32_t stack_flag, eHardResetType typeReset); #define SIZE_BUF_HARD_FAULT 32 extern __attribute__((section(".save_data"))) volatile uint32_t hardReset_addresses[32]; extern __attribute__((section(".save_data"))) volatile uint32_t hardReset_count; extern __attribute__((section(".save_data"))) volatile uint32_t hardReset_type; extern __attribute__((section(".save_data"))) volatile uint32_t hardReset_magic; #endif //HVAC_M7_HARDFAULT_H