parseGpsBuffer();//获取gps位置信息
Key_Statu_Read();//读取按键状态
if(k_sta.key1==1)//按下
{
printf("{ \"GPS\":\"%s%s %s%s\", \"warning\":%d}",Save_Data.latitude,Save_Data.N_S,Save_Data.longitude,Save_Data.E_W,1); //往串口打印位置信息和报警信息1
L_LED_D_ON;
HAL_Delay(1500);
L_LED_D_OFF;
k_sta.key1=0;
}
else{ //没按下
HAL_Delay(1500);
printf("{ \"GPS\":\"%s%s %s%s\", \"warning\":%d}",Save_Data.latitude,Save_Data.N_S,Save_Data.longitude,Save_Data.E_W,0);//发送位置信息和报警信息0
HAL_Delay(1500);
}
上面这段代码运行后,按下按键,按键状态一直没被检测到按下,怎么按都没有用,一直输出的是下面没按下的信息,但是我把下面else里面的内容注释后,按下按键又是可以响应的,这是什么原因呢,解决方法是是啥