| 
 
| 这是之前工程用STM8的一段程序,不懂,麻烦帮忙解释一下。 
 if(system_parameter.Voltage_Group_Key_Flag)//档位
 {
 if(Read_Key_Voltage_Group == 0)
 {
 if(system_parameter.Voltage_Group_Key_times < 2000)
 {
 system_parameter.Voltage_Group_Key_times++;
 }
 else if(system_parameter.Voltage_Group_Key_times >= 2000)
 {
 system_parameter.Voltage_Group_Key_times = 0;
 system_parameter.Voltage_Group_Key_Long = 1;
 system_parameter.Voltage_Group_Key_Short = 0;
 system_parameter.Voltage_Group_Key_Flag = 0;
 if(system_parameter.ON_OFF_Power)
 {
 system_parameter.Voltage_Group_LED_Enable_Flag = 1;
 }
 }
 
 }
 else
 {
 if((system_parameter.Voltage_Group_Key_times > 100)&&(system_parameter.Voltage_Group_Key_times < 1500)&&(system_parameter.Voltage_Group_Key_Cont == 0))
 {
 system_parameter.Voltage_Group_Key_times = 0;
 system_parameter.Voltage_Group_Key_Long = 0;
 system_parameter.Voltage_Group_Key_Short = 1;
 system_parameter.Voltage_Group_Key_Flag = 0;
 if(system_parameter.ON_OFF_Power)
 {
 system_parameter.Voltage_Group_LED_Enable_Flag = 1;
 }
 }
 else
 {
 system_parameter.Voltage_Group_Key_times = 0;
 system_parameter.Voltage_Group_Key_Long = 0;
 system_parameter.Voltage_Group_Key_Short = 0;
 system_parameter.Voltage_Group_Key_Flag = 0;
 
 
 }
 }
 }
 
 if(system_parameter.Plus_Key_Flag)//加
 {
 if(Read_Key_Plus == 0)
 {
 if(system_parameter.Plus_Key_times <= 2000)
 {
 system_parameter.Plus_Key_times++;
 }
 else if(system_parameter.Plus_Key_times >= 2000)
 {
 //system_parameter.Plus_Key_times = 0;
 system_parameter.Plus_Key_Long = 1;
 system_parameter.Plus_Key_Short = 0;
 system_parameter.Plus_Key_Flag = 0;
 if(system_parameter.ON_OFF_Power)
 {
 system_parameter.Up_LED_Enable_Flag = 1;
 }
 }
 }
 else
 {
 if((system_parameter.Plus_Key_times > 100)&&(system_parameter.Plus_Key_times < 1500))
 {
 system_parameter.Plus_Key_times = 0;
 system_parameter.Plus_Key_Long = 0;
 system_parameter.Plus_Key_Short = 1;
 system_parameter.Plus_Key_Flag = 0;
 if(system_parameter.ON_OFF_Power)
 {
 system_parameter.Up_LED_Enable_Flag = 1;
 }
 }
 else
 {
 system_parameter.Plus_Key_times = 0;
 system_parameter.Plus_Key_Long = 0;
 system_parameter.Plus_Key_Short = 0;
 system_parameter.Plus_Key_Flag = 0;
 }
 }
 }
 
 
 
 | 
 |