Commit 74a7402f authored by 郑萍's avatar 郑萍

🐞 fix:合完段码好使的程序

parent da919364
......@@ -19,40 +19,20 @@ const uint8_t SEG_UNDISPLAY_NUMBER0[] = {0x00u, 0x06u, 0x5Bu, 0x4Fu, 0x66u, 0x6D
_Fun_Res SEG_SET_Frame(uint8_t m_Flag)
{
_Fun_Res m_Res;
if (m_Flag >= 2u)
{
m_Res = EX_ERR;
}
else
{
if (m_Flag == 0u)
if ( m_Flag == 1 )
{
/*边框*/
IC2_SEG134 = IC_SEG_OFF;
IC2_SEG135 = IC_SEG_OFF;
IC2_SEG136 = IC_SEG_OFF;
IC2_SEG137 = IC_SEG_OFF;
IC2_SEG138 = IC_SEG_OFF;
IC2_SEG139 = IC_SEG_OFF;
IC2_SEG140 = IC_SEG_OFF;
IC2_SEG141 = IC_SEG_OFF;
IC2_SEG040 = IC_SEG_ON;
IC2_SEG140 = IC_SEG_ON;
IC1_SEG086 = IC_SEG_ON;
}
else
{
/*边框*/
IC2_SEG134 = IC_SEG_ON;
IC2_SEG135 = IC_SEG_ON;
IC2_SEG136 = IC_SEG_ON;
IC2_SEG137 = IC_SEG_ON;
IC2_SEG138 = IC_SEG_ON;
IC2_SEG139 = IC_SEG_ON;
IC2_SEG140 = IC_SEG_ON;
IC2_SEG141 = IC_SEG_ON;
}
m_Res = EX_OK;
IC2_SEG040 = IC_SEG_OFF;
IC2_SEG140 = IC_SEG_OFF;
IC1_SEG086 = IC_SEG_OFF;
}
return m_Res;
}
/**@brief 指示灯显示函数
......@@ -67,13 +47,7 @@ _Fun_Res SEG_SET_LED_STS(uint8_t LED_NUM, uint8_t m_Flag)
_Fun_Res m_Res;
uint8_t Flag;
uint8_t Num;
if ((m_Flag > 7u) || (LED_NUM >= SEG_LED_MAX))
{
m_Res = EX_ERR;
}
else
{
if (m_Flag == 0u)
if ( m_Flag == 0u )
{
Flag = IC_SEG_OFF;
}
......@@ -82,23 +56,149 @@ _Fun_Res SEG_SET_LED_STS(uint8_t LED_NUM, uint8_t m_Flag)
Flag = IC_SEG_ON;
}
Num = LED_NUM;
switch (Num)
switch ( Num )
{
case 0u:
IC2_SEG032 = Flag;
break; /* SEG_LED_Voltage, */
case 1u:
IC2_SEG033 = Flag;
break; /* SEG_LED_Auto_Start_Stop, */
case 2u:
IC2_SEG128 = Flag;
break; /* SEG_LED_Fuel, */
case SEG_LED_Recharge:
IC1_SEG150 = Flag;
break;
case SEG_LED_Engine_Failure:
IC1_SEG156 = Flag;
break;
case SEG_LED_Battery_Failure:
IC1_SEG155 = Flag;
break;
case SEG_LED_Oil_press_Warning:
IC1_SEG154 = Flag;
break;
case SEG_LED_System_Light:
IC1_SEG153 = Flag;
break;
case SEG_LED_Power_Battery_Failure:
IC1_SEG152 = Flag;
break;
case SEG_LED_Chloramine:
IC1_SEG151 = Flag;
break;
case SEG_LED_Cutter_Overload:
IC1_SEG139 = Flag;
break;
case SEG_LED_Seat_Detection:
IC1_SEG142 = Flag;
break;
case SEG_LED_Key_Access:
IC1_SEG140 = Flag;
break;
case SEG_LED_Ready:
IC1_SEG141 = Flag;
break;
case SEG_LED_Cutter_Head_switch:
IC1_SEG119 = Flag;
break;
case SEG_LED_engine_Burn:
IC1_SEG056 = Flag;
break;
case SEG_LED_External_Discharge:
IC1_SEG057 = Flag;
break;
case SEG_LED_bluetooth:
IC1_SEG055 = Flag;
break;
case SEG_LED_Distance_Light:
IC1_SEG085 = Flag;
break;
case SEG_LED_Cruise_Control:
IC1_SEG084 = Flag;
break;
case SEG_LED_HHT_Charger:
IC2_SEG093 = Flag;
break;
case SEG_LED_Fuel_Oil:
IC2_SEG093 = Flag;
break;
default:
break;
}
m_Res = EX_OK;
return m_Res;
}
/**@brief 刀盘显示函数
* @param[in] m_Flag 是否显示 -1 显示 -0 不显示
* @return 函数执行结果
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res SEG_SET_Cutterhead(uint16_t LED_NUM, uint8_t m_Flag)
{
_Fun_Res m_Res;
if(m_Flag)
{
IC1_SEG118 = IC_SEG_ON;
IC1_SEG073 = IC_SEG_ON;
IC1_SEG074 = IC_SEG_ON;
IC1_SEG079 = IC_SEG_ON;
IC1_SEG117 = IC_SEG_ON;
IC1_SEG083 = IC_SEG_ON;
if(LED_NUM ==1)
{
IC1_SEG075 = IC_SEG_OFF;
IC1_SEG082 = IC_SEG_ON;
IC1_SEG081 = IC_SEG_ON;
IC1_SEG080 = IC_SEG_OFF;
IC1_SEG078 = IC_SEG_OFF;
IC1_SEG076 = IC_SEG_OFF;
IC1_SEG077 = IC_SEG_OFF;
}
else if(LED_NUM == 2)
{
IC1_SEG075 = IC_SEG_ON;
IC1_SEG082 = IC_SEG_ON;
IC1_SEG081 = IC_SEG_OFF;
IC1_SEG080 = IC_SEG_ON;
IC1_SEG078 = IC_SEG_ON;
IC1_SEG076 = IC_SEG_OFF;
IC1_SEG077 = IC_SEG_ON;
}
else if(LED_NUM == 3)
{
IC1_SEG075 = IC_SEG_ON;
IC1_SEG082 = IC_SEG_ON;
IC1_SEG081 = IC_SEG_ON;
IC1_SEG080 = IC_SEG_ON;
IC1_SEG078 = IC_SEG_OFF;
IC1_SEG076 = IC_SEG_OFF;
IC1_SEG077 = IC_SEG_ON;
}
else
{
IC1_SEG075 = IC_SEG_OFF;
IC1_SEG082 = IC_SEG_OFF;
IC1_SEG081 = IC_SEG_OFF;
IC1_SEG080 = IC_SEG_OFF;
IC1_SEG078 = IC_SEG_OFF;
IC1_SEG076 = IC_SEG_OFF;
IC1_SEG077 = IC_SEG_OFF;
}
}
else
{
IC1_SEG075 = IC_SEG_OFF;
IC1_SEG082 = IC_SEG_OFF;
IC1_SEG081 = IC_SEG_OFF;
IC1_SEG080 = IC_SEG_OFF;
IC1_SEG078 = IC_SEG_OFF;
IC1_SEG076 = IC_SEG_OFF;
IC1_SEG077 = IC_SEG_OFF;
IC1_SEG118 = IC_SEG_OFF;
IC1_SEG073 = IC_SEG_OFF;
IC1_SEG074 = IC_SEG_OFF;
IC1_SEG079 = IC_SEG_OFF;
IC1_SEG117 = IC_SEG_OFF;
IC1_SEG083 = IC_SEG_OFF;
}
m_Res = EX_OK;
return m_Res;
}
......@@ -116,111 +216,92 @@ _Fun_Res SEG_SET_LED_STS(uint8_t LED_NUM, uint8_t m_Flag)
_Fun_Res SEG_SET_GEAR(uint8_t m_Gear_Flag, uint8_t m_Gear)
{
_Fun_Res m_Res;
if ((m_Gear_Flag >= 2u) || (m_Gear > 3u))
{
m_Res = EX_ERR;
}
else
{
/*挡位符号*/
if (m_Gear_Flag == 1u)
if ( m_Gear_Flag == 1u )
{
if (m_Gear == Gear_P)
if ( m_Gear == Gear_P )
{
IC2_SEG034 = IC_SEG_ON;
IC2_SEG033 = IC_SEG_ON;
IC2_SEG031 = IC_SEG_ON;
IC2_SEG050 = IC_SEG_ON;
IC2_SEG036 = IC_SEG_ON;
IC2_SEG035 = IC_SEG_OFF;
IC2_SEG049 = IC_SEG_ON;
IC2_SEG037 = IC_SEG_ON;
IC2_SEG041 = IC_SEG_ON;
IC2_SEG032 = IC_SEG_ON;
IC2_SEG030 = IC_SEG_ON;
IC2_SEG048 = IC_SEG_ON;
IC2_SEG038 = IC_SEG_ON;
IC2_SEG046 = IC_SEG_OFF;
IC2_SEG047 = IC_SEG_OFF;
IC2_SEG045 = IC_SEG_OFF;
IC2_SEG039 = IC_SEG_ON;
IC2_SEG040 = IC_SEG_ON;
IC2_SEG042 = IC_SEG_OFF;
IC2_SEG043 = IC_SEG_OFF;
IC2_SEG044 = IC_SEG_OFF;
IC2_SEG100 = IC_SEG_ON;
IC2_SEG097 = IC_SEG_ON;
IC2_SEG148 = IC_SEG_ON;
IC2_SEG147 = IC_SEG_ON;
IC2_SEG146 = IC_SEG_ON;
IC2_SEG099 = IC_SEG_ON;
IC2_SEG101 = IC_SEG_ON;
IC2_SEG094 = IC_SEG_ON;
IC2_SEG095 = IC_SEG_ON;
IC2_SEG149 = IC_SEG_ON;
IC2_SEG145 = IC_SEG_ON;
IC2_SEG141 = IC_SEG_ON;
IC2_SEG104 = IC_SEG_ON;
IC2_SEG103 = IC_SEG_ON;
IC2_SEG098 = IC_SEG_ON;
IC2_SEG150 = IC_SEG_ON;
IC2_SEG096 = IC_SEG_OFF;
IC2_SEG142 = IC_SEG_OFF;
IC2_SEG143 = IC_SEG_OFF;
IC2_SEG144 = IC_SEG_OFF;
IC2_SEG102 = IC_SEG_OFF;
}
else if (m_Gear == Gear_R)
else if ( m_Gear == 1 )
{
IC2_SEG034 = IC_SEG_ON;
IC2_SEG033 = IC_SEG_ON;
IC2_SEG031 = IC_SEG_ON;
IC2_SEG050 = IC_SEG_ON;
IC2_SEG036 = IC_SEG_ON;
IC2_SEG035 = IC_SEG_OFF;
IC2_SEG049 = IC_SEG_ON;
IC2_SEG037 = IC_SEG_ON;
IC2_SEG041 = IC_SEG_ON;
IC2_SEG032 = IC_SEG_ON;
IC2_SEG030 = IC_SEG_ON;
IC2_SEG048 = IC_SEG_ON;
IC2_SEG038 = IC_SEG_ON;
IC2_SEG046 = IC_SEG_ON;
IC2_SEG047 = IC_SEG_OFF;
IC2_SEG045 = IC_SEG_ON;
IC2_SEG039 = IC_SEG_ON;
IC2_SEG040 = IC_SEG_ON;
IC2_SEG042 = IC_SEG_OFF;
IC2_SEG043 = IC_SEG_ON;
IC2_SEG044 = IC_SEG_ON;
IC2_SEG097 = IC_SEG_OFF;
IC2_SEG148 = IC_SEG_OFF;
IC2_SEG147 = IC_SEG_ON;
IC2_SEG146 = IC_SEG_OFF;
IC2_SEG099 = IC_SEG_OFF;
IC2_SEG101 = IC_SEG_OFF;
IC2_SEG100 = IC_SEG_OFF;
IC2_SEG142 = IC_SEG_OFF;
IC2_SEG143 = IC_SEG_OFF;
IC2_SEG032 = IC_SEG_OFF;
IC2_SEG094 = IC_SEG_ON;//圈
IC2_SEG095 = IC_SEG_ON;
IC2_SEG149 = IC_SEG_ON;
IC2_SEG145 = IC_SEG_ON;
IC2_SEG141 = IC_SEG_ON;
IC2_SEG104 = IC_SEG_ON;
IC2_SEG103 = IC_SEG_ON;
IC2_SEG098 = IC_SEG_ON;
IC2_SEG150 = IC_SEG_ON;
IC2_SEG096 = IC_SEG_OFF;
IC2_SEG144 = IC_SEG_ON;
IC2_SEG102 = IC_SEG_OFF;
}
else if (m_Gear == Gear_N)
else if ( m_Gear == 2 )
{
IC2_SEG034 = IC_SEG_OFF;
IC2_SEG033 = IC_SEG_ON;
IC2_SEG031 = IC_SEG_OFF;
IC2_SEG050 = IC_SEG_ON;
IC2_SEG036 = IC_SEG_ON;
IC2_SEG035 = IC_SEG_ON;
IC2_SEG049 = IC_SEG_ON;
IC2_SEG037 = IC_SEG_ON;
IC2_SEG041 = IC_SEG_OFF;
IC2_SEG032 = IC_SEG_ON;
IC2_SEG030 = IC_SEG_OFF;
IC2_SEG048 = IC_SEG_ON;
IC2_SEG038 = IC_SEG_ON;
IC2_SEG046 = IC_SEG_ON;
IC2_SEG047 = IC_SEG_ON;
IC2_SEG045 = IC_SEG_ON;
IC2_SEG039 = IC_SEG_OFF;
IC2_SEG040 = IC_SEG_ON;
IC2_SEG042 = IC_SEG_OFF;
IC2_SEG043 = IC_SEG_ON;
IC2_SEG044 = IC_SEG_ON;
IC2_SEG097 = IC_SEG_OFF;
IC2_SEG096 = IC_SEG_OFF;
IC2_SEG142 = IC_SEG_OFF;
IC2_SEG144 = IC_SEG_OFF;
IC2_SEG100 = IC_SEG_ON;
IC2_SEG101 = IC_SEG_ON;
IC2_SEG099 = IC_SEG_ON;
IC2_SEG146 = IC_SEG_ON;
IC2_SEG147 = IC_SEG_ON;
IC2_SEG148 = IC_SEG_ON;
IC2_SEG102 = IC_SEG_ON;
IC2_SEG143 = IC_SEG_ON;
IC2_SEG094 = IC_SEG_ON;//圈
IC2_SEG095 = IC_SEG_ON;
IC2_SEG149 = IC_SEG_ON;
IC2_SEG145 = IC_SEG_ON;
IC2_SEG141 = IC_SEG_ON;
IC2_SEG104 = IC_SEG_ON;
IC2_SEG103 = IC_SEG_ON;
IC2_SEG098 = IC_SEG_ON;
IC2_SEG150 = IC_SEG_ON;
}
else
{
IC2_SEG034 = IC_SEG_ON;
IC2_SEG033 = IC_SEG_ON;
IC2_SEG031 = IC_SEG_ON;
IC2_SEG050 = IC_SEG_ON;
IC2_SEG036 = IC_SEG_ON;
IC2_SEG035 = IC_SEG_OFF;
IC2_SEG049 = IC_SEG_ON;
IC2_SEG037 = IC_SEG_ON;
IC2_SEG041 = IC_SEG_OFF;
IC2_SEG032 = IC_SEG_OFF;
IC2_SEG030 = IC_SEG_OFF;
IC2_SEG048 = IC_SEG_ON;
IC2_SEG038 = IC_SEG_ON;
IC2_SEG046 = IC_SEG_OFF;
IC2_SEG047 = IC_SEG_ON;
IC2_SEG045 = IC_SEG_ON;
IC2_SEG039 = IC_SEG_ON;
IC2_SEG040 = IC_SEG_ON;
IC2_SEG042 = IC_SEG_ON;
IC2_SEG043 = IC_SEG_ON;
IC2_SEG044 = IC_SEG_ON;
;
}
}
else
......@@ -307,88 +388,108 @@ _Fun_Res SEG_SET_FuelDial(uint8_t m_Flag, uint8_t m_SEG)
IC2_SEG052 = IC_SEG_OFF;
IC2_SEG051 = IC_SEG_OFF;
IC2_SEG050 = IC_SEG_OFF;
IC2_SEG036 = IC_SEG_OFF;
IC2_SEG035 = IC_SEG_OFF;
IC2_SEG049 = IC_SEG_OFF;
IC2_SEG037 = IC_SEG_OFF;
IC2_SEG041 = IC_SEG_OFF;
IC2_SEG032 = IC_SEG_OFF;
IC2_SEG030 = IC_SEG_OFF;
IC2_SEG048 = IC_SEG_OFF;
IC2_SEG038 = IC_SEG_OFF;
IC2_SEG046 = IC_SEG_OFF;
IC2_SEG047 = IC_SEG_OFF;
IC2_SEG046 = IC_SEG_OFF;
IC2_SEG045 = IC_SEG_OFF;
IC2_SEG039 = IC_SEG_OFF;
IC2_SEG040 = IC_SEG_OFF;
IC2_SEG042 = IC_SEG_OFF;
IC2_SEG043 = IC_SEG_OFF;
IC2_SEG044 = IC_SEG_OFF;
}
m_Res = EX_OK;
}
return m_Res;
}
/**@brief 转速表盘显示函数
/**@brief 电量表盘显示函数
* @param[in] m_Flag 段与数字是否显示 -1 显示 -0 不显示
* @param[in] m_SEG 转速表盘段数0<=m_SEG<=11
* @param[in] m_NUM 显示转速值
* @param[in] m_SEG 车速表盘段数0<=m_SEG<=10
* @return 函数执行结果
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res SEG_SET_EspeedDial(uint8_t m_Flag, uint8_t m_SEG, uint16_t m_NUM)
_Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint16_t m_NUM)
{
_Fun_Res m_Res;
uint8_t Num;
uint8_t m8;
if ((m_Flag >= 2u) || (m_SEG > 11u))
{
m_Res = EX_ERR;
}
else
{
if (m_Flag == 1u)
if ( m_Flag == 1u )
{
IC1_SEG127 = IC_SEG_GREY;
IC1_SEG126 = IC_SEG_GREY;
IC1_SEG072 = IC_SEG_GREY;
IC1_SEG071 = IC_SEG_GREY;
IC1_SEG070 = IC_SEG_GREY;
IC1_SEG069 = IC_SEG_GREY;
IC1_SEG068 = IC_SEG_GREY;
IC1_SEG067 = IC_SEG_GREY;
IC1_SEG066 = IC_SEG_GREY;
IC1_SEG065 = IC_SEG_GREY;
IC1_SEG064 = IC_SEG_GREY;
IC1_SEG063 = IC_SEG_GREY;
IC1_SEG062 = IC_SEG_GREY;
IC1_SEG061 = IC_SEG_GREY;
IC1_SEG060 = IC_SEG_GREY;
IC1_SEG059 = IC_SEG_GREY;
IC1_SEG058 = IC_SEG_GREY;
IC1_SEG121 = IC_SEG_ON;
IC1_SEG124 = IC_SEG_ON;
IC1_SEG122 = IC_SEG_ON;
IC1_SEG123 = IC_SEG_ON;
IC1_SEG054 = IC_SEG_ON;
IC1_SEG136 = IC_SEG_GREY;
IC1_SEG125 = IC_SEG_GREY;
IC1_SEG124 = IC_SEG_GREY;
IC1_SEG123 = IC_SEG_GREY;
IC1_SEG122 = IC_SEG_GREY;
IC1_SEG121 = IC_SEG_GREY;
IC1_SEG120 = IC_SEG_GREY;
IC1_SEG119 = IC_SEG_GREY;
IC1_SEG118 = IC_SEG_GREY;
IC1_SEG117 = IC_SEG_GREY;
switch (m_SEG)
{
case 11u:
IC1_SEG127 = IC_SEG_ON;
IC1_SEG137 = IC_SEG_GREY;
IC1_SEG126 = IC_SEG_GREY;
IC1_SEG138 = IC_SEG_GREY;
IC1_SEG127 = IC_SEG_GREY;
IC1_SEG143 = IC_SEG_GREY;
IC1_SEG128 = IC_SEG_GREY;
IC1_SEG144 = IC_SEG_GREY;
IC1_SEG129 = IC_SEG_GREY;
IC1_SEG145 = IC_SEG_GREY;
IC1_SEG130 = IC_SEG_GREY;
IC1_SEG146 = IC_SEG_GREY;
IC1_SEG131 = IC_SEG_GREY;
IC1_SEG147 = IC_SEG_GREY;
IC1_SEG132 = IC_SEG_GREY;
IC1_SEG148 = IC_SEG_GREY;
IC1_SEG133 = IC_SEG_GREY;
IC1_SEG135 = IC_SEG_GREY;
IC1_SEG134 = IC_SEG_GREY;
switch ( m_SEG )
{
case 10u:
IC1_SEG126 = IC_SEG_ON;
case 9u:
IC1_SEG136 = IC_SEG_ON;
IC1_SEG125 = IC_SEG_ON;
case 9u:
IC1_SEG137 = IC_SEG_ON;
IC1_SEG126 = IC_SEG_ON;
case 8u:
IC1_SEG124 = IC_SEG_ON;
IC1_SEG138 = IC_SEG_ON;
IC1_SEG127 = IC_SEG_ON;
case 7u:
IC1_SEG123 = IC_SEG_ON;
IC1_SEG143 = IC_SEG_ON;
IC1_SEG128 = IC_SEG_ON;
case 6u:
IC1_SEG122 = IC_SEG_ON;
IC1_SEG144 = IC_SEG_ON;
IC1_SEG129 = IC_SEG_ON;
case 5u:
IC1_SEG121 = IC_SEG_ON;
IC1_SEG145 = IC_SEG_ON;
IC1_SEG130 = IC_SEG_ON;
case 4u:
IC1_SEG120 = IC_SEG_ON;
IC1_SEG146 = IC_SEG_ON;
IC1_SEG131 = IC_SEG_ON;
case 3u:
IC1_SEG119 = IC_SEG_ON;
IC1_SEG147 = IC_SEG_ON;
IC1_SEG132 = IC_SEG_ON;
case 2u:
IC1_SEG118 = IC_SEG_ON;
IC1_SEG148 = IC_SEG_ON;
IC1_SEG133 = IC_SEG_ON;
case 1u:
IC1_SEG117 = IC_SEG_ON;
IC1_SEG135 = IC_SEG_ON;
IC1_SEG134 = IC_SEG_ON;
case 0u:
break;
default:
......@@ -570,110 +671,93 @@ _Fun_Res SEG_SET_EspeedDial(uint8_t m_Flag, uint8_t m_SEG, uint16_t m_NUM)
return m_Res;
}
/**@brief 电量表盘显示函数
* @param[in] m_Flag 段与数字是否显示 -1 显示 -0 不显示
* @param[in] m_SEG 车速表盘段数0<=m_SEG<=10
/**@brief 故障码显示
* @param[in] m_Flag 车速是否显示 -1 显示 -0 不显示
* @param[in] m_NUM 车速数据 0<=m_NUM<=299
* @return 函数执行结果
* - EX_OK 上报成功
* - EX_ERR 上报失败
*/
_Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint8_t m_NUM)
_Fun_Res SEG_SET_Fault_Code(uint8_t m_Flag, uint16_t m_NUM)
{
_Fun_Res m_Res;
uint8_t Num;
uint16_t Num;
uint8_t m8;
if ((m_Flag >= 2u) || (m_SEG > 10u) || (m_NUM >= 200u))
if ( (m_Flag > 3u) || (m_NUM > 9999u) )
{
m_Res = EX_ERR;
}
else
{
if (m_Flag == 1u)
{
IC1_SEG022 = IC_SEG_GREY;
IC1_SEG021 = IC_SEG_GREY;
IC1_SEG020 = IC_SEG_GREY;
IC1_SEG019 = IC_SEG_GREY;
IC1_SEG018 = IC_SEG_GREY;
IC1_SEG017 = IC_SEG_GREY;
IC1_SEG016 = IC_SEG_GREY;
IC1_SEG015 = IC_SEG_GREY;
IC1_SEG014 = IC_SEG_GREY;
IC1_SEG013 = IC_SEG_GREY;
switch (m_SEG)
if ( m_Flag == 1u )
{
IC1_SEG087 = IC_SEG_ON;
IC1_SEG094 = IC_SEG_ON;
IC1_SEG093 = IC_SEG_ON;
IC1_SEG091 = IC_SEG_ON;
IC1_SEG090 = IC_SEG_ON;
IC1_SEG089 = IC_SEG_ON;
IC1_SEG088 = IC_SEG_ON;
IC1_SEG092 = IC_SEG_ON;
IC1_SEG101 = IC_SEG_ON;
IC1_SEG100 = IC_SEG_ON;
IC1_SEG098 = IC_SEG_ON;
IC1_SEG097 = IC_SEG_ON;
IC1_SEG096 = IC_SEG_ON;
IC1_SEG095 = IC_SEG_ON;
IC1_SEG099 = IC_SEG_ON;
IC1_SEG108 = IC_SEG_ON;
IC1_SEG107 = IC_SEG_ON;
IC1_SEG105 = IC_SEG_ON;
IC1_SEG104 = IC_SEG_ON;
IC1_SEG103 = IC_SEG_ON;
IC1_SEG102 = IC_SEG_ON;
IC1_SEG106 = IC_SEG_ON;
IC1_SEG115 = IC_SEG_ON;
IC1_SEG114 = IC_SEG_ON;
IC1_SEG113 = IC_SEG_ON;
IC1_SEG112 = IC_SEG_ON;
IC1_SEG111 = IC_SEG_ON;
IC1_SEG109 = IC_SEG_ON;
IC1_SEG110 = IC_SEG_ON;
case 10u:
IC1_SEG022 = IC_SEG_ON;
case 9u:
IC1_SEG021 = IC_SEG_ON;
case 8u:
IC1_SEG020 = IC_SEG_ON;
case 7u:
IC1_SEG019 = IC_SEG_ON;
case 6u:
IC1_SEG018 = IC_SEG_ON;
case 5u:
IC1_SEG017 = IC_SEG_ON;
case 4u:
IC1_SEG016 = IC_SEG_ON;
case 3u:
IC1_SEG015 = IC_SEG_ON;
case 2u:
IC1_SEG014 = IC_SEG_ON;
case 1u:
IC1_SEG013 = IC_SEG_ON;
case 0u:
break;
default:
break;
}
IC1_SEG027 = IC_SEG_ON;
IC1_SEG023 = IC_SEG_ON;
/*千位*/
Num = (m_NUM / 1000u) % 10u;
m8 = SEG_DISPLAY_NUMBER0 [ Num ];
/*单位*/
IC1_SEG028 = IC_SEG_ON;
/*百位*/
Num = m_NUM / 100u;
if (Num == 1u)
if ( Bit_Is_Set(m8, 0) )
{
IC1_SEG043 = IC_SEG_ON;
IC1_SEG094 = IC_SEG_ON;
}
else
{
IC1_SEG043 = IC_SEG_OFF;
IC1_SEG094 = IC_SEG_OFF;
}
/*十位*/
Num = (m_NUM / 10u) % 10u;
if (m_NUM >= 100u)
if ( Bit_Is_Set(m8, 1) )
{
m8 = SEG_DISPLAY_NUMBER0[Num];
IC1_SEG093 = IC_SEG_ON;
}
else
{
m8 = SEG_UNDISPLAY_NUMBER0[Num];
IC1_SEG093 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 0))
if ( Bit_Is_Set(m8, 2) )
{
IC1_SEG040 = IC_SEG_ON;
IC1_SEG091 = IC_SEG_ON;
}
else
{
IC1_SEG040 = IC_SEG_OFF;
IC1_SEG091 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 1))
if ( Bit_Is_Set(m8, 3) )
{
IC1_SEG039 = IC_SEG_ON;
IC1_SEG090 = IC_SEG_ON;
}
else
{
IC1_SEG039 = IC_SEG_OFF;
IC1_SEG090 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 2))
if ( Bit_Is_Set(m8, 5) )
{
IC1_SEG088 = IC_SEG_ON;
}
......@@ -681,7 +765,7 @@ _Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint8_t m_NUM)
{
IC1_SEG088 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 3))
if ( Bit_Is_Set(m8, 4) )
{
IC1_SEG089 = IC_SEG_ON;
}
......@@ -689,50 +773,51 @@ _Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint8_t m_NUM)
{
IC1_SEG089 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 5))
if ( Bit_Is_Set(m8, 6) )
{
IC1_SEG042 = IC_SEG_ON;
IC1_SEG092 = IC_SEG_ON;
}
else
{
IC1_SEG042 = IC_SEG_OFF;
IC1_SEG092 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 4))
/*百位*/
Num = (m_NUM / 100u) % 10u;
m8 = SEG_DISPLAY_NUMBER0 [ Num ];
if ( Bit_Is_Set(m8, 0) )
{
IC1_SEG041 = IC_SEG_ON;
IC1_SEG101 = IC_SEG_ON;
}
else
{
IC1_SEG041 = IC_SEG_OFF;
IC1_SEG101 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 6))
if ( Bit_Is_Set(m8, 1) )
{
IC1_SEG038 = IC_SEG_ON;
IC1_SEG100 = IC_SEG_ON;
}
else
{
IC1_SEG038 = IC_SEG_OFF;
IC1_SEG100 = IC_SEG_OFF;
}
/*个位*/
Num = m_NUM % 10u;
m8 = SEG_DISPLAY_NUMBER0[Num];
if (Bit_Is_Set(m8, 0))
if ( Bit_Is_Set(m8, 2) )
{
IC1_SEG033 = IC_SEG_ON;
IC1_SEG098 = IC_SEG_ON;
}
else
{
IC1_SEG033 = IC_SEG_OFF;
IC1_SEG098 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 1))
if ( Bit_Is_Set(m8, 3) )
{
IC1_SEG032 = IC_SEG_ON;
IC1_SEG097 = IC_SEG_ON;
}
else
{
IC1_SEG032 = IC_SEG_OFF;
IC1_SEG097 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 2))
if ( Bit_Is_Set(m8, 5) )
{
IC1_SEG095 = IC_SEG_ON;
}
......@@ -740,7 +825,7 @@ _Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint8_t m_NUM)
{
IC1_SEG095 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 3))
if ( Bit_Is_Set(m8, 4) )
{
IC1_SEG096 = IC_SEG_ON;
}
......@@ -748,9 +833,9 @@ _Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint8_t m_NUM)
{
IC1_SEG096 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 5))
if ( Bit_Is_Set(m8, 6) )
{
IC1_SEG035 = IC_SEG_ON;
IC1_SEG099 = IC_SEG_ON;
}
else
{
......@@ -877,39 +962,41 @@ _Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint8_t m_NUM)
}
else
{
IC2_SEG067 = IC_SEG_OFF;
IC2_SEG069 = IC_SEG_OFF;
IC2_SEG071 = IC_SEG_OFF;
IC2_SEG073 = IC_SEG_OFF;
IC2_SEG141 = IC_SEG_OFF;
IC2_SEG142 = IC_SEG_OFF;
IC2_SEG143 = IC_SEG_OFF;
IC2_SEG144 = IC_SEG_OFF;
IC2_SEG147 = IC_SEG_OFF;
IC2_SEG146 = IC_SEG_OFF;
IC2_SEG148 = IC_SEG_OFF;
IC2_SEG145 = IC_SEG_OFF;
IC2_SEG064 = IC_SEG_OFF;
IC2_SEG139 = IC_SEG_OFF;
IC2_SEG140 = IC_SEG_OFF;
IC1_SEG074 = IC_SEG_OFF;
IC1_SEG114 = IC_SEG_OFF;
IC1_SEG115 = IC_SEG_OFF;
IC1_SEG116 = IC_SEG_OFF;
IC1_SEG101 = IC_SEG_OFF;
IC2_SEG138 = IC_SEG_OFF;
IC2_SEG135 = IC_SEG_OFF;
IC2_SEG134 = IC_SEG_OFF;
IC2_SEG132 = IC_SEG_OFF;
IC2_SEG131 = IC_SEG_OFF;
IC2_SEG137 = IC_SEG_OFF;
IC2_SEG136 = IC_SEG_OFF;
IC2_SEG133 = IC_SEG_OFF;
IC2_SEG128 = IC_SEG_OFF;
IC2_SEG127 = IC_SEG_OFF;
IC2_SEG125 = IC_SEG_OFF;
IC2_SEG124 = IC_SEG_OFF;
IC2_SEG130 = IC_SEG_OFF;
IC2_SEG129 = IC_SEG_OFF;
IC2_SEG126 = IC_SEG_OFF;
IC1_SEG082 = IC_SEG_OFF;
IC1_SEG083 = IC_SEG_OFF;
IC1_SEG084 = IC_SEG_OFF;
IC1_SEG085 = IC_SEG_OFF;
IC1_SEG086 = IC_SEG_OFF;
IC1_SEG087 = IC_SEG_OFF;
IC1_SEG088 = IC_SEG_OFF;
IC1_SEG089 = IC_SEG_OFF;
IC1_SEG090 = IC_SEG_OFF;
IC1_SEG091 = IC_SEG_OFF;
IC1_SEG092 = IC_SEG_OFF;
IC1_SEG093 = IC_SEG_OFF;
IC1_SEG094 = IC_SEG_OFF;
IC1_SEG095 = IC_SEG_OFF;
IC1_SEG096 = IC_SEG_OFF;
IC1_SEG097 = IC_SEG_OFF;
IC1_SEG098 = IC_SEG_OFF;
IC1_SEG099 = IC_SEG_OFF;
IC1_SEG100 = IC_SEG_OFF;
IC1_SEG102 = IC_SEG_OFF;
IC1_SEG103 = IC_SEG_OFF;
IC1_SEG104 = IC_SEG_OFF;
IC1_SEG105 = IC_SEG_OFF;
IC1_SEG106 = IC_SEG_OFF;
IC1_SEG107 = IC_SEG_OFF;
IC1_SEG108 = IC_SEG_OFF;
IC1_SEG109 = IC_SEG_OFF;
IC1_SEG110 = IC_SEG_OFF;
}
m_Res = EX_OK;
......@@ -917,83 +1004,6 @@ _Fun_Res SEG_SET_EleDial(uint8_t m_Flag, uint8_t m_SEG, uint8_t m_NUM)
return m_Res;
}
_Fun_Res SEG_Scan_SET_PowerDial(uint8_t m_SEG)
{
_Fun_Res m_Res;
IC2_SEG148 = IC_SEG_ON;
IC2_SEG145 = IC_SEG_ON;
IC2_SEG064 = IC_SEG_ON;
IC2_SEG067 = IC_SEG_GREY;
IC2_SEG069 = IC_SEG_GREY;
IC2_SEG071 = IC_SEG_GREY;
IC2_SEG073 = IC_SEG_GREY;
IC2_SEG141 = IC_SEG_GREY;
IC2_SEG142 = IC_SEG_GREY;
IC2_SEG143 = IC_SEG_GREY;
IC2_SEG144 = IC_SEG_GREY;
IC2_SEG147 = IC_SEG_GREY;
IC2_SEG146 = IC_SEG_GREY;
switch (m_SEG)
{
case 10u:
IC2_SEG067 = IC_SEG_ON;
case 9u:
IC2_SEG069 = IC_SEG_ON;
case 8u:
IC2_SEG071 = IC_SEG_ON;
case 7u:
IC2_SEG073 = IC_SEG_ON;
case 6u:
IC2_SEG141 = IC_SEG_ON;
case 5u:
IC2_SEG142 = IC_SEG_ON;
case 4u:
IC2_SEG143 = IC_SEG_ON;
case 3u:
IC2_SEG144 = IC_SEG_ON;
case 2u:
IC2_SEG146 = IC_SEG_ON;
case 1u:
IC2_SEG147 = IC_SEG_ON;
case 0u:
break;
default:
break;
}
IC2_SEG148 = IC_SEG_OFF;
IC2_SEG145 = IC_SEG_OFF;
IC2_SEG064 = IC_SEG_OFF;
IC2_SEG139 = IC_SEG_OFF;
IC2_SEG140 = IC_SEG_OFF;
IC2_SEG138 = IC_SEG_OFF;
IC2_SEG135 = IC_SEG_OFF;
IC2_SEG134 = IC_SEG_OFF;
IC2_SEG132 = IC_SEG_OFF;
IC2_SEG131 = IC_SEG_OFF;
IC2_SEG137 = IC_SEG_OFF;
IC2_SEG136 = IC_SEG_OFF;
IC2_SEG133 = IC_SEG_OFF;
IC2_SEG128 = IC_SEG_OFF;
IC2_SEG127 = IC_SEG_OFF;
IC2_SEG125 = IC_SEG_OFF;
IC2_SEG124 = IC_SEG_OFF;
IC2_SEG130 = IC_SEG_OFF;
IC2_SEG129 = IC_SEG_OFF;
IC2_SEG126 = IC_SEG_OFF;
m_Res = EX_OK;
return m_Res;
}
/**@brief 续航里程显示函数
* @param[in] m_Flag 续航里程是否显示 -2 显示---km -1 显示 -0 不显示
......@@ -2386,57 +2396,57 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
_Fun_Res m_Res;
uint8_t Num;
uint8_t m8;
if ((m_hour > 99u) || (m_minute > 99u) || (m_icon > 1u) || (m_Flag1 > 1u) || (m_Flag2 > 1u))
if ( (m_hour >= 99u) || (m_minute >= 99u) || (m_icon > 1u) || (m_Flag1 > 1u) || (m_Flag2 > 1u) )
{
m_Res = EX_ERR;
}
else
{
if (m_icon == 1u)
if ( m_icon == 1u )
{
IC2_SEG042 = IC_SEG_ON;
IC2_SEG084 = IC_SEG_ON;
}
else
{
IC2_SEG042 = IC_SEG_OFF;
IC2_SEG084 = IC_SEG_OFF;
}
if (m_Flag1 == 1u)
if ( m_Flag1 == 1u )
{
Num = m_hour / 10u; /*86104-11*/
m8 = SEG_DISPLAY_NUMBER0[Num];
if (Bit_Is_Set(m8, 0))
m8 = SEG_DISPLAY_NUMBER0 [ Num ];
if ( Bit_Is_Set(m8, 0) )
{
IC2_SEG119 = IC_SEG_ON;
IC2_SEG036 = IC_SEG_ON;
}
else
{
IC2_SEG119 = IC_SEG_OFF;
IC2_SEG036 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 1))
if ( Bit_Is_Set(m8, 1) )
{
IC2_SEG118 = IC_SEG_ON;
IC2_SEG035 = IC_SEG_ON;
}
else
{
IC2_SEG118 = IC_SEG_OFF;
IC2_SEG035 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 2))
if ( Bit_Is_Set(m8, 2) )
{
IC2_SEG123 = IC_SEG_ON;
IC2_SEG079 = IC_SEG_ON;
}
else
{
IC2_SEG123 = IC_SEG_OFF;
IC2_SEG079 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 3))
if ( Bit_Is_Set(m8, 3) )
{
IC2_SEG122 = IC_SEG_ON;
IC2_SEG078 = IC_SEG_ON;
}
else
{
IC2_SEG122 = IC_SEG_OFF;
IC2_SEG078 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 5))
if ( Bit_Is_Set(m8, 5) )
{
IC2_SEG037 = IC_SEG_ON;
}
......@@ -2444,7 +2454,7 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG037 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 4))
if ( Bit_Is_Set(m8, 4) )
{
IC2_SEG039 = IC_SEG_ON;
}
......@@ -2452,49 +2462,49 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG039 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 6))
if ( Bit_Is_Set(m8, 6) )
{
IC2_SEG117 = IC_SEG_ON;
IC2_SEG038 = IC_SEG_ON;
}
else
{
IC2_SEG117 = IC_SEG_OFF;
IC2_SEG038 = IC_SEG_OFF;
}
Num = m_hour % 10u;
m8 = SEG_DISPLAY_NUMBER0[Num];
if (Bit_Is_Set(m8, 0))
m8 = SEG_DISPLAY_NUMBER0 [ Num ];
if ( Bit_Is_Set(m8, 0) )
{
IC2_SEG046 = IC_SEG_ON;
IC2_SEG033 = IC_SEG_ON;
}
else
{
IC2_SEG046 = IC_SEG_OFF;
IC2_SEG033 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 1))
if ( Bit_Is_Set(m8, 1) )
{
IC2_SEG045 = IC_SEG_ON;
IC2_SEG032 = IC_SEG_ON;
}
else
{
IC2_SEG045 = IC_SEG_OFF;
IC2_SEG032 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 2))
if ( Bit_Is_Set(m8, 2) )
{
IC2_SEG043 = IC_SEG_ON;
IC2_SEG083 = IC_SEG_ON;
}
else
{
IC2_SEG043 = IC_SEG_OFF;
IC2_SEG083 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 3))
if ( Bit_Is_Set(m8, 3) )
{
IC2_SEG125 = IC_SEG_ON;
IC2_SEG082 = IC_SEG_ON;
}
else
{
IC2_SEG125 = IC_SEG_OFF;
IC2_SEG082 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 5))
if ( Bit_Is_Set(m8, 5) )
{
IC2_SEG034 = IC_SEG_ON;
}
......@@ -2502,7 +2512,7 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG034 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 4))
if ( Bit_Is_Set(m8, 4) )
{
IC2_SEG081 = IC_SEG_ON;
}
......@@ -2510,69 +2520,69 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG081 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 6))
if ( Bit_Is_Set(m8, 6) )
{
IC2_SEG044 = IC_SEG_ON;
IC2_SEG080 = IC_SEG_ON;
}
else
{
IC2_SEG044 = IC_SEG_OFF;
IC2_SEG080 = IC_SEG_OFF;
}
}
else
{
IC2_SEG119 = IC_SEG_OFF;
IC2_SEG118 = IC_SEG_OFF;
IC2_SEG123 = IC_SEG_OFF;
IC2_SEG122 = IC_SEG_OFF;
IC2_SEG121 = IC_SEG_OFF;
IC2_SEG120 = IC_SEG_OFF;
IC2_SEG117 = IC_SEG_OFF;
IC2_SEG046 = IC_SEG_OFF;
IC2_SEG045 = IC_SEG_OFF;
IC2_SEG044 = IC_SEG_OFF;
IC2_SEG043 = IC_SEG_OFF;
IC2_SEG047 = IC_SEG_OFF;
IC2_SEG124 = IC_SEG_OFF;
IC2_SEG125 = IC_SEG_OFF;
IC2_SEG036 = IC_SEG_OFF;
IC2_SEG035 = IC_SEG_OFF;
IC2_SEG079 = IC_SEG_OFF;
IC2_SEG078 = IC_SEG_OFF;
IC2_SEG039 = IC_SEG_OFF;
IC2_SEG037 = IC_SEG_OFF;
IC2_SEG038 = IC_SEG_OFF;
IC2_SEG033 = IC_SEG_OFF;
IC2_SEG032 = IC_SEG_OFF;
IC2_SEG083 = IC_SEG_OFF;
IC2_SEG082 = IC_SEG_OFF;
IC2_SEG081 = IC_SEG_OFF;
IC2_SEG034 = IC_SEG_OFF;
IC2_SEG080 = IC_SEG_OFF;
}
if (m_Flag2 == 1u)
if ( m_Flag2 == 1u )
{
Num = m_minute / 10u;
m8 = SEG_DISPLAY_NUMBER0[Num];
if (Bit_Is_Set(m8, 0))
m8 = SEG_DISPLAY_NUMBER0 [ Num ];
if ( Bit_Is_Set(m8, 0) )
{
IC2_SEG040 = IC_SEG_ON;
IC2_SEG030 = IC_SEG_ON;
}
else
{
IC2_SEG040 = IC_SEG_OFF;
IC2_SEG030 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 1))
if ( Bit_Is_Set(m8, 1) )
{
IC2_SEG039 = IC_SEG_ON;
IC2_SEG029 = IC_SEG_ON;
}
else
{
IC2_SEG039 = IC_SEG_OFF;
IC2_SEG029 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 2))
if ( Bit_Is_Set(m8, 2) )
{
IC2_SEG129 = IC_SEG_ON;
IC2_SEG088 = IC_SEG_ON;
}
else
{
IC2_SEG129 = IC_SEG_OFF;
IC2_SEG088 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 3))
if ( Bit_Is_Set(m8, 3) )
{
IC2_SEG127 = IC_SEG_ON;
IC2_SEG087 = IC_SEG_ON;
}
else
{
IC2_SEG127 = IC_SEG_OFF;
IC2_SEG087 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 5))
if ( Bit_Is_Set(m8, 5) )
{
IC2_SEG031 = IC_SEG_ON;
}
......@@ -2580,7 +2590,7 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG031 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 4))
if ( Bit_Is_Set(m8, 4) )
{
IC2_SEG086 = IC_SEG_ON;
}
......@@ -2588,49 +2598,49 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG086 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 6))
if ( Bit_Is_Set(m8, 6) )
{
IC2_SEG130 = IC_SEG_ON;
IC2_SEG085 = IC_SEG_ON;
}
else
{
IC2_SEG130 = IC_SEG_OFF;
IC2_SEG085 = IC_SEG_OFF;
}
Num = m_minute % 10u;
m8 = SEG_DISPLAY_NUMBER0[Num];
if (Bit_Is_Set(m8, 0))
m8 = SEG_DISPLAY_NUMBER0 [ Num ];
if ( Bit_Is_Set(m8, 0) )
{
IC2_SEG037 = IC_SEG_ON;
IC2_SEG027 = IC_SEG_ON;
}
else
{
IC2_SEG037 = IC_SEG_OFF;
IC2_SEG027 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 1))
if ( Bit_Is_Set(m8, 1) )
{
IC2_SEG036 = IC_SEG_ON;
IC2_SEG026 = IC_SEG_ON;
}
else
{
IC2_SEG036 = IC_SEG_OFF;
IC2_SEG026 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 2))
if ( Bit_Is_Set(m8, 2) )
{
IC2_SEG035 = IC_SEG_ON;
IC2_SEG092 = IC_SEG_ON;
}
else
{
IC2_SEG035 = IC_SEG_OFF;
IC2_SEG092 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 3))
if ( Bit_Is_Set(m8, 3) )
{
IC2_SEG133 = IC_SEG_ON;
IC2_SEG091 = IC_SEG_ON;
}
else
{
IC2_SEG133 = IC_SEG_OFF;
IC2_SEG091 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 5))
if ( Bit_Is_Set(m8, 5) )
{
IC2_SEG028 = IC_SEG_ON;
}
......@@ -2638,7 +2648,7 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG028 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 4))
if ( Bit_Is_Set(m8, 4) )
{
IC2_SEG090 = IC_SEG_ON;
}
......@@ -2646,37 +2656,52 @@ _Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t
{
IC2_SEG090 = IC_SEG_OFF;
}
if (Bit_Is_Set(m8, 6))
if ( Bit_Is_Set(m8, 6) )
{
IC2_SEG131 = IC_SEG_ON;
IC2_SEG089 = IC_SEG_ON;
}
else
{
IC2_SEG131 = IC_SEG_OFF;
IC2_SEG089 = IC_SEG_OFF;
}
}
else
{
IC2_SEG040 = IC_SEG_OFF;
IC2_SEG039 = IC_SEG_OFF;
IC2_SEG129 = IC_SEG_OFF;
IC2_SEG127 = IC_SEG_OFF;
IC2_SEG041 = IC_SEG_OFF;
IC2_SEG126 = IC_SEG_OFF;
IC2_SEG130 = IC_SEG_OFF;
IC2_SEG037 = IC_SEG_OFF;
IC2_SEG036 = IC_SEG_OFF;
IC2_SEG035 = IC_SEG_OFF;
IC2_SEG133 = IC_SEG_OFF;
IC2_SEG038 = IC_SEG_OFF;
IC2_SEG132 = IC_SEG_OFF;
IC2_SEG131 = IC_SEG_OFF;
IC2_SEG030 = IC_SEG_OFF;
IC2_SEG029 = IC_SEG_OFF;
IC2_SEG088 = IC_SEG_OFF;
IC2_SEG087 = IC_SEG_OFF;
IC2_SEG086 = IC_SEG_OFF;
IC2_SEG031 = IC_SEG_OFF;
IC2_SEG085 = IC_SEG_OFF;
IC2_SEG027 = IC_SEG_OFF;
IC2_SEG026 = IC_SEG_OFF;
IC2_SEG092 = IC_SEG_OFF;
IC2_SEG091 = IC_SEG_OFF;
IC2_SEG090 = IC_SEG_OFF;
IC2_SEG028 = IC_SEG_OFF;
IC2_SEG089 = IC_SEG_OFF;
}
m_Res = EX_OK;
}
return m_Res;
}
uint8_t fuel_check_SEG_step = 0;
void SEG_Scan_SET_FuelDial(void)
{
uint8_t a = 0;
a = fuel_check_SEG_step / 10u;
SEG_SET_FuelDial(1, a);
if (fuel_check_SEG_step < 59)
{
fuel_check_SEG_step++;
}
else
{
fuel_check_SEG_step = 0;
}
}
uint8_t Espeed_check_SEG_step = 0;
......@@ -2685,7 +2710,7 @@ void SEG_Scan_SET_EspeedDial(void)
uint16_t a = 0;
a = (Espeed_check_SEG_step / 2) * 100;
SEG_SET_EspeedDial(1, a / 1000, a);
//SEG_SET_EspeedDial(1, a / 1000, a);
}
......@@ -2710,12 +2735,15 @@ uint8_t check_SEG_step = 0;
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_07_Key_ISTOP, LED_ON);
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_02_Normal_Voltage, LED_ON);
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_03_High_Low_Voltage, LED_ON);
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_05_Fuel_Y, LED_ON);
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_04_Fuel_W, LED_ON);
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_06_Screen_Time, LED_ON);
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_29_MPH, LED_ON);
// LED_Driver_Channel_Set(LampChannel_0, LampCh0_30_KM_H, LED_ON);
// RTE_GPIO_Set_Level(VSPEED_TEN_OUT, 1);
// RTE_GPIO_Set_Level(VSPEED_HUNDREDS_OUT, 1);
// SEG_Scan_SET_FuelDial();
// SEG_Scan_SET_EspeedDial();
//
//}
......@@ -2728,20 +2756,24 @@ void Checkself_Init(void)
Checkself_SEG_step_count = 0;
check_SEG_step = 0;
Espeed_check_SEG_step = 0;
fuel_check_SEG_step = 0;
}
void Checkself_SEG_Display(void)
{
uint16_t Vspeed = 0;
uint16_t Espeed = 0;
uint16_t Fuel = 0;
uint16_t Trip = 0;
uint16_t hour = 0;
uint16_t min = 0;
uint32_t ODO = 0;
Fuel = Checkself_SEG_step / 5u;
SEG_SET_FuelDial(1, Fuel);
Espeed = (Checkself_SEG_step * 2 / 5) * 1000;
SEG_SET_EspeedDial(1, Espeed / 1000, Espeed);
//SEG_SET_EspeedDial(1, Espeed / 1000, Espeed);
Vspeed = Checkself_SEG_step * 7;
if (Vspeed > 198)
......
......@@ -47,13 +47,13 @@ _Fun_Res SEG_SET_Frame(uint8_t m_Flag);
_Fun_Res SEG_SET_GEAR(uint8_t m_Gear_Flag,uint8_t m_Gear);
/**@brief 电量表盘显示函数*/
_Fun_Res SEG_SET_EleDial(uint8_t m_Flag,uint8_t m_SEG,uint8_t m_NUM);
_Fun_Res SEG_SET_EleDial(uint8_t m_Flag,uint8_t m_SEG,uint16_t m_NUM);
// /**@brief 燃油表盘显示函数*/
// _Fun_Res SEG_SET_FuelDial(uint8_t m_Flag,uint8_t m_SEG);
/**@brief 燃油表盘显示函数*/
_Fun_Res SEG_SET_FuelDial(uint8_t m_Flag,uint8_t m_SEG);
/**@brief 转速表盘显示函数*/
_Fun_Res SEG_SET_EspeedDial(uint8_t m_Flag, uint8_t m_SEG, uint16_t m_NUM);
//_Fun_Res SEG_SET_EspeedDial(uint8_t m_Flag, uint8_t m_SEG, uint16_t m_NUM);
/**@brief 功率表盘显示函数*/
_Fun_Res SEG_SET_PowerDial(uint8_t m_Flag,uint8_t m_SEG,uint8_t m_Sign,uint8_t m_NUM);
......@@ -61,6 +61,8 @@ _Fun_Res SEG_SET_PowerDial(uint8_t m_Flag,uint8_t m_SEG,uint8_t m_Sign,uint8_t m
/**@brief 续航里程显示函数*/
_Fun_Res SEG_SET_DTE_NUM(uint8_t m_Flag, uint16_t m_NUM);
/**@brief 车速8字段显示函数*/
_Fun_Res SEG_SET_VSpeed_NUM(uint8_t m_Flag , uint16_t m_NUM);
/**@brief L8字段显示函数*/
_Fun_Res SEG_SET_L8_NUM(uint8_t m_Flag , uint8_t m_NUM);
......@@ -77,10 +79,10 @@ _Fun_Res SEG_SET_Fault_Code(uint8_t m_Flag, uint16_t m_NUM);
/**@brief 时间显示函数*/
_Fun_Res SEG_SET_Clock(uint8_t m_hour, uint8_t m_minute, uint8_t m_icon, uint8_t m_Flag1, uint8_t m_Flag2 );
void Check_SEG_Display(void);
uint8_t Check_SEG_Display(void);
extern uint8_t check_SEG_step;
extern uint8_t Espeed_check_SEG_step;
#define IC_SEG_OFF 0x00u
......@@ -89,16 +91,24 @@ extern uint8_t Espeed_check_SEG_step;
/**@brief 指示灯显示函数*/
_Fun_Res SEG_SET_LED_STS(uint8_t LED_NUM , uint8_t m_Flag);
/**@brief 行驶时间显示函数*/
_Fun_Res SEG_SET_Travel_Time_NUM(uint8_t m_Flag, uint32_t m_NUM);
//扫盘用
_Fun_Res SEG_Scan_SET_EleDial(uint8_t m_SEG);
_Fun_Res SEG_Scan_SET_PowerDial(uint8_t m_SEG);
/**@brief 刀盘显示函数*/
_Fun_Res SEG_SET_Cutterhead(uint16_t LED_NUM, uint8_t m_Flag);
void SEG_Scan_SET_FuelDial(void);
void SEG_Scan_SET_EspeedDial(void);
//void SEG_Scan_SET_FuelDial_Checkself(void);
//void SEG_Scan_SET_EspeedDial_Checkself(void);
//void SEG_Scan_SET_VSpeed_Checkself(void);
extern void Checkself_Init (void);
extern void Checkself_SEG_Display(void);
void TYW_Check_Count(void);
......
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