|
|
@@ -169,11 +169,12 @@ HAL_StatusTypeDef Timer_Managment_Fun(TIM_HandleTypeDef *htim, Timer_Operation o
|
|
|
}
|
|
|
//开启供电
|
|
|
void powerOn() {
|
|
|
- HAL_GPIO_WritePin(POWER_ON_GPIO_Port, POWER_ON_Pin, GPIO_PIN_RESET);
|
|
|
+
|
|
|
+ HAL_GPIO_WritePin(POWER_ON_GPIO_Port, POWER_ON_Pin, GPIO_PIN_SET);
|
|
|
}
|
|
|
//设备关闭供电
|
|
|
void powerOff() {
|
|
|
- HAL_GPIO_WritePin(POWER_ON_GPIO_Port, POWER_ON_Pin, GPIO_PIN_SET);
|
|
|
+ HAL_GPIO_WritePin(POWER_ON_GPIO_Port, POWER_ON_Pin, GPIO_PIN_RESET);
|
|
|
}
|
|
|
|
|
|
uint32_t RTC_CalcDiffSeconds(RTC_DateTimeTypeDef *t1, RTC_DateTimeTypeDef *t2)
|
|
|
@@ -302,8 +303,13 @@ int main(void)
|
|
|
|
|
|
|
|
|
GPIO_PinState sosState = HAL_GPIO_ReadPin(SOS_KEY_GPIO_Port, SOS_KEY_Pin);//高为未按压,低为按下,优先级最高
|
|
|
+ GPIO_PinState powerState = HAL_GPIO_ReadPin(JUGE_PIN_GPIO_Port, JUGE_PIN_Pin);
|
|
|
// printf("SOS_KEY_Pin pin state = %d\r\n", sosState);
|
|
|
|
|
|
+ if (powerState == GPIO_PIN_RESET) {
|
|
|
+ powerOff();
|
|
|
+ }
|
|
|
+
|
|
|
if (!sosState) {
|
|
|
E52_Heartbeat_Fun();
|
|
|
printf("SOS中\r\n");
|