#include "BCUDisp.h" uint16_T appv_V_cellU[cmnc_num_cellUNumMax]; uint8_T appd_st_preCyc; uint16_T blcv_Q_reqCpEi[cmnc_num_cellUNumMax]; /*均衡需求容量 读取量(数组); */ uint16_T blcv_Q_reqCpEo[cmnc_num_cellUNumMax]; /*均衡需求容量 写入量(数组); */ uint32_T blcv_Q_totalCpEi[cmnc_num_cellUNumMax]; /*累计均衡容量 读取量(数组); */ uint32_T blcv_Q_totalCpEo[cmnc_num_cellUNumMax]; /*累计均衡容量 写入量(数组); */ boolean_T blcv_flg_excute[cmnc_num_cellUNumMax]; /*均衡执行请求标志位 (数组) */ boolean_T ihd_flg_HVILFlt; boolean_T ihd_flg_DTCClear; uint8_T ihd_st_authFaild; int16_T ihd_I_curr; /*电池包电流; */ uint8_T ihd_st_chrgConnect; /*充电器连接状态; */ uint16_T ihd_P_gas; /*气体浓度 */ uint16_T ihd_T_ACPlugT; /*慢充插头温度 +40 */ uint16_T ihd_T_DCPlugT; /*快充插头温度+40 */ uint16_T ihd_T_bdtemp; /*板子温度 */ uint16_T ihd_T_heatPanT1; /*加热板温度1+40 */ uint16_T ihd_T_heatPanT2; /*加热板温度2 +40 */ uint16_T ihd_T_mosT; /*Mos温度+40 */ boolean_T ihd_flg_EESaveFlt; /*EE存储故障 */ boolean_T ihd_flg_battULowFlt; /*保护板上传的总压欠压故障; */ boolean_T ihd_flg_battUOverFlt; /*保护板上传的总压过压故障; */ boolean_T ihd_flg_cellULowFlt; /*保护板上传的单体欠压故障; */ boolean_T ihd_flg_cellUOverFlt; /*保护板上传的单体过压故障; */ boolean_T ihd_flg_chrgCurrOverFlt; /*保护板上传的充电过流故障; */ boolean_T ihd_flg_chrgModTLowFlt; /*保护板上传的充电模组温度过低故障; */ boolean_T ihd_flg_chrgModTOverFlt; /*保护板上传的充电模组温度过高故障; */ boolean_T ihd_flg_chrgMosClosFlt; /*充电Mos失效 */ boolean_T ihd_flg_chrgMosTOverFlt; /*保护板上传的充电Mos温度过高故障; */ boolean_T ihd_flg_currOpenFlt; /*保护板上传的电流开路故障 */ boolean_T ihd_flg_disChrgCurrOverFlt; /*保护板上传的放电过流故障; */ boolean_T ihd_flg_disChrgModTLowFlt; /*保护板上传的放电模组温度过低故障; */ boolean_T ihd_flg_disChrgModTOverFlt; /*保护板上传的放电模组温度过高故障; */ boolean_T ihd_flg_disChrgMosClosFlt; /*放电Mos失效 */ boolean_T ihd_flg_disChrgMosTOverFlt; /*保护板上传的放电Mos温度过高故障; */ boolean_T ihd_flg_urtRecFlt; /*内网通讯故障 */ uint16_T ihd_pct_soc; /*保护板SOC */ uint16_T ihd_pct_soh; /*保护板SOH */ uint8_T ihd_st_workStat; /*电池工作状态 */ uint16_T ihd_tm_parkTime; /*驻车时间; */ uint16_T ihv_T_modT[cmnc_num_modTNumMax]; /*模组温度(数组)+40 */ uint16_T ihv_V_cellU[cmnc_num_cellUNumMax]; /*电池单体电压(数组); */ boolean_T ihd_st_chrgMosControl; /* Mos控制指令 ;0-断开,1-导通*/ boolean_T ihd_st_disChrgMosControl; boolean_T ihd_st_relayControl; uint8_T ihd_st_heatForceControl; uint8_T ihd_st_EOLState; boolean_T ihd_flg_urtRecFlg; int16_T sfmd_I_curr; /*处理后整包电流 */ uint16_T sfmd_T_modTMax; /*处理后模组温度最小 */ uint16_T sfmd_T_modTMin; /*处理后模组温度最大 */ uint16_T sfmd_idx_modTMax; /*处理后模组温度最小 */ uint16_T sfmd_idx_modTMin; /*处理后模组温度最大 */ uint16_T sfmd_V_cellUAvrg; /*处理后单体电压平均 */ uint16_T sfmd_V_cellUMax; /*处理后单体电压最大 */ uint16_T sfmd_V_cellUMin; /*处理后单体电压最小 */ uint16_T sfmd_idx_cellUMin; uint16_T sfmd_idx_cellUMax; boolean_T sfmd_flg_cellUDisable; /*单体电压有效标志位 ; 0为有效;1为无效 */ boolean_T sfmd_flg_currDisable; /*电流有效标志位 ; 0为有效;1为无效 */ boolean_T sfmd_flg_modTDisable; /*模组温度有效标志位 ; 0为有效;1为无效 */ uint16_T sfmd_num_fltNum; /*故障数量 */ uint8_T sfmd_st_fltAct; /*故障禁止指令 */ uint8_T sfmd_st_fltLevel; /*故障等级 */ uint16_T sfmv_T_modT[cmnc_num_modTNumMax]; /*处理后模组温度 */ uint16_T sfmv_V_cellU[cmnc_num_cellUNumMax]; /*处理后单体电压 */ uint16_T sfmv_idx_fltCode[20]; /*诊断故障码(数组) */ uint16_T sfmd_V_battU; boolean_T sfmd_flg_mainCirClosFltEi; /*主回路常闭故障读取量 */ boolean_T sfmd_flg_mainCirClosFltEo; /*主回路常闭故障写入量 */ boolean_T sfmd_flg_heatCirClosFltEi; /*加热回路常闭故障读取量 */ boolean_T sfmd_flg_heatCirClosFltEo; /*加热回路常闭故障写入量 */ boolean_T sfmd_flg_heatCirOpenFltEi; /*加热回路常开故障读取量 */ boolean_T sfmd_flg_heatCirOpenFltEo; /*加热回路常开故障写入量 */ boolean_T sfmd_flg_heatRunFltEi; boolean_T sfmd_flg_heatRunFltEo; boolean_T sfmd_flg_iscFltEi; boolean_T sfmd_flg_iscFltEo; uint16_T socd_pct_ahSoc; /*安时SOC; */ uint16_T socd_pct_estSoc; /*估算SOC;*/ uint16_T socd_flg_EEsave; /*实时存储标志位;*/ uint16_T socd_pct_ekfSoc; /*EKFSOC;*/ uint16_T socd_pct_battSoc; /*电池真实SOC; */ uint16_T socd_pct_battSocEi; /*电池真实SOC 读取量; */ uint16_T socd_pct_battSocEo; /*电池真实SOC 写入量; */ uint16_T socd_pct_bcuSoc; /*电池显示SOC; */ uint16_T socd_pct_bcuSocEi; /*电池显示SOC读取量; */ uint16_T socd_pct_bcuSocEo; /*电池显示SOC写入量; */ uint16_T socd_pct_bcuSoc_Delay; /*电池显示SOC延时; */ uint16_T socv_pct_cellSoc[cmnc_num_cellUNumMax]; uint16_T socd_pct_cellBattSoc; boolean_T socd_flg_cellSocDisable; uint16_T sohd_Q_chrgEi; /*充入容量读取量; */ uint16_T sohd_Q_chrgEo; /*充入容量写入量; */ boolean_T sohd_flg_chrgEndEi; /*充电结束标志位读取量; */ boolean_T sohd_flg_chrgEndEo; /*充电结束标志位写入量; */ uint16_T sohd_pct_bcuSoh; /*电池SOH; */ uint16_T sohd_pct_bcuSoh_Delay; /*电池SOH延时; */ uint16_T sohd_tm_chrgStartStatEi; /*充电前静置时间读取量; */ uint16_T sohd_tm_chrgStartStatEo; /*充电前静置时间写入量; */ uint16_T sohv_Q_cellCap[cmnc_num_cellUNumMax]; /*单体容量 */ uint16_T sohv_Q_cellCapArrEi[cmnc_num_cellUNumMax]; /*单体容量(数组) 读取量 */ uint16_T sohv_Q_cellCapArrEo[cmnc_num_cellUNumMax]; /*单体容量(数组) 写入量 */ uint16_T sohv_Q_packCapArrEi[10]; /*10次整包容量(数组)读取量; */ uint16_T sohv_Q_packCapArrEo[10]; /*10次整包容量(数组)写入量; */ uint16_T sohv_V_chrgStartStatEi[cmnc_num_cellUNumMax]; /*充电开始时刻的单体电压(数组)读取量; */ uint16_T sohv_V_chrgStartStatEo[cmnc_num_cellUNumMax]; /*充电开始时刻的单体电压(数组)写入量; */ boolean_T iscd_flg_flt; uint16_T iscv_Q_remainCpEi[cmnc_num_cellUNumMax]; uint32_T iscd_tm_totalEi; uint16_T iscv_Q_remainCpEo[cmnc_num_cellUNumMax]; uint32_T iscd_tm_totalEo; uint8_T tmsd_st_heatAct; /*热管理请求状态; */ uint8_T cmd_st_chrgMod; /* 充电模式 */ uint8_T cmd_st_chrgSt; /* 充电状态 */ int16_T cmd_I_chrgCurrReq; /* 充电需求电流 */ uint8_T cmd_idx_chrgEndReason; /* 充电结束原因 */ uint16_T cand_Nr_cellNr; /*循环发送的单体编号; */ uint16_T cand_Q_cellCap; /*循环发送的单体容量; */ uint16_T cand_V_chrgStartStat; /*循环发送的充电前单体电压; */ uint16_T cand_Q_reqCp; /*循环发送的单体需求均衡容量; */ uint16_T cand_Q_totalCp; /*循环发送的单体累计均衡容量; */ int16_T cdmv_V_deltOCV[cmnc_num_cellUNumMax] ; int16_T cdmv_ohm_deltR[cmnc_num_cellUNumMax] ; boolean_T cdmd_flg_deltOCVDisable; uint16_T test_efkSocMin; uint16_T test_efkSocMax; real_T test_UpMin; real_T test_UpMax; uint16_T test_ekfSoc; uint16_T test_ekfSoc0;