提交 620b36ac 作者: wysheng

恢复AB枪电子锁端口

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