This commit is contained in:
cfif 2026-06-08 18:53:58 +03:00
parent 027a497637
commit c169e14b59
3 changed files with 272 additions and 150 deletions

View File

@ -404,7 +404,7 @@ static eTimeEventDbgTransmit isEventTransmitter(tCanSpamDebugTransmitter *env) {
&env->canFrame.dlc, &env->ide); &env->canFrame.dlc, &env->ide);
++env->dbg_Sen_Incar_MultMsg_Idx; ++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; env->dbg_Sen_Incar_MultMsg_Idx = 0;
} }

View File

@ -11,7 +11,7 @@
// ============================================================================ // ============================================================================
// 1. dbg_Sen_Incar - Датчики в салоне (MultMsg_Idx) // 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) 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; 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; *_ide = (uint8_t) dbg_Sen_Incar_IDE;
return dbg_Sen_Incar_CANID; 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) // 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; uint8_t i;
for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_DiffBlr_ValveOpen_DLC); for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_DiffBlr_ValveOpen_DLC);
_d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); _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 позиции case 0: // Кадр 0: SFL позиции
_d[1] |= (uint8_t)(_m->Logic_ValveOpen_R2_SFL & 0xFF); _d[1] |= (uint8_t) (_m->Logic_ValveOpen_R2_SFL & 0xFF);
_d[2] |= (uint8_t)(_m->Logic_ValveOpen_R1_SFL & 0xFF); _d[2] |= (uint8_t) (_m->Logic_ValveOpen_R1_SFL & 0xFF);
break; break;
case 1: // Кадр 1: CFL позиции case 1: // Кадр 1: CFL позиции
_d[1] |= (uint8_t)(_m->Logic_ValveOpen_R2_CFL & 0xFF); _d[1] |= (uint8_t) (_m->Logic_ValveOpen_R2_CFL & 0xFF);
_d[2] |= (uint8_t)(_m->Logic_ValveOpen_R1_CFL & 0xFF); _d[2] |= (uint8_t) (_m->Logic_ValveOpen_R1_CFL & 0xFF);
break; break;
case 2: // Кадр 2: CFR позиции case 2: // Кадр 2: CFR позиции
_d[3] |= (uint8_t)(_m->Logic_ValveOpen_R2_CFR & 0xFF); _d[3] |= (uint8_t) (_m->Logic_ValveOpen_R2_CFR & 0xFF);
_d[4] |= (uint8_t)(_m->Logic_ValveOpen_R1_CFR & 0xFF); _d[4] |= (uint8_t) (_m->Logic_ValveOpen_R1_CFR & 0xFF);
break; break;
case 3: // Кадр 3: SFR позиции case 3: // Кадр 3: SFR позиции
_d[3] |= (uint8_t)(_m->Logic_ValveOpen_R2_SFR & 0xFF); _d[3] |= (uint8_t) (_m->Logic_ValveOpen_R2_SFR & 0xFF);
_d[4] |= (uint8_t)(_m->Logic_ValveOpen_R1_SFR & 0xFF); _d[4] |= (uint8_t) (_m->Logic_ValveOpen_R1_SFR & 0xFF);
break; 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) // 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; uint8_t i;
for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_CCU_Info_DLC); for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_CCU_Info_DLC);
_d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); _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: Информация о калибровке case 0: // Кадр 0: Информация о калибровке
_d[0] |= (uint8_t)((_m->dbg_Info_Calibration_Ver_Date & 0x3F) << 2); _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[1] |= (uint8_t) ((_m->dbg_Info_Calibration_Ver_Date >> 6) & 0xFF);
_d[2] |= (uint8_t)((_m->dbg_Info_Calibration_Ver_Date >> 14) & 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[3] |= (uint8_t) (_m->dbg_Info_Calibration_Ver_Rev & 0xFF);
break; break;
case 1: // Кадр 1: Информация о SW case 1: // Кадр 1: Информация о SW
_d[0] |= (uint8_t)((_m->dbg_Info_CCU_SW_Ver_Date & 0x3F) << 2); _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[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[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[3] |= (uint8_t) (_m->dbg_Info_CCU_SW_Ver_Rev & 0xFF);
break; break;
case 2: // Кадр 2: Конфигурация и MBD версия case 2: // Кадр 2: Конфигурация и MBD версия
_d[4] |= (uint8_t)(_m->dbg_Info_ActivatedCAL & 0x0F); _d[4] |= (uint8_t) (_m->dbg_Info_ActivatedCAL & 0x0F);
_d[4] |= (uint8_t)((_m->dbg_Info_CCU_Aroma_Cfg & 0x0F) << 4); _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_CCU_Algorithm_Cfg & 0x0F);
_d[5] |= (uint8_t)((_m->dbg_Info_MBD_Ver_Date & 0x3F) << 2); _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[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_Date >> 14) & 0xFF);
_d[7] |= (uint8_t)(_m->dbg_Info_MBD_Ver_Rev & 0xFF); _d[7] |= (uint8_t) (_m->dbg_Info_MBD_Ver_Rev & 0xFF);
break; break;
case 3: // Кадр 3: Информация о кузове case 3: // Кадр 3: Информация о кузове
_d[6] |= (uint8_t)(_m->dbg_Info_VehicleBody & 0xFF); _d[6] |= (uint8_t) (_m->dbg_Info_VehicleBody & 0xFF);
_d[7] |= (uint8_t)((_m->dbg_Info_VehicleBody >> 8) & 0xFF); _d[7] |= (uint8_t) ((_m->dbg_Info_VehicleBody >> 8) & 0xFF);
break; 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) // 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) 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; 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; *_ide = (uint8_t) dbg_Sen_Duct_IDE;
return dbg_Sen_Duct_CANID; 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) // 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; uint8_t i;
for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Auto_Duct_DLC); for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Auto_Duct_DLC);
_d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); _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 верхние параметры case 0: // Кадр 0: FL верхние параметры
_d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FL_Upper_ro & 0x0F) << 4); _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[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[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_Tg_FL_Upper_ro >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FL_Upper_ro & 0x0F) << 4); _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[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[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_Amb_FL_Upper_ro >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FL_Upper_ro & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FL_Upper_ro >> 4) & 0xFF);
break; break;
case 1: // Кадр 1: FR верхние параметры case 1: // Кадр 1: FR верхние параметры
_d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FR_Upper_ro & 0x0F) << 4); _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[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[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_Tg_FR_Upper_ro >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FR_Upper_ro & 0x0F) << 4); _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[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[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_Amb_FR_Upper_ro >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FR_Upper_ro & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FR_Upper_ro >> 4) & 0xFF);
break; break;
case 2: // Кадр 2: FL нижние параметры case 2: // Кадр 2: FL нижние параметры
_d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FL_Lower_ro & 0x0F) << 4); _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[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[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_Tg_FL_Lower_ro >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FL_Lower_ro & 0x0F) << 4); _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[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[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_Amb_FL_Lower_ro >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FL_Lower_ro & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FL_Lower_ro >> 4) & 0xFF);
break; break;
case 3: // Кадр 3: FR нижние параметры case 3: // Кадр 3: FR нижние параметры
_d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_FR_Lower_ro & 0x0F) << 4); _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[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[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_Tg_FR_Lower_ro >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_FR_Lower_ro & 0x0F) << 4); _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[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[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_Amb_FR_Lower_ro >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_FR_Lower_ro & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_FR_Lower_ro >> 4) & 0xFF);
break; break;
case 4: // Кадр 4: RL параметры case 4: // Кадр 4: RL параметры
_d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_RL_ro & 0x0F) << 4); _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[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[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_Tg_RL_ro >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_RL_ro & 0x0F) << 4); _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[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[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_Amb_RL_ro >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_RL_ro & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_RL_ro >> 4) & 0xFF);
break; break;
case 5: // Кадр 5: RR параметры case 5: // Кадр 5: RR параметры
_d[0] |= (uint8_t)((_m->dbg_Auto_Duct_Tgt_RR_ro & 0x0F) << 4); _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[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[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_Tg_RR_ro >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_Duct_Incar_RR_ro & 0x0F) << 4); _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[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[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_Amb_RR_ro >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_Duct_Sun_RR_ro & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_Duct_Sun_RR_ro >> 4) & 0xFF);
break; 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) // 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; uint8_t i;
for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Auto_AF_DLC); for (i = 0u; i < CANDB_DBG_VALIDATE_DLC(dbg_Auto_AF_DLC);
_d[i++] = CANDB_DBG_INITIAL_BYTE_VALUE); _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 коррекция case 0: // Кадр 0: FL коррекция
_d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_FL & 0x0F) << 4); _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[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_FL >> 4) & 0xFF);
_d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_FL & 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_Vtg_FL >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_FL & 0x0F) << 4); _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[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_FL >> 4) & 0xFF);
_d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_FL & 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_Amb_FL >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_FL & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_FL >> 4) & 0xFF);
break; break;
case 1: // Кадр 1: FR коррекция case 1: // Кадр 1: FR коррекция
_d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_FR & 0x0F) << 4); _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[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_FR >> 4) & 0xFF);
_d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_FR & 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_Vtg_FR >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_FR & 0x0F) << 4); _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[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_FR >> 4) & 0xFF);
_d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_FR & 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_Amb_FR >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_FR & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_FR >> 4) & 0xFF);
break; break;
case 2: // Кадр 2: RL коррекция case 2: // Кадр 2: RL коррекция
_d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_RL & 0x0F) << 4); _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[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_RL >> 4) & 0xFF);
_d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_RL & 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_Vtg_RL >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_RL & 0x0F) << 4); _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[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_RL >> 4) & 0xFF);
_d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_RL & 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_Amb_RL >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_RL & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_RL >> 4) & 0xFF);
break; break;
case 3: // Кадр 3: RR коррекция case 3: // Кадр 3: RR коррекция
_d[0] |= (uint8_t)((_m->dbg_Auto_AF_Correct_RR & 0x0F) << 4); _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[1] |= (uint8_t) ((_m->dbg_Auto_AF_Correct_RR >> 4) & 0xFF);
_d[2] |= (uint8_t)(_m->dbg_Auto_AF_Vtg_RR & 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_Vtg_RR >> 8) & 0x0F);
_d[3] |= (uint8_t)((_m->dbg_Auto_AF_Incar_RR & 0x0F) << 4); _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[4] |= (uint8_t) ((_m->dbg_Auto_AF_Incar_RR >> 4) & 0xFF);
_d[5] |= (uint8_t)(_m->dbg_Auto_AF_Amb_RR & 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_Amb_RR >> 8) & 0x0F);
_d[6] |= (uint8_t)((_m->dbg_Auto_AF_Sun_RR & 0x0F) << 4); _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[7] |= (uint8_t) ((_m->dbg_Auto_AF_Sun_RR >> 4) & 0xFF);
break; break;
} }

