提交 620b36ac 作者: wysheng

恢复AB枪电子锁端口

上级 17e9ce90
......@@ -28,13 +28,13 @@
#define DcOutChkPos_Port GPIOE
#define DcOutChkPos_RCC RCC_AHB1Periph_GPIOE
#define Lock_Pin GPIO_Pin_12
#define Lock_Port GPIOD
#define Lock_RCC RCC_AHB1Periph_GPIOD
#define Lock_B_Pin GPIO_Pin_12
#define Lock_B_Port GPIOD
#define Lock_B_RCC RCC_AHB1Periph_GPIOD
#define LockChk_Pin GPIO_Pin_14
#define LockChk_Port GPIOD
#define LockChk_RCC RCC_AHB1Periph_GPIOD
#define LockChk_B_Pin GPIO_Pin_14
#define LockChk_B_Port GPIOD
#define LockChk_B_RCC RCC_AHB1Periph_GPIOD
#define ChgLed_Pin GPIO_Pin_10
#define ChgLed_Port GPIOE
......@@ -87,13 +87,13 @@
#define DcOutChkNeg_B_RCC RCC_AHB1Periph_GPIOE
#define Lock_B_Pin GPIO_Pin_13
#define Lock_B_Port GPIOD
#define Lock_B_RCC RCC_AHB1Periph_GPIOD
#define Lock_Pin GPIO_Pin_13
#define Lock_Port GPIOD
#define Lock_RCC RCC_AHB1Periph_GPIOD
#define LockChk_B_Pin GPIO_Pin_15
#define LockChk_B_Port GPIOD
#define LockChk_B_RCC RCC_AHB1Periph_GPIOD
#define LockChk_Pin GPIO_Pin_15
#define LockChk_Port GPIOD
#define LockChk_RCC RCC_AHB1Periph_GPIOD
#define ChgLed_B_Pin GPIO_Pin_13
#define ChgLed_B_Port GPIOE
......
......@@ -291,16 +291,11 @@ void DcModuleCtrlProcess_SmartAllocation(void)
static u32 Tick = 0; //
if (Tick == 0)
Tick = GetSystemTick();
if ((GetSystemTick() -Tick) < 100)
{
return;
}
Tick = GetSystemTick();
Tick = GetSystemTick();
static StructDcModuleUsedStatus status[4] =
{
......@@ -311,7 +306,6 @@ void DcModuleCtrlProcess_SmartAllocation(void)
Invalid, Invalid, Invalid, Invalid
};
//StructDcModuleSend DataSend;
u32 Temp;
u8 addr;
u32 Volt = 0;
......@@ -420,7 +414,6 @@ void DcModuleCtrlProcess_SmartAllocation(void)
{
if (DcModuleGroup[i].status == Hold_A && i != 0)
{
if (abs((s16) (DcModuleGroup[i].Voltage) - (s16) (DcModuleManage.SetVolt / 100)) > 100) //差距在10V以内,升压完成
{
Temp++;
......@@ -451,7 +444,7 @@ void DcModuleCtrlProcess_SmartAllocation(void)
for (u8 j = 0; j < DcModuleGroup[i].num; j++)
{
addr = DcModuleGroup[i].modules[j].addr;
addr = DcModuleGroup[i].modules[j].addr;
DcModuleManage_B.Cmd = 0x55; //开机
DcModuleGroup[i].modules[j].cmd = 0x55;
......@@ -471,7 +464,7 @@ void DcModuleCtrlProcess_SmartAllocation(void)
Temp++;
for (u8 j = 0; j < DcModuleGroup[i].num; j++)
{
addr = DcModuleGroup[i].modules[j].addr;
addr = DcModuleGroup[i].modules[j].addr;
DcModuleGroup[i].modules[j].cmd = 0xAA;
SendCmdToDcModule(addr, 0xAA); //关机
}
......@@ -583,7 +576,6 @@ void DcModuleCtrlProcess_SmartAllocation(void)
}
if (Temp)
return;
......@@ -599,9 +591,9 @@ void DcModuleCtrlProcess_SmartAllocation(void)
Temp++;
}
if ((GetSystemTick() -CtrlTick) > 100)
//if ((GetSystemTick() -CtrlTick) > 100)
{
CtrlTick = GetSystemTick();
//CtrlTick = GetSystemTick();
Temp++;
}
......@@ -712,7 +704,7 @@ void DcModuleCtrlProcess_SmartAllocation(void)
for (u8 j = 0; j < DcModuleGroup[i].num; j++)
{
addr = DcModuleGroup[i].modules[j].addr;
addr = DcModuleGroup[i].modules[j].addr;
DcModuleManage_B.Cmd = 0x55; //开机
DcModuleGroup[i].modules[j].cmd = 0x55;
......
......@@ -23,8 +23,8 @@ s32 GetChgVoltChgRun_B(void)
s32 GetChgCurrtChgRun_B(void)
{
if(eMeterSta_Unavail != MeterComm.Status_B)
return MeterValue_B.Current/100;
//if(eMeterSta_Unavail != MeterComm.Status_B)
// return MeterValue_B.Current/100;
if(BcsMsg_B.Valid)
return abs((s32)BcsMsg_B.ChgCurrt - 4000);
return -1;
......@@ -97,7 +97,7 @@ void ChgProChgRun_B(StructChargeCtrl_B *pChargeCtrl)
{
if((GetSystemTick() - CCS_SendTick) > 50)
{
CCS_Send_B( MeterValue_B.Voltage, (4000- MeterValue_B.Current/100), GetChgMin(), CcsChgEnable);
CCS_Send_B( GetDcModuleVolt_B(), (4000-GetDcModuleCurrt_B()), GetChgMin_B(), CcsChgEnable);
CCS_SendTick = GetSystemTick();
}
......@@ -227,7 +227,7 @@ void ChgProChgRun_B(StructChargeCtrl_B *pChargeCtrl)
if((eChgVer_2011 != UserParam.ChgVer) && (eChgVer_2011 != ChgVer_B))
{
Temp = GetChgCurrtChgRun_B();
if((0 != CcsChgEnable) && (Temp > (DcModuleAbility.MinCurrt*DcModuleManage_B.ValidNum)) && (Temp > GetDcModuleCurrtSet_B()))
if((Temp>0)&&(0 != CcsChgEnable) && (Temp > (DcModuleAbility.MinCurrt*DcModuleManage_B.ValidNum)) && (Temp > GetDcModuleCurrtSet_B()))
{
if((Temp - GetDcModuleCurrtSet_B()) > (GetDcModuleCurrtSet_B()*10/100))
{
......
......@@ -104,7 +104,7 @@ void ChgProChgRun(StructChargeCtrl * pChargeCtrl)
{
if ((GetSystemTick() -CCS_SendTick) > 50)
{
CCS_Send(MeterValue.Voltage, (4000 - MeterValue.Current / 100), GetChgMin(), CcsChgEnable);
CCS_Send(GetDcModuleVolt(), (4000 - GetDcModuleCurrt()), GetChgMin(), CcsChgEnable);
CCS_SendTick = GetSystemTick();
}
......@@ -244,7 +244,7 @@ void ChgProChgRun(StructChargeCtrl * pChargeCtrl)
{
Temp = GetChgCurrtChgRun();
if ((0 != CcsChgEnable) && (Temp > (DcModuleAbility.MinCurrt * DcModuleManage.ValidNum)) &&
if ((Temp > 0)&&(0 != CcsChgEnable) && (Temp > (DcModuleAbility.MinCurrt * DcModuleManage.ValidNum)) &&
(Temp > GetDcModuleCurrtSet ()))
{
if ((Temp - GetDcModuleCurrtSet()) > (GetDcModuleCurrtSet() * 10 / 100))
......
......@@ -33,6 +33,8 @@ void ChgProChgIdle(StructChargeCtrl *pChargeCtrl)
BmsCanInit();
osDelay(20);
//TCUCurChgRecd.TCUChargeEnable = 1;
while(1)
{
ChgPgnRecv(&PgnRecv);
......
......@@ -239,10 +239,10 @@ void LcdProFactoryTestTwo(StructLcdCtrl *pLcdCtrl)
//DcOutNegSet(eSwSta_On);
break;
case BtnFactoryTestTwo_DehOff:
//DehumidifierSet(eSwSta_Off);
ACContactorSet(eSwSta_Off);
break;
case BtnFactoryTestTwo_DehOn:
//DehumidifierSet(eSwSta_On);
ACContactorSet(eSwSta_On);
break;
case BtnFactoryTestTwo_eLockOff:
LockSet(eSwSta_Off);
......
......@@ -748,12 +748,17 @@ void Thd_Mult(void const *parameter)
}
/*输入电压异常检测*/
extern s8 getDcMoudleVoltChkCnt(void);
if((5 == getDcMoudleVoltChkCnt()) || (-5 == getDcMoudleVoltChkCnt()))
if(5 == getDcMoudleVoltChkCnt())
{
PillarError.Value.InVolt = 1;
PillarError_B.Value.InVolt = 1;
}
else if(0 == VoltChkCnt)
else if(-5 == getDcMoudleVoltChkCnt())
{
PillarError.Value.InVolt = 1;
PillarError_B.Value.InVolt = 1;
}
else if(0 == getDcMoudleVoltChkCnt())
{
PillarError.Value.InVolt = 0;
PillarError_B.Value.InVolt = 0;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论