merge version
This commit is contained in:
parent
5280b76d65
commit
594b7b90c8
|
@ -47,23 +47,23 @@ void bms_poll_adc(uint32_t base_time)
|
|||
tmp = kit_get_dma_avg_filter_min_max(adc_dma_buf, kAdcDataEnd, i, ADC_SAMPLE_CNT);
|
||||
switch (i)
|
||||
{
|
||||
case kAdcData_5vVolt:
|
||||
adc_value[i] = 0; // 返回电压,0.1V/bit
|
||||
break;
|
||||
case kAdcData_Temp1:
|
||||
case kAdcData_Temp2:
|
||||
case kAdcData_Temp3:
|
||||
case kAdcData_Temp4:
|
||||
tmp = tmp * 10000 / (MCU_MAX_AD_VALUE - tmp); // 返回阻值,1Ω/bit
|
||||
adc_value[i] = bms_get_linear_temp(tmp, kNtcType_CWFH708_H713);
|
||||
bms_set_en_temp((EnTemp)(i - kAdcData_Temp1), adc_value[i]);
|
||||
break;
|
||||
case kAdcData_Hall1:
|
||||
case kAdcData_Hall2:
|
||||
// 扩大100倍,
|
||||
//adc_value[i] = tmp * (4 * 100 / 3);
|
||||
adc_value[i] = tmp * 3 / 4;//先获取电压值
|
||||
break;
|
||||
case kAdcData_5vVolt:
|
||||
adc_value[i] = 0; // 返回电压,0.1V/bit
|
||||
break;
|
||||
case kAdcData_Temp1:
|
||||
case kAdcData_Temp2:
|
||||
case kAdcData_Temp3:
|
||||
case kAdcData_Temp4:
|
||||
tmp = tmp * 10000 / (MCU_MAX_AD_VALUE - tmp); // 返回阻值,1Ω/bit
|
||||
adc_value[i] = bms_get_linear_temp(tmp, kNtcType_CWFH708_H713);
|
||||
bms_set_en_temp((EnTemp)(i - kAdcData_Temp1), adc_value[i]);
|
||||
break;
|
||||
case kAdcData_Hall1:
|
||||
case kAdcData_Hall2:
|
||||
// 扩大100倍,
|
||||
//adc_value[i] = tmp * (4 * 100 / 3);
|
||||
adc_value[i] = tmp * 3 / 4;//先获取电压值
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -447,11 +447,11 @@ void bms_poll_bmu(uint32_t base_time)
|
|||
//温感的值最开始全是大于6000的,第二次才是采集值
|
||||
memset(tempJudge_cnt, 0, sizeof(tempJudge_cnt));
|
||||
//2-5 @wangk add this line bcu statistic data is show
|
||||
bms_poll_statistic(0);
|
||||
//2-6 @wangk
|
||||
bms_poll_run_status(base_time);
|
||||
//2-10 @wangk
|
||||
task_dido_ctrl_handle(1000);
|
||||
// bms_poll_statistic(0);
|
||||
// //2-6 @wangk
|
||||
// bms_poll_run_status(base_time);
|
||||
// //2-10 @wangk
|
||||
// task_dido_ctrl_handle(1000);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -25,7 +25,7 @@ void ord_di_do_feedback_func(uint32_t base_time, DiStatus di_signal, DiType di)
|
|||
if(bms_get_do_status_by_idx(di - kDiType_Do1Feedback) != di_signal)
|
||||
{
|
||||
//I don't know what's the meaning of this line.Whatever I change the 5000 to what , it is always enter the " if " and set the fault level.
|
||||
//di_param_item[di].dly += base_time;
|
||||
di_param_item[di].dly += base_time;
|
||||
if(di_param_item[di].dly >= 5000)
|
||||
{
|
||||
//这里会写进错误--反馈异常,这里的一级代表三级错误
|
||||
|
|
|
@ -215,15 +215,15 @@ void logic_same_circuit_ctrl(uint32_t base_time)
|
|||
if ((bms_is_dis_allow() == false) || (bms_is_chg_allow() == false))
|
||||
{
|
||||
prechg_cnt = 0;
|
||||
status = kDoLogicStatus_Off;
|
||||
status = kDoLogicStatus_Off;
|
||||
bms_crtl_do_status(kDoType_PreChg, kDoCtrlStatus_Off, RELAY_CTRL_NO_DLY);
|
||||
bms_crtl_do_status(kDoType_Dis, kDoCtrlStatus_Off, 100);
|
||||
}
|
||||
else if (dly >= prechg_time)//预充超时
|
||||
{
|
||||
{
|
||||
dly = 0;
|
||||
status = kDoLogicStatus_PrechgFail;
|
||||
bms_crtl_do_status(kDoType_PreChg, kDoCtrlStatus_Off, RELAY_CTRL_NO_DLY);
|
||||
bms_crtl_do_status(kDoType_PreChg, kDoCtrlStatus_Off, RELAY_CTRL_NO_DLY);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -38,7 +38,7 @@ typedef enum
|
|||
#define DEVICE_HW_MAJOR_VER (1u) //5
|
||||
#define DEVICE_HW_MINOR_VER (0u) //5
|
||||
#define DEVICE_HW_BUILD_VER (0u) //6
|
||||
#define DEVICE_HW_VERSION (((DEVICE_HW_MAJOR_VER&0x1f)<<11)+((DEVICE_HW_MINOR_VER&0x1f)<<6)+(DEVICE_HW_BUILD_VER&0x3f))
|
||||
//#define DEVICE_HW_VERSION (((DEVICE_HW_MAJOR_VER&0x1f)<<11)+((DEVICE_HW_MINOR_VER&0x1f)<<6)+(DEVICE_HW_BUILD_VER&0x3f))
|
||||
|
||||
/*********************************软件版本号*************************************/
|
||||
#define DEVICE_V_MAJOR_VER (2u) //4
|
||||
|
@ -50,9 +50,13 @@ typedef enum
|
|||
#define DEVICE_C_MINOR_VER (3u) //4
|
||||
|
||||
//主干默认版本B0 上述记录即可
|
||||
#define DEVICE_SW_BUILD_VER (1u)
|
||||
//#define DEVICE_SW_BUILD_VER (1u)
|
||||
|
||||
//#define DEVICE_SW_VERSION ((DEVICE_V_MAJOR_VER << 8) | (DEVICE_V_MINOR_VER))
|
||||
#define DEVICE_SW_VERSION 1
|
||||
#define DEVICE_SW_BUILD_VER (0u)
|
||||
#define DEVICE_HW_VERSION 1
|
||||
|
||||
#define DEVICE_SW_VERSION ((DEVICE_V_MAJOR_VER << 8) | (DEVICE_V_MINOR_VER))
|
||||
#define DEVICE_R_VERSION ((DEVICE_R_MAJOR_VER << 8) | (DEVICE_R_MINOR_VER))
|
||||
#define DEVICE_C_VERSION ((DEVICE_C_MAJOR_VER << 8) | (DEVICE_C_MINOR_VER))
|
||||
typedef enum
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
<InvalidFlash>1</InvalidFlash>
|
||||
</TargetStatus>
|
||||
<OutputDirectory>.\Objects\</OutputDirectory>
|
||||
<OutputName>BCU1</OutputName>
|
||||
<OutputName>BCU5</OutputName>
|
||||
<CreateExecutable>1</CreateExecutable>
|
||||
<CreateLib>0</CreateLib>
|
||||
<CreateHexFile>1</CreateHexFile>
|
||||
|
@ -83,7 +83,7 @@
|
|||
<AfterMake>
|
||||
<RunUserProg1>1</RunUserProg1>
|
||||
<RunUserProg2>0</RunUserProg2>
|
||||
<UserProg1Name>D:\CodeCompare\BCU\app\stm32fxxx_app\hex2bin.exe D:\CodeCompare\BCU\app\stm32fxxx_app\prj\Objects\BCU1.hex</UserProg1Name>
|
||||
<UserProg1Name>D:\CodeCompare\BCU\app\stm32fxxx_app\hex2bin.exe D:\CodeCompare\BCU\app\stm32fxxx_app\prj\Objects\BCU5.hex</UserProg1Name>
|
||||
<UserProg2Name></UserProg2Name>
|
||||
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
||||
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -294,7 +294,7 @@ void bcu_send_0x42100000(can_dev_e can)
|
|||
//电池模块SOH
|
||||
tmp_8u = (uint8_t)(bms_get_soh()/100);
|
||||
WRITE_LT_INT8U(buf, len, tmp_8u);
|
||||
bsp_can_ext_data_sync_send(can, 0x42100000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004210, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x42200000(can_dev_e can)
|
||||
|
@ -314,7 +314,7 @@ void bcu_send_0x42200000(can_dev_e can)
|
|||
//最大放电电流
|
||||
tmp_16u = bms_get_sop_data(kSopData_DisCur);
|
||||
WRITE_LT_INT16U(buf, len, tmp_16u);
|
||||
bsp_can_ext_data_sync_send(can, 0x42200000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004220, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x42300000(can_dev_e can)
|
||||
|
@ -334,7 +334,7 @@ void bcu_send_0x42300000(can_dev_e can)
|
|||
//最低单体电池电压编号
|
||||
tmp_16u = bms_get_statistic_data(kStatisticData_MinVoltIdx) + 1;
|
||||
WRITE_LT_INT16U(buf, len, tmp_16u);
|
||||
bsp_can_ext_data_sync_send(can, 0x42300000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004230, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x42400000(can_dev_e can)
|
||||
|
@ -354,7 +354,7 @@ void bcu_send_0x42400000(can_dev_e can)
|
|||
//最低单体电池温度编号
|
||||
tmp_16u = bms_get_statistic_data(kStatisticData_MinTempIdx) + 1;
|
||||
WRITE_LT_INT16U(buf, len, tmp_16u);
|
||||
bsp_can_ext_data_sync_send(can, 0x42400000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004240, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x42500000(can_dev_e can)
|
||||
|
@ -412,7 +412,7 @@ void bcu_send_0x42500000(can_dev_e can)
|
|||
tmp_16u = set_bit_based_on_source_pylon(status, kFaultLevel_First);
|
||||
|
||||
WRITE_LT_INT16U(buf, len, tmp_16u);
|
||||
bsp_can_ext_data_sync_send(can, 0x42500000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004250, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x42600000(can_dev_e can)
|
||||
|
@ -432,7 +432,7 @@ void bcu_send_0x42600000(can_dev_e can)
|
|||
//最低电池模块电压编号--无,用单体从机号代替
|
||||
tmp_16u = bms_get_statistic_data(kStatisticData_MinVoltBmuIdx) + 1;
|
||||
WRITE_LT_INT16U(buf, len, tmp_16u);
|
||||
bsp_can_ext_data_sync_send(can, 0x42600000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004260, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x42700000(can_dev_e can)
|
||||
|
@ -452,7 +452,7 @@ void bcu_send_0x42700000(can_dev_e can)
|
|||
//最低电池模块温度编号--无,用单体从机号代替
|
||||
tmp_16u = bms_get_statistic_data(kStatisticData_MinTempBmuIdx) + 1;
|
||||
WRITE_LT_INT16U(buf, len, tmp_16u);
|
||||
bsp_can_ext_data_sync_send(can, 0x42700000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004270, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x42800000(can_dev_e can)
|
||||
|
@ -518,7 +518,7 @@ void bcu_send_0x42800000(can_dev_e can)
|
|||
tmp_16u = 0;
|
||||
WRITE_LT_INT16U(buf, len, tmp_16u);
|
||||
|
||||
bsp_can_ext_data_sync_send(can, 0x42800000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00004280, buf, len);
|
||||
}
|
||||
|
||||
void bcu_send_0x73100000(can_dev_e can)
|
||||
|
@ -552,7 +552,7 @@ void bcu_send_0x73100000(can_dev_e can)
|
|||
tmp_8u = 1;
|
||||
WRITE_LT_INT8U(buf, len, tmp_8u);
|
||||
|
||||
bsp_can_ext_data_sync_send(can, 0x73100000, buf, len);
|
||||
bsp_can_ext_data_sync_send(can, 0x00007310, buf, len);
|
||||
}
|
||||
|
||||
void bcu_can_send_pylon(uint32_t base_time,can_dev_e can)
|
||||
|
|
|
@ -102,9 +102,7 @@ uint16_t bcu_total_msg_fill(uint16_t start_addr, uint8_t reg_num, uint8_t *buf)
|
|||
READ_FC03_F04_BEGIN();
|
||||
//1 动力电池组总电压
|
||||
READ_FC03_F04_ITEM(1, bms_get_statistic_data(kStatisticData_TotalVolt));
|
||||
//READ_FC03_F04_ITEM(1, 5000);
|
||||
|
||||
//READ_FC03_F04_ITEM(1, test99+=10);
|
||||
|
||||
//2 动力电池组总电流
|
||||
READ_FC03_F04_ITEM(2, bms_get_show_current());
|
||||
//3 SOC
|
||||
|
@ -782,10 +780,10 @@ BspMdExCode bcu_modbus_485_0x03_fun(uint16_t start_addr, uint16_t reg_num, uint8
|
|||
{
|
||||
BspMdExCode err = kBspMdEx_None;
|
||||
//kit_time_dly_ms(50);
|
||||
if((start_addr >= 3000) && (start_addr + reg_num <= 3169))
|
||||
{
|
||||
*len = bcu_total_cfg_fill(start_addr, reg_num, buf);
|
||||
}
|
||||
if((start_addr >= 3000) && (start_addr + reg_num <= 3169))
|
||||
{
|
||||
*len = bcu_total_cfg_fill(start_addr, reg_num, buf);
|
||||
}
|
||||
else if((start_addr >= 4000) && ((start_addr + reg_num ) <= 4999))
|
||||
{
|
||||
hmi_fill_modbus_cfg(fill_buf);
|
||||
|
|
Loading…
Reference in New Issue