View File

@ -11,6 +11,26 @@
extern "C" { extern "C" {
#endif #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 Упаковка данных датчиков салона (исправленная версия) * @brief Упаковка данных датчиков салона (исправленная версия)
* @param _m Указатель на структуру с данными * @param _m Указатель на структуру с данными
@ -20,7 +40,7 @@ extern "C" {
* @return CAN ID сообщения * @return CAN ID сообщения
* @note Мультиплексирование по полю dbg_Sen_Incar_MultMsg_Idx (0-3) * @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 (исправленная версия) * @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 сообщения * @return CAN ID сообщения
* @note Мультиплексирование по полю Logic_ValveOpen_MultMsg_Idx (0-3) * @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 (исправленная версия) * @brief Упаковка информационных данных CCU (исправленная версия)
@ -42,7 +62,7 @@ uint32_t Pack_dbg_DiffBlr_ValveOpen_candb_dbg2(dbg_DiffBlr_ValveOpen_t* _m, uint
* @return CAN ID сообщения * @return CAN ID сообщения
* @note Мультиплексирование по полю dbg_Info_MultMsg_Idx (0-3) * @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 Упаковка данных датчиков воздуховодов (исправленная версия) * @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 сообщения * @return CAN ID сообщения
* @note Мультиплексирование по полю dbg_Sen_Duct_MultMsg_Idx (0-3) * @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 Упаковка данных автоматических воздуховодов (исправленная версия) * @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 сообщения * @return CAN ID сообщения
* @note Мультиплексирование по полю dbg_Auto_Duct_MultMsg_Idx (0-5) * @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 (исправленная версия) * @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 сообщения * @return CAN ID сообщения
* @note Мультиплексирование по полю dbg_Auto_AF_MultMsg_Idx (0-3) * @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 #ifdef __cplusplus
} }