From c169e14b59cc46b7e28aea046866b497d870f35a Mon Sep 17 00:00:00 2001 From: cfif Date: Mon, 8 Jun 2026 18:53:58 +0300 Subject: [PATCH] Commit --- CanSpamDebugTransmitter.c | 2 +- candb_dbg_fixed.c | 388 ++++++++++++++++++++++++-------------- candb_dbg_fixed.h | 32 +++- 3 files changed, 272 insertions(+), 150 deletions(-) diff --git a/CanSpamDebugTransmitter.c b/CanSpamDebugTransmitter.c index d63c461..d453c9a 100644 --- a/CanSpamDebugTransmitter.c +++ b/CanSpamDebugTransmitter.c @@ -404,7 +404,7 @@ static eTimeEventDbgTransmit isEventTransmitter(tCanSpamDebugTransmitter *env) { &env->canFrame.dlc, &env->ide); ++env->dbg_Sen_Incar_MultMsg_Idx; - if (env->dbg_Sen_Incar_MultMsg_Idx > 3) { + if (env->dbg_Sen_Incar_MultMsg_Idx > 1) { env->dbg_Sen_Incar_MultMsg_Idx = 0; } diff --git a/candb_dbg_fixed.c b/candb_dbg_fixed.c index 8a8c4c3..5f43bc2 100644 --- a/candb_dbg_fixed.c +++ b/candb_dbg_fixed.c @@ -11,7 +11,7 @@ // ============================================================================ // 1. dbg_Sen_Incar - Датчики в салоне (MultMsg_Idx) // ============================================================================ - +/* uint32_t Pack_dbg_Sen_Incar_candb_dbg2(dbg_Sen_Incar_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide) { uint8_t i; @@ -68,38 +68,77 @@ uint32_t Pack_dbg_Sen_Incar_candb_dbg2(dbg_Sen_Incar_t* _m, uint8_t* _d, uint8_t *_ide = (uint8_t) dbg_Sen_Incar_IDE; return dbg_Sen_Incar_CANID; } +*/ + +uint32_t Pack_dbg_Sen_Incar_candb_dbg2(dbg_Sen_Incar_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide) { + uint8_t i; + for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Sen_Incar_DLC); + _d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); + + dbg_Sen_Incar_Frame0_t *dbg_Sen_Incar_Frame0 = (dbg_Sen_Incar_Frame0_t *) _d; + + switch (_m->dbg_Sen_Incar_MultMsg_Idx) { + case 0: + + dbg_Sen_Incar_Frame0->dbg_Sen_Incar_MultMsg_Idx = _m->dbg_Sen_Incar_MultMsg_Idx; + dbg_Sen_Incar_Frame0->reserved0 = 0; + + dbg_Sen_Incar_Frame0->value1 = _m->dbg_Sen_Incar_FL_ro; + dbg_Sen_Incar_Frame0->value2 = _m->dbg_Sen_Incar_FR_ro; + dbg_Sen_Incar_Frame0->value3 = _m->dbg_Sen_Incar_RL_ro; + dbg_Sen_Incar_Frame0->value4 = _m->dbg_Sen_Incar_RR_ro; + + break; + + case 1: + dbg_Sen_Incar_Frame0->dbg_Sen_Incar_MultMsg_Idx = _m->dbg_Sen_Incar_MultMsg_Idx; + dbg_Sen_Incar_Frame0->reserved0 = 0; + + dbg_Sen_Incar_Frame0->value1 = _m->dbg_Sen_Incar_Raw_FL_ro; + dbg_Sen_Incar_Frame0->value2 = _m->dbg_Sen_Incar_Raw_FR_ro; + dbg_Sen_Incar_Frame0->value3 = _m->dbg_Sen_Incar_Raw_RL_ro; + dbg_Sen_Incar_Frame0->value4 = _m->dbg_Sen_Incar_Raw_RR_ro; + break; + + } + + *_len = (uint8_t) dbg_Sen_Incar_DLC; + *_ide = (uint8_t) dbg_Sen_Incar_IDE; + return dbg_Sen_Incar_CANID; +} + + // ============================================================================ // 2. dbg_DiffBlr_ValveOpen - Открытие клапанов DiffBlr (MultMsg_Idx) // ============================================================================ -uint32_t Pack_dbg_DiffBlr_ValveOpen_candb_dbg2(dbg_DiffBlr_ValveOpen_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide) -{ +uint32_t Pack_dbg_DiffBlr_ValveOpen_candb_dbg2(dbg_DiffBlr_ValveOpen_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide) { uint8_t i; for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_DiffBlr_ValveOpen_DLC); _d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); - _d[0] |= (uint8_t)(_m->Logic_ValveOpen_MultMsg_Idx & 0x03); + _d[0] |= (uint8_t) (_m->Logic_ValveOpen_MultMsg_Idx & 0x03); - switch(_m->Logic_ValveOpen_MultMsg_Idx) { + switch (_m->Logic_ValveOpen_MultMsg_Idx) { case 0: // Кадр 0: SFL позиции - _d[1] |= (uint8_t)(_m->Logic_ValveOpen_R2_SFL & 0xFF); - _d[2] |= (uint8_t)(_m->Logic_ValveOpen_R1_SFL & 0xFF); + _d[1] |= (uint8_t) (_m->Logic_ValveOpen_R2_SFL & 0xFF); + _d[2] |= (uint8_t) (_m->Logic_ValveOpen_R1_SFL & 0xFF); break; case 1: // Кадр 1: CFL позиции - _d[1] |= (uint8_t)(_m->Logic_ValveOpen_R2_CFL & 0xFF); - _d[2] |= (uint8_t)(_m->Logic_ValveOpen_R1_CFL & 0xFF); + _d[1] |= (uint8_t) (_m->Logic_ValveOpen_R2_CFL & 0xFF); + _d[2] |= (uint8_t) (_m->Logic_ValveOpen_R1_CFL & 0xFF); break; case 2: // Кадр 2: CFR позиции - _d[3] |= (uint8_t)(_m->Logic_ValveOpen_R2_CFR & 0xFF); - _d[4] |= (uint8_t)(_m->Logic_ValveOpen_R1_CFR & 0xFF); + _d[3] |= (uint8_t) (_m->Logic_ValveOpen_R2_CFR & 0xFF); + _d[4] |= (uint8_t) (_m->Logic_ValveOpen_R1_CFR & 0xFF); break; case 3: // Кадр 3: SFR позиции - _d[3] |= (uint8_t)(_m->Logic_ValveOpen_R2_SFR & 0xFF); - _d[4] |= (uint8_t)(_m->Logic_ValveOpen_R1_SFR & 0xFF); + _d[3] |= (uint8_t) (_m->Logic_ValveOpen_R2_SFR & 0xFF); + _d[4] |= (uint8_t) (_m->Logic_ValveOpen_R1_SFR & 0xFF); break; } @@ -112,42 +151,41 @@ uint32_t Pack_dbg_DiffBlr_ValveOpen_candb_dbg2(dbg_DiffBlr_ValveOpen_t* _m, uint // 3. dbg_CCU_Info - Информация о CCU (MultMsg_Idx) // ============================================================================ -uint32_t Pack_dbg_CCU_Info_candb_dbg2(dbg_CCU_Info_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide) -{ +uint32_t Pack_dbg_CCU_Info_candb_dbg2(dbg_CCU_Info_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide) { uint8_t i; for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_CCU_Info_DLC); _d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); - _d[0] |= (uint8_t)(_m->dbg_Info_MultMsg_Idx & 0x03); + _d[0] |= (uint8_t) (_m->dbg_Info_MultMsg_Idx & 0x03); - switch(_m->dbg_Info_MultMsg_Idx) { + switch (_m->dbg_Info_MultMsg_Idx) { case 0: // Кадр 0: Информация о калибровке - _d[0] |= (uint8_t)((_m->dbg_Info_Calibration_Ver_Date & 0x3F) << 2); - _d[1] |= (uint8_t)((_m->dbg_Info_Calibration_Ver_Date >> 6) & 0xFF); - _d[2] |= (uint8_t)((_m->dbg_Info_Calibration_Ver_Date >> 14) & 0xFF); - _d[3] |= (uint8_t)(_m->dbg_Info_Calibration_Ver_Rev & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Info_Calibration_Ver_Date & 0x3F) << 2); + _d[1] |= (uint8_t) ((_m->dbg_Info_Calibration_Ver_Date >> 6) & 0xFF); + _d[2] |= (uint8_t) ((_m->dbg_Info_Calibration_Ver_Date >> 14) & 0xFF); + _d[3] |= (uint8_t) (_m->dbg_Info_Calibration_Ver_Rev & 0xFF); break; case 1: // Кадр 1: Информация о SW - _d[0] |= (uint8_t)((_m->dbg_Info_CCU_SW_Ver_Date & 0x3F) << 2); - _d[1] |= (uint8_t)((_m->dbg_Info_CCU_SW_Ver_Date >> 6) & 0xFF); - _d[2] |= (uint8_t)((_m->dbg_Info_CCU_SW_Ver_Date >> 14) & 0xFF); - _d[3] |= (uint8_t)(_m->dbg_Info_CCU_SW_Ver_Rev & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Info_CCU_SW_Ver_Date & 0x3F) << 2); + _d[1] |= (uint8_t) ((_m->dbg_Info_CCU_SW_Ver_Date >> 6) & 0xFF); + _d[2] |= (uint8_t) ((_m->dbg_Info_CCU_SW_Ver_Date >> 14) & 0xFF); + _d[3] |= (uint8_t) (_m->dbg_Info_CCU_SW_Ver_Rev & 0xFF); break; case 2: // Кадр 2: Конфигурация и MBD версия - _d[4] |= (uint8_t)(_m->dbg_Info_ActivatedCAL & 0x0F); - _d[4] |= (uint8_t)((_m->dbg_Info_CCU_Aroma_Cfg & 0x0F) << 4); - _d[5] |= (uint8_t)(_m->dbg_Info_CCU_Algorithm_Cfg & 0x0F); - _d[5] |= (uint8_t)((_m->dbg_Info_MBD_Ver_Date & 0x3F) << 2); - _d[6] |= (uint8_t)((_m->dbg_Info_MBD_Ver_Date >> 6) & 0xFF); - _d[7] |= (uint8_t)((_m->dbg_Info_MBD_Ver_Date >> 14) & 0xFF); - _d[7] |= (uint8_t)(_m->dbg_Info_MBD_Ver_Rev & 0xFF); + _d[4] |= (uint8_t) (_m->dbg_Info_ActivatedCAL & 0x0F); + _d[4] |= (uint8_t) ((_m->dbg_Info_CCU_Aroma_Cfg & 0x0F) << 4); + _d[5] |= (uint8_t) (_m->dbg_Info_CCU_Algorithm_Cfg & 0x0F); + _d[5] |= (uint8_t) ((_m->dbg_Info_MBD_Ver_Date & 0x3F) << 2); + _d[6] |= (uint8_t) ((_m->dbg_Info_MBD_Ver_Date >> 6) & 0xFF); + _d[7] |= (uint8_t) ((_m->dbg_Info_MBD_Ver_Date >> 14) & 0xFF); + _d[7] |= (uint8_t) (_m->dbg_Info_MBD_Ver_Rev & 0xFF); break; case 3: // Кадр 3: Информация о кузове - _d[6] |= (uint8_t)(_m->dbg_Info_VehicleBody & 0xFF); - _d[7] |= (uint8_t)((_m->dbg_Info_VehicleBody >> 8) & 0xFF); + _d[6] |= (uint8_t) (_m->dbg_Info_VehicleBody & 0xFF); + _d[7] |= (uint8_t) ((_m->dbg_Info_VehicleBody >> 8) & 0xFF); break; } @@ -159,7 +197,7 @@ uint32_t Pack_dbg_CCU_Info_candb_dbg2(dbg_CCU_Info_t* _m, uint8_t* _d, uint8_t* // ============================================================================ // 4. dbg_Sen_Duct - Датчики воздуховодов (MultMsg_Idx) // ============================================================================ - +/* uint32_t Pack_dbg_Sen_Duct_candb_dbg2(dbg_Sen_Duct_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide) { uint8_t i; @@ -224,96 +262,161 @@ uint32_t Pack_dbg_Sen_Duct_candb_dbg2(dbg_Sen_Duct_t* _m, uint8_t* _d, uint8_t* *_ide = (uint8_t) dbg_Sen_Duct_IDE; return dbg_Sen_Duct_CANID; } +*/ + +uint32_t Pack_dbg_Sen_Duct_candb_dbg2(dbg_Sen_Duct_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide) { + uint8_t i; + for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Sen_Duct_DLC); + _d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); + + dbg_Sen_Duct_Frame0_t *dbg_Sen_Duct_Frame0 = (dbg_Sen_Duct_Frame0_t *) _d; + + switch (_m->dbg_Sen_Duct_MultMsg_Idx) { + case 0: // Кадр 0: Данные передних верхних датчиков + + dbg_Sen_Duct_Frame0->dbg_Sen_Duct_MultMsg_Idx = _m->dbg_Sen_Duct_MultMsg_Idx; + dbg_Sen_Duct_Frame0->reserved0 = 0; + dbg_Sen_Duct_Frame0->select = _m->dbg_Sen_Duct_FL_Fb_Select; + + dbg_Sen_Duct_Frame0->value1 = _m->dbg_Sen_Duct_FL_Upper_Tgt_ro; + dbg_Sen_Duct_Frame0->value2 = _m->dbg_Sen_Duct_FL_Upper_Fb_ro; + dbg_Sen_Duct_Frame0->value3 = _m->dbg_Sen_Duct_FL_Side_Fb_ro; + dbg_Sen_Duct_Frame0->value4 = _m->dbg_Sen_Duct_FL_Lower_Tgt_ro; + dbg_Sen_Duct_Frame0->value5 = _m->dbg_Sen_Duct_FL_Lower_Fb_ro; + + break; + + case 1: // Кадр 1: Данные задних датчиков и боковых + dbg_Sen_Duct_Frame0->dbg_Sen_Duct_MultMsg_Idx = _m->dbg_Sen_Duct_MultMsg_Idx; + dbg_Sen_Duct_Frame0->reserved0 = 0; + dbg_Sen_Duct_Frame0->select = _m->dbg_Sen_Duct_FR_Fb_Select; + + dbg_Sen_Duct_Frame0->value1 = _m->dbg_Sen_Duct_FR_Upper_Tgt_ro; + dbg_Sen_Duct_Frame0->value2 = _m->dbg_Sen_Duct_FR_Upper_Fb_ro; + dbg_Sen_Duct_Frame0->value3 = _m->dbg_Sen_Duct_FR_Side_Fb_ro; + dbg_Sen_Duct_Frame0->value4 = _m->dbg_Sen_Duct_FR_Lower_Tgt_ro; + dbg_Sen_Duct_Frame0->value5 = _m->dbg_Sen_Duct_FR_Lower_Fb_ro; + break; + + case 2: // Кадр 2: Данные нижних передних датчиков + dbg_Sen_Duct_Frame0->dbg_Sen_Duct_MultMsg_Idx = _m->dbg_Sen_Duct_MultMsg_Idx; + dbg_Sen_Duct_Frame0->reserved0 = 0; + dbg_Sen_Duct_Frame0->select = _m->dbg_Sen_Duct_RL_Fb_Select; + + dbg_Sen_Duct_Frame0->value1 = _m->dbg_Sen_Duct_RL_Tgt_ro; + dbg_Sen_Duct_Frame0->value2 = _m->dbg_Sen_Duct_RL_Fb_ro; + dbg_Sen_Duct_Frame0->value3 = _m->dbg_Sen_Duct_RL_Side_Fb_ro; + dbg_Sen_Duct_Frame0->value4 = 0; + dbg_Sen_Duct_Frame0->value5 = 0; + break; + + case 3: // Кадр 3: Данные боковых датчиков + dbg_Sen_Duct_Frame0->dbg_Sen_Duct_MultMsg_Idx = _m->dbg_Sen_Duct_MultMsg_Idx; + dbg_Sen_Duct_Frame0->reserved0 = 0; + dbg_Sen_Duct_Frame0->select = _m->dbg_Sen_Duct_RR_Fb_Select; + + dbg_Sen_Duct_Frame0->value1 = _m->dbg_Sen_Duct_RR_Tgt_ro; + dbg_Sen_Duct_Frame0->value2 = _m->dbg_Sen_Duct_RR_Fb_ro; + dbg_Sen_Duct_Frame0->value3 = _m->dbg_Sen_Duct_RR_Side_Fb_ro; + dbg_Sen_Duct_Frame0->value4 = 0; + dbg_Sen_Duct_Frame0->value5 = 0; + break; + } + + *_len = (uint8_t) dbg_Sen_Duct_DLC; + *_ide = (uint8_t) dbg_Sen_Duct_IDE; + return dbg_Sen_Duct_CANID; +} + // ============================================================================ // 5. dbg_Auto_Duct - Автоматические воздуховоды (MultMsg_Idx) // ============================================================================ -uint32_t Pack_dbg_Auto_Duct_candb_dbg2(dbg_Auto_Duct_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide) -{ +uint32_t Pack_dbg_Auto_Duct_candb_dbg2(dbg_Auto_Duct_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide) { uint8_t i; for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Auto_Duct_DLC); _d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); - _d[0] |= (uint8_t)(_m->dbg_Auto_Duct_MultMsg_Idx & 0x0F); + _d[0] |= (uint8_t) (_m->dbg_Auto_Duct_MultMsg_Idx & 0x0F); - switch(_m->dbg_Auto_Duct_MultMsg_Idx) { + switch (_m->dbg_Auto_Duct_MultMsg_Idx) { case 0: // Кадр 0: FL верхние параметры - _d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FL_Upper_ro & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FL_Upper_ro >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_Duct_Tg_FL_Upper_ro & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Tg_FL_Upper_ro >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FL_Upper_ro & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FL_Upper_ro >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_Duct_Amb_FL_Upper_ro & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Amb_FL_Upper_ro >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FL_Upper_ro & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FL_Upper_ro >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FL_Upper_ro & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FL_Upper_ro >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_Duct_Tg_FL_Upper_ro & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Tg_FL_Upper_ro >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FL_Upper_ro & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FL_Upper_ro >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_Duct_Amb_FL_Upper_ro & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Amb_FL_Upper_ro >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FL_Upper_ro & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FL_Upper_ro >> 4) & 0xFF); break; case 1: // Кадр 1: FR верхние параметры - _d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FR_Upper_ro & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FR_Upper_ro >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_Duct_Tg_FR_Upper_ro & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Tg_FR_Upper_ro >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FR_Upper_ro & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FR_Upper_ro >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_Duct_Amb_FR_Upper_ro & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Amb_FR_Upper_ro >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FR_Upper_ro & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FR_Upper_ro >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FR_Upper_ro & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FR_Upper_ro >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_Duct_Tg_FR_Upper_ro & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Tg_FR_Upper_ro >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FR_Upper_ro & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FR_Upper_ro >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_Duct_Amb_FR_Upper_ro & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Amb_FR_Upper_ro >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FR_Upper_ro & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FR_Upper_ro >> 4) & 0xFF); break; case 2: // Кадр 2: FL нижние параметры - _d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FL_Lower_ro & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FL_Lower_ro >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_Duct_Tg_FL_Lower_ro & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Tg_FL_Lower_ro >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FL_Lower_ro & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FL_Lower_ro >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_Duct_Amb_FL_Lower_ro & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Amb_FL_Lower_ro >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FL_Lower_ro & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FL_Lower_ro >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FL_Lower_ro & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FL_Lower_ro >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_Duct_Tg_FL_Lower_ro & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Tg_FL_Lower_ro >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FL_Lower_ro & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FL_Lower_ro >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_Duct_Amb_FL_Lower_ro & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Amb_FL_Lower_ro >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FL_Lower_ro & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FL_Lower_ro >> 4) & 0xFF); break; case 3: // Кадр 3: FR нижние параметры - _d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FR_Lower_ro & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FR_Lower_ro >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_Duct_Tg_FR_Lower_ro & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Tg_FR_Lower_ro >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FR_Lower_ro & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FR_Lower_ro >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_Duct_Amb_FR_Lower_ro & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Amb_FR_Lower_ro >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FR_Lower_ro & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FR_Lower_ro >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FR_Lower_ro & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_FR_Lower_ro >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_Duct_Tg_FR_Lower_ro & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Tg_FR_Lower_ro >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FR_Lower_ro & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_FR_Lower_ro >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_Duct_Amb_FR_Lower_ro & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Amb_FR_Lower_ro >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FR_Lower_ro & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FR_Lower_ro >> 4) & 0xFF); break; case 4: // Кадр 4: RL параметры - _d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_RL_ro & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_RL_ro >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_Duct_Tg_RL_ro & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Tg_RL_ro >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_RL_ro & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_RL_ro >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_Duct_Amb_RL_ro & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Amb_RL_ro >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_RL_ro & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_RL_ro >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_RL_ro & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_RL_ro >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_Duct_Tg_RL_ro & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Tg_RL_ro >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_RL_ro & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_RL_ro >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_Duct_Amb_RL_ro & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Amb_RL_ro >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_RL_ro & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_RL_ro >> 4) & 0xFF); break; case 5: // Кадр 5: RR параметры - _d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_RR_ro & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_RR_ro >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_Duct_Tg_RR_ro & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Tg_RR_ro >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_RR_ro & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_RR_ro >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_Duct_Amb_RR_ro & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Amb_RR_ro >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_RR_ro & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_RR_ro >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_RR_ro & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_Duct_Tgt_RR_ro >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_Duct_Tg_RR_ro & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Tg_RR_ro >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_RR_ro & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_Duct_Incar_RR_ro >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_Duct_Amb_RR_ro & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Amb_RR_ro >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_RR_ro & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_RR_ro >> 4) & 0xFF); break; } @@ -326,65 +429,64 @@ uint32_t Pack_dbg_Auto_Duct_candb_dbg2(dbg_Auto_Duct_t* _m, uint8_t* _d, uint8_t // 6. dbg_Auto_AF - Автоматическая коррекция AF (MultMsg_Idx) // ============================================================================ -uint32_t Pack_dbg_Auto_AF_candb_dbg2(dbg_Auto_AF_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide) -{ +uint32_t Pack_dbg_Auto_AF_candb_dbg2(dbg_Auto_AF_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide) { uint8_t i; for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Auto_AF_DLC); _d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); - _d[0] |= (uint8_t)(_m->dbg_Auto_AF_MultMsg_Idx & 0x03); + _d[0] |= (uint8_t) (_m->dbg_Auto_AF_MultMsg_Idx & 0x03); - switch(_m->dbg_Auto_AF_MultMsg_Idx) { + switch (_m->dbg_Auto_AF_MultMsg_Idx) { case 0: // Кадр 0: FL коррекция - _d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_FL & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_AF_Correct_FL >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_FL & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Vtg_FL >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_FL & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_AF_Incar_FL >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_FL & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Amb_FL >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_FL & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_AF_Sun_FL >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_FL & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_FL >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_AF_Vtg_FL & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Vtg_FL >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_FL & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_FL >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_AF_Amb_FL & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Amb_FL >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_FL & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_FL >> 4) & 0xFF); break; case 1: // Кадр 1: FR коррекция - _d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_FR & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_AF_Correct_FR >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_FR & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Vtg_FR >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_FR & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_AF_Incar_FR >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_FR & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Amb_FR >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_FR & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_AF_Sun_FR >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_FR & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_FR >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_AF_Vtg_FR & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Vtg_FR >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_FR & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_FR >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_AF_Amb_FR & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Amb_FR >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_FR & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_FR >> 4) & 0xFF); break; case 2: // Кадр 2: RL коррекция - _d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_RL & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_AF_Correct_RL >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_RL & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Vtg_RL >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_RL & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_AF_Incar_RL >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_RL & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Amb_RL >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_RL & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_AF_Sun_RL >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_RL & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_RL >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_AF_Vtg_RL & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Vtg_RL >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_RL & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_RL >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_AF_Amb_RL & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Amb_RL >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_RL & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_RL >> 4) & 0xFF); break; case 3: // Кадр 3: RR коррекция - _d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_RR & 0x0F) << 4); - _d[1] |= (uint8_t)((_m->dbg_Auto_AF_Correct_RR >> 4) & 0xFF); - _d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_RR & 0xFF); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Vtg_RR >> 8) & 0x0F); - _d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_RR & 0x0F) << 4); - _d[4] |= (uint8_t)((_m->dbg_Auto_AF_Incar_RR >> 4) & 0xFF); - _d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_RR & 0xFF); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Amb_RR >> 8) & 0x0F); - _d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_RR & 0x0F) << 4); - _d[7] |= (uint8_t)((_m->dbg_Auto_AF_Sun_RR >> 4) & 0xFF); + _d[0] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_RR & 0x0F) << 4); + _d[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_RR >> 4) & 0xFF); + _d[2] |= (uint8_t) (_m->dbg_Auto_AF_Vtg_RR & 0xFF); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Vtg_RR >> 8) & 0x0F); + _d[3] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_RR & 0x0F) << 4); + _d[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_RR >> 4) & 0xFF); + _d[5] |= (uint8_t) (_m->dbg_Auto_AF_Amb_RR & 0xFF); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Amb_RR >> 8) & 0x0F); + _d[6] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_RR & 0x0F) << 4); + _d[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_RR >> 4) & 0xFF); break; } diff --git a/candb_dbg_fixed.h b/candb_dbg_fixed.h index 26e3152..a496140 100644 --- a/candb_dbg_fixed.h +++ b/candb_dbg_fixed.h @@ -11,6 +11,26 @@ extern "C" { #endif +typedef struct { + uint32_t dbg_Sen_Duct_MultMsg_Idx: 2; + uint32_t reserved0: 1; + uint32_t select: 1; + uint32_t value1: 12; //4 + uint32_t value2: 12; //16 + uint32_t value3: 12; //28 + uint32_t value4: 12; //40 + uint32_t value5: 12; //52 +} __attribute__((packed)) dbg_Sen_Duct_Frame0_t; + +typedef struct { + uint32_t dbg_Sen_Incar_MultMsg_Idx: 2; + uint32_t reserved0: 2; + uint32_t value1: 12; //4 + uint32_t value2: 12; //16 + uint32_t value3: 12; //28 + uint32_t value4: 12; //40 +} __attribute__((packed)) dbg_Sen_Incar_Frame0_t; + /** * @brief Упаковка данных датчиков салона (исправленная версия) * @param _m Указатель на структуру с данными @@ -20,7 +40,7 @@ extern "C" { * @return CAN ID сообщения * @note Мультиплексирование по полю dbg_Sen_Incar_MultMsg_Idx (0-3) */ -uint32_t Pack_dbg_Sen_Incar_candb_dbg2(dbg_Sen_Incar_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide); +uint32_t Pack_dbg_Sen_Incar_candb_dbg2(dbg_Sen_Incar_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide); /** * @brief Упаковка данных открытия клапанов DiffBlr (исправленная версия) @@ -31,7 +51,7 @@ uint32_t Pack_dbg_Sen_Incar_candb_dbg2(dbg_Sen_Incar_t* _m, uint8_t* _d, uint8_t * @return CAN ID сообщения * @note Мультиплексирование по полю Logic_ValveOpen_MultMsg_Idx (0-3) */ -uint32_t Pack_dbg_DiffBlr_ValveOpen_candb_dbg2(dbg_DiffBlr_ValveOpen_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide); +uint32_t Pack_dbg_DiffBlr_ValveOpen_candb_dbg2(dbg_DiffBlr_ValveOpen_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide); /** * @brief Упаковка информационных данных CCU (исправленная версия) @@ -42,7 +62,7 @@ uint32_t Pack_dbg_DiffBlr_ValveOpen_candb_dbg2(dbg_DiffBlr_ValveOpen_t* _m, uint * @return CAN ID сообщения * @note Мультиплексирование по полю dbg_Info_MultMsg_Idx (0-3) */ -uint32_t Pack_dbg_CCU_Info_candb_dbg2(dbg_CCU_Info_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide); +uint32_t Pack_dbg_CCU_Info_candb_dbg2(dbg_CCU_Info_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide); /** * @brief Упаковка данных датчиков воздуховодов (исправленная версия) @@ -53,7 +73,7 @@ uint32_t Pack_dbg_CCU_Info_candb_dbg2(dbg_CCU_Info_t* _m, uint8_t* _d, uint8_t* * @return CAN ID сообщения * @note Мультиплексирование по полю dbg_Sen_Duct_MultMsg_Idx (0-3) */ -uint32_t Pack_dbg_Sen_Duct_candb_dbg2(dbg_Sen_Duct_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide); +uint32_t Pack_dbg_Sen_Duct_candb_dbg2(dbg_Sen_Duct_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide); /** * @brief Упаковка данных автоматических воздуховодов (исправленная версия) @@ -64,7 +84,7 @@ uint32_t Pack_dbg_Sen_Duct_candb_dbg2(dbg_Sen_Duct_t* _m, uint8_t* _d, uint8_t* * @return CAN ID сообщения * @note Мультиплексирование по полю dbg_Auto_Duct_MultMsg_Idx (0-5) */ -uint32_t Pack_dbg_Auto_Duct_candb_dbg2(dbg_Auto_Duct_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide); +uint32_t Pack_dbg_Auto_Duct_candb_dbg2(dbg_Auto_Duct_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide); /** * @brief Упаковка данных автоматической коррекции AF (исправленная версия) @@ -75,7 +95,7 @@ uint32_t Pack_dbg_Auto_Duct_candb_dbg2(dbg_Auto_Duct_t* _m, uint8_t* _d, uint8_t * @return CAN ID сообщения * @note Мультиплексирование по полю dbg_Auto_AF_MultMsg_Idx (0-3) */ -uint32_t Pack_dbg_Auto_AF_candb_dbg2(dbg_Auto_AF_t* _m, uint8_t* _d, uint8_t* _len, uint8_t* _ide); +uint32_t Pack_dbg_Auto_AF_candb_dbg2(dbg_Auto_AF_t *_m, uint8_t *_d, uint8_t *_len, uint8_t *_ide); #ifdef __cplusplus }