diff --git a/LoRaWAN/App/lora_app.c b/LoRaWAN/App/lora_app.c index 43dc765..f6ba15f 100644 --- a/LoRaWAN/App/lora_app.c +++ b/LoRaWAN/App/lora_app.c @@ -449,7 +449,8 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) case BUT1_Pin: /* Note: when "EventType == TX_ON_TIMER" this GPIO is not initialized */ door_changed_flag = 1; - UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSP1CheckingEvent), CFG_SEQ_Prio_0); + //UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); + //UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSP1CheckingEvent), CFG_SEQ_Prio_0); if (EventType == TX_ON_EVENT) { @@ -474,14 +475,17 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) static void OnYunhornSTSP1CheckingEvent(void) { - - door_status = HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0); - - if (door_status != door_previous_status) + if (door_changed_flag==1) { - door_previous_status = door_status; - door_changed_flag = 1; - APP_LOG(TS_OFF,VLEVEL_M,"\r\n----- Door Status Changed-------------\r\n"); + door_status = HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0); + + if (door_status != door_previous_status) + { + door_previous_status = door_status; + + UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); + } + door_changed_flag = 0; } //UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); @@ -685,13 +689,19 @@ static void SendTxData(void) static void OnTxTimerEvent(void *context) { /* USER CODE BEGIN OnTxTimerEvent_1 */ - UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSP1CheckingEvent), CFG_SEQ_Prio_0); - if (door_changed_flag ==1) - { - door_changed_flag =0; - UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); + //UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_YunhornSTSP1CheckingEvent), CFG_SEQ_Prio_0); + + + //door_changed_flag =0; + door_status = HAL_GPIO_ReadPin(GPIOA,GPIO_PIN_0); + if (door_previous_status != door_status) + { + door_previous_status = door_status; + UTIL_SEQ_SetTask((1 << CFG_SEQ_Task_LoRaSendOnTxTimerOrButtonEvent), CFG_SEQ_Prio_0); + } + //UTIL_TIMER_Start(&TxTimer); - } + /* USER CODE BEGIN OnTxTimerEvent_2 */ /* USER CODE END OnTxTimerEvent_2 */