|
@@ -122,6 +122,8 @@ void TIM2_Int_Init(u16 arr,u16 psc)
|
|
|
NVIC_Init(&NVIC_InitStructure);
|
|
|
TIM_Cmd(TIM2, ENABLE);
|
|
|
}
|
|
|
+u8 sy_warning_flag1=0;
|
|
|
+u8 sy_warning_flag2=0;
|
|
|
|
|
|
void TIM2_IRQHandler()
|
|
|
{
|
|
@@ -133,35 +135,42 @@ void TIM2_IRQHandler()
|
|
|
TIM_ClearFlag(TIM2, TIM_IT_Update);
|
|
|
if(DY_Input==1)
|
|
|
{
|
|
|
- if(++pw>=100*10)
|
|
|
- {
|
|
|
- pw=0;
|
|
|
- ds_val=count*6;
|
|
|
- count=0;
|
|
|
- if(ds_val>70||ds_val<10)
|
|
|
- {
|
|
|
- warning_flag=1;
|
|
|
- }
|
|
|
- }
|
|
|
+ if(++pw>=100*10)
|
|
|
+ {
|
|
|
+ pw=0;
|
|
|
+ ds_val=count*6;
|
|
|
+ count=0;
|
|
|
+ if(ds_val>70||ds_val<10)
|
|
|
+ {
|
|
|
+ warning_flag=1;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- if(HwInput1==1)
|
|
|
+ if(HwInput1==1&&HwInput2==1&&HwInput3==1&&HwInput4==1)
|
|
|
{
|
|
|
- sy_val=100;
|
|
|
-
|
|
|
+ sy_val=150;
|
|
|
+ sy_warning_flag1=0;sy_warning_flag2=0;
|
|
|
}
|
|
|
- else if(HwInput2==1)
|
|
|
+ else if(HwInput2==1&&HwInput3==1&&HwInput4==1)
|
|
|
{
|
|
|
- sy_val=50;
|
|
|
+ sy_val=100;
|
|
|
+ sy_warning_flag1=0;sy_warning_flag2=0;
|
|
|
}
|
|
|
- if(HwInput3==1)
|
|
|
+ else if(HwInput3==1&&HwInput4==1)
|
|
|
{
|
|
|
- sy_val=10;
|
|
|
+ sy_val=50;
|
|
|
+
|
|
|
}
|
|
|
- if(HwInput4==1)
|
|
|
+ else if(HwInput4==1)
|
|
|
{
|
|
|
+ sy_val=10;
|
|
|
+
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
sy_val=0;
|
|
|
}
|
|
|
- get_cnt++;
|
|
|
+ get_cnt++;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -210,10 +219,16 @@ int main(void)
|
|
|
sprintf(showbuff,"剩余量:%3d/ml",sy_val);
|
|
|
OLED_ShowText(0,4,showbuff,0);
|
|
|
|
|
|
- if(sy_val==10||sy_val==0)
|
|
|
+ if(sy_val==10&&sy_warning_flag1==0)
|
|
|
{
|
|
|
warning_flag=1;
|
|
|
+ sy_warning_flag1=1;
|
|
|
}
|
|
|
+ if(sy_val==0&&sy_warning_flag2==0)
|
|
|
+ {
|
|
|
+ warning_flag=1;
|
|
|
+ sy_warning_flag2=1;
|
|
|
+ }
|
|
|
printf("SZZ152_X%2d.%1dH%dD%dZ%dK\r\n",temp_val/10,temp_val%10,ds_val,sy_val,warning_flag);
|
|
|
|
|
|
if(warning_flag)
|