From b112ea6c4500f084b58367cae60737516f4a2f22 Mon Sep 17 00:00:00 2001 From: LucianoDev Date: Tue, 5 May 2026 21:34:15 +0200 Subject: [PATCH] Fucking problem was the ckp isr not firing correctly (since now ckp only is processed once per cilinder --- Core/CAN_Libs/can_db.c | 3 ++- Core/Src/toothed_wheel.c | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Core/CAN_Libs/can_db.c b/Core/CAN_Libs/can_db.c index a15918e..69d3549 100644 --- a/Core/CAN_Libs/can_db.c +++ b/Core/CAN_Libs/can_db.c @@ -59,7 +59,7 @@ extern float Temp; extern float ME, MEPI, B_FB_KW, dFi, B_PHIAD; extern int16_t B_FB_NW; extern int16_t B_CKP_OFFSET; - +extern int8_t s_dfi_code; extern uint8_t cilCount, safetySHUTOFF; extern uint8_t inj_mode, request_syncout_activation, commitCKP_offset; extern uint8_t memWrite; @@ -156,6 +156,7 @@ const CanAddressEntry CAN_ANSWERS[] = { { 0x4C00, &actual_phi1, CAN_SYM_SX, &SCALE_DEG_KW, CAN_STORE_FLOAT }, { 0x5800, &real_eoi, CAN_SYM_SX, &SCALE_DEG_KW, CAN_STORE_FLOAT }, { 0x5A00, &target_eoi, CAN_SYM_SX, &SCALE_DEG_KW, CAN_STORE_FLOAT }, + { 0x4C01, &s_dfi_code, CAN_SYM_SX, NULL, CAN_STORE_S8 }, { 0x7A01, &fbkwStatus, CAN_SYM_UX, NULL, CAN_STORE_U16 }, { 0x7C01, &status2, CAN_SYM_UX, NULL, CAN_STORE_U16 }, diff --git a/Core/Src/toothed_wheel.c b/Core/Src/toothed_wheel.c index ae2f5f6..768bacc 100644 --- a/Core/Src/toothed_wheel.c +++ b/Core/Src/toothed_wheel.c @@ -394,7 +394,6 @@ void TW_CALC_FBKW_FEEDBACK(){ diffbot = FBKW_FEEDBACK_MIN - fb_1; difftop = fb_1 - FBKW_FEEDBACK_MAX; } - FBKW_CKP_ISR(); } @@ -422,6 +421,7 @@ void TW_CALC_FBKW_FEEDBACK(){ Timeout_ResetByIndex(13, TIM16->CNT); //si estan fuera de bounds da error. } + FBKW_CKP_ISR(); FBKW_FEEDBACK -= lpf_fb*(FBKW_FEEDBACK - new_fb - fbkw_offset);