Commit a16bed4d authored by 李冠华's avatar 李冠华

🐞 fix:修改触发充电信号同时自检或触发清大计功能时,电量条显示异常的问题

parent ee674840
......@@ -234,7 +234,7 @@ void Gauge_Service(void)
{
if ((Get_CAN_Power_State() != PKEY_ON) && (Get_CAN_Power_State() != KEY_OFF) && (Get_CAN_Power_State() != POWER_CHECK_NULL))
{
if (g_u8TYWClearEepromFlag >= 1)
if ((g_u8TYWClearEepromFlag >= 1) && (Common_GetIgnOnTime() > 1500))
{
TYW_RESET_TIME();
Check_SEG_Display();
......
......@@ -748,113 +748,158 @@ _Fun_Res SEG_SET_EleDial_1SOC(uint8_t m_Flag, uint8_t m_SEG)
if (Get_SOC_Charging_State() == 1U)
{
switch (m_SEG)
if (((Get_CAN_Power_State() == KEY_ACC) && (Common_GetIgnOnTime() > 1500) && (g_u8TYWClearEepromFlag == 0U)) ||
(Get_CAN_Power_State() == PKEY_ON))
{
switch (m_SEG)
{
case 10u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG136 = IC_SEG_ON;
}
else
{
IC1_SEG136 = IC_SEG_GREY;
}
break;
case 9u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG137 = IC_SEG_ON;
}
else
{
IC1_SEG137 = IC_SEG_GREY;
}
break;
case 8u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG138 = IC_SEG_ON;
}
else
{
IC1_SEG138 = IC_SEG_GREY;
}
break;
case 7u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG143 = IC_SEG_ON;
}
else
{
IC1_SEG143 = IC_SEG_GREY;
}
break;
case 6u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG144 = IC_SEG_ON;
}
else
{
IC1_SEG144 = IC_SEG_GREY;
}
break;
case 5u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG145 = IC_SEG_ON;
}
else
{
IC1_SEG145 = IC_SEG_GREY;
}
break;
case 4u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG146 = IC_SEG_ON;
}
else
{
IC1_SEG146 = IC_SEG_GREY;
}
break;
case 3u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG147 = IC_SEG_ON;
}
else
{
IC1_SEG147 = IC_SEG_GREY;
}
break;
case 2u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG148 = IC_SEG_ON;
}
else
{
IC1_SEG148 = IC_SEG_GREY;
}
break;
case 1u:
if (FLASH_SYNC_1Hz)
{
IC1_SEG135 = IC_SEG_ON;
}
else
{
IC1_SEG135 = IC_SEG_GREY;
}
break;
case 0u:
break;
default:
break;
}
}
else
{
case 10u:
if (FLASH_SYNC_1Hz)
{
switch (m_SEG)
{
case 10u:
IC1_SEG136 = IC_SEG_ON;
}
else
{
IC1_SEG136 = IC_SEG_GREY;
}
break;
case 9u:
if (FLASH_SYNC_1Hz)
{
break;
case 9u:
IC1_SEG137 = IC_SEG_ON;
}
else
{
IC1_SEG137 = IC_SEG_GREY;
}
break;
case 8u:
if (FLASH_SYNC_1Hz)
{
break;
case 8u:
IC1_SEG138 = IC_SEG_ON;
}
else
{
IC1_SEG138 = IC_SEG_GREY;
}
break;
case 7u:
if (FLASH_SYNC_1Hz)
{
break;
case 7u:
IC1_SEG143 = IC_SEG_ON;
}
else
{
IC1_SEG143 = IC_SEG_GREY;
}
break;
case 6u:
if (FLASH_SYNC_1Hz)
{
break;
case 6u:
IC1_SEG144 = IC_SEG_ON;
}
else
{
IC1_SEG144 = IC_SEG_GREY;
}
break;
case 5u:
if (FLASH_SYNC_1Hz)
{
break;
case 5u:
IC1_SEG145 = IC_SEG_ON;
}
else
{
IC1_SEG145 = IC_SEG_GREY;
}
break;
case 4u:
if (FLASH_SYNC_1Hz)
{
break;
case 4u:
IC1_SEG146 = IC_SEG_ON;
}
else
{
IC1_SEG146 = IC_SEG_GREY;
}
break;
case 3u:
if (FLASH_SYNC_1Hz)
{
break;
case 3u:
IC1_SEG147 = IC_SEG_ON;
}
else
{
IC1_SEG147 = IC_SEG_GREY;
}
break;
case 2u:
if (FLASH_SYNC_1Hz)
{
break;
case 2u:
IC1_SEG148 = IC_SEG_ON;
}
else
{
IC1_SEG148 = IC_SEG_GREY;
}
break;
case 1u:
if (FLASH_SYNC_1Hz)
{
break;
case 1u:
IC1_SEG135 = IC_SEG_ON;
}
else
{
IC1_SEG135 = IC_SEG_GREY;
}
break;
case 0u:
break;
default:
break;
break;
case 0u:
break;
default:
break;
}
}
}
else
{
......@@ -2922,7 +2967,7 @@ _Fun_Res SEG_SET_Clock_ALL(uint8_t m_Flag, uint32_t m_NUM)
}
return m_Res;
}
uint8_t check_SEG_step = 0;
uint16_t check_SEG_step = 0;
/*仪表段码扫描函数*/
......@@ -2931,7 +2976,7 @@ void Check_SEG_Display(void)
uint16_t hour = 0;
uint16_t min = 0;
uint8_t soc_all = 0;
uint8_t Checkself_num = ((check_SEG_step * 10) / 48);
uint8_t Checkself_num = (uint8_t)((check_SEG_step * 10) / 48);
if (Checkself_num >= 10)
{
Checkself_num = 9;
......@@ -2950,7 +2995,7 @@ void Check_SEG_Display(void)
SEG_SET_Fault_Code(1, fau_code, 1);
SEG_SET_Fault_Code_Spanner(1, 1, 0);
}
uint32_t EleDial_2SOC = ((check_SEG_step * 10) / 48);
uint8_t EleDial_2SOC = (uint8_t)((check_SEG_step * 10) / 48);
SEG_SET_EleDial_2SOC(1, EleDial_2SOC);
SEG_SET_EleDial_1SOC(1, EleDial_2SOC);
......@@ -3043,7 +3088,7 @@ void Checkself_SEG_Display(void)
SEG_SET_Fault_Code(1, fau_code, 1);
SEG_SET_Fault_Code_Spanner(1, 1, 0);
}
uint32_t EleDial_2SOC = ((Checkself_SEG_step * 10) / 48);
uint8_t EleDial_2SOC = (uint8_t)((Checkself_SEG_step * 10) / 48);
SEG_SET_EleDial_2SOC(1, EleDial_2SOC);
SEG_SET_EleDial_1SOC(1, EleDial_2SOC);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment