From 772f4fb6bb962868b36d838bbef446e5aee3c864 Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期六, 05 七月 2025 14:24:44 +0800 Subject: [PATCH] commap 大小从512改成100,修改休眠逻辑,休眠标志位触发之后,先过1秒关闭4g,2秒之后再进入休眠模式 --- keil/include/main/main.c | 36 +++++++++++++++++++++++------------- 1 files changed, 23 insertions(+), 13 deletions(-) diff --git a/keil/include/main/main.c b/keil/include/main/main.c index 730c4a0..dbfd129 100644 --- a/keil/include/main/main.c +++ b/keil/include/main/main.c @@ -139,21 +139,22 @@ uint8_t onlyoneflag=1; void mcu_deep_sleep(void) { - + // char str[19]= {"AT+POWERMODE=ST\r\n"}; uint32_t lock; + // uart_send(UART_ID0, str,19, NULL); trace_flush(); lock = int_lock(); // LOG_INFO(TRACE_MODULE_APP, "进入深度休眠\r\n"); // gps_air780_power_change(0,0);//关闭gps,4G PCA9555_Set_One_Value_Output(LED_POWER,0);//输出低电平关闭LED - PCA9555_Set_One_Value_Output(GPS_POWER,0);//关闭gps,4G + PCA9555_Set_One_Value_Output(GPS_POWER,0);//关闭gps // PCA9555_Set_One_Value_Output(TTS_ENABLE,0); // gpio_pin_get_val(PCA_INPUT_DETECT); - PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0);//关闭gps,4G - +// PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0);//关闭4G AT+CPOWD + sleep_timer_stop(); -// delay_ms(200); +// delay_ms(1); if(!gpio_pin_get_val(PCA_INPUT_DETECT)) { return; @@ -213,7 +214,7 @@ uint32_t keystarttime,keystarttime2,keystarttime3; extern uint32_t get_in_num,get_out_num; uint8_t flag_4G_recdata; -uint8_t ledonflag; +uint8_t ledonflag,_4gclose_flag; uint32_t ledontime; extern uint8_t flag_first_TCPconnect; void IMUTask(void) @@ -227,17 +228,26 @@ userkey_state=4; heartbeasend_flag = 1; sleepflag=1; - + sleepflagtime=HIDO_TimerGetTick(); } } if(sleepflag) { - if(HIDO_TimerGetTick() - sleepflagtime>3) - { - power_wakeup_enable((enum POWER_WAKEUP_SOURCE_T)PCA_INPUT_DETECT, POWER_WAKEUP_LEVEL_LOW); - mcu_deep_sleep(); - } + if(HIDO_TimerGetTick() - sleepflagtime>1) + { + if(!_4gclose_flag) + { + _4gclose_flag = 1; + PCA9555_Set_One_Value_Output(AIR780E_ENBALE,0); + } + } + + if(HIDO_TimerGetTick() - sleepflagtime>3) + { + power_wakeup_enable((enum POWER_WAKEUP_SOURCE_T)PCA_INPUT_DETECT, POWER_WAKEUP_LEVEL_LOW); + mcu_deep_sleep(); + } } } void powerON_Task(void) @@ -570,7 +580,7 @@ // } g_com_map[MODBUS_MODE] = 0; log_4g_enable_flag=g_com_map[LOG_4G_ENABLE]; - g_com_map[VERSION] = (1<<8)|28; + g_com_map[VERSION] = (1<<8)|29; LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id); -- Gitblit v1.9.3