|
|
@@ -434,6 +434,9 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
|
|
|
}
|
|
|
|
|
|
printf("SOS_KEY 按压了:%d 秒\r\n", key_Duration);
|
|
|
+ SOS_key_struct.key_Duration = 0;
|
|
|
+ SOS_key_struct.key_CheckActive = 0;
|
|
|
+ SOS_key_struct.key_Count = 0;
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
@@ -449,12 +452,26 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
|
|
|
{
|
|
|
// 松开(上升沿)
|
|
|
printf("JUGE_KEY 松开\r\n");
|
|
|
+ // HAL_GPIO_WritePin(POWER_ON_GPIO_Port, POWER_ON_Pin, GPIO_PIN_RESET);
|
|
|
+
|
|
|
+ uint16_t key_Duration = 0;
|
|
|
+ if(JUGE_key_struct.key_Duration > now.seconds) {
|
|
|
+ key_Duration = now.seconds + 60 - JUGE_key_struct.key_Duration;
|
|
|
+ } else {
|
|
|
+ key_Duration = now.seconds - JUGE_key_struct.key_Duration;
|
|
|
+ }
|
|
|
+
|
|
|
+ printf("SOS_KEY 按压了:%d 秒\r\n", key_Duration);
|
|
|
+ JUGE_key_struct.key_Duration = 0;
|
|
|
+ JUGE_key_struct.key_CheckActive = 0;
|
|
|
+ JUGE_key_struct.key_Count = 0;
|
|
|
+
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
// 按下(下降沿)
|
|
|
printf("JUGE_KEY 按下\r\n");
|
|
|
- HAL_GPIO_WritePin(POWER_ON_GPIO_Port, POWER_ON_Pin, GPIO_PIN_RESET);
|
|
|
+ JUGE_key_struct.key_Duration = now.seconds;
|
|
|
}
|
|
|
}
|
|
|
|