From 16ccf41b599457daa3e870be7875d23cda6183f2 Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期三, 02 四月 2025 15:14:35 +0800
Subject: [PATCH] 1.7  改变gps上传解析逻辑,按键跟关机改为中断触发

---
 keil/include/main/main.c |   76 ++++++++------------------------------
 1 files changed, 16 insertions(+), 60 deletions(-)

diff --git a/keil/include/main/main.c b/keil/include/main/main.c
index effe597..0c6a4fa 100644
--- a/keil/include/main/main.c
+++ b/keil/include/main/main.c
@@ -174,6 +174,7 @@
 uint8_t flag_4G_recdata;
 uint8_t ledonflag;
 uint32_t ledontime;
+extern uint8_t flag_first_TCPconnect;
 void IMUTask(void)
 {
 	if(nomove_count>g_com_map[NOMOVESLEEP_TIME]&&g_com_map[IMU_ENABLE]==1)
@@ -185,10 +186,12 @@
 {
 if(!read_userkey_input_pca())
      {
-        if(HIDO_TimerGetTick() - keystarttime3>2)
+         delay_ms(1000);
+        if(!read_userkey_input_pca())
         {
             userkey_state = 1;
             keystarttime3 =  HIDO_TimerGetTick();
+            flag_first_TCPconnect = 1;
 						//UDPClient_UploadGPS();
         }
 //        if(HIDO_TimerGetTick() - keystarttime2>10)
@@ -205,7 +208,8 @@
 {
      if(read_powerkey_input_pca())
      {
-        if(HIDO_TimerGetTick() - keystarttime>2)
+        delay_ms(1000);
+        if(read_powerkey_input_pca())
         {
               rtkled=WHITE;
               uwbled=WHITE;
@@ -233,12 +237,13 @@
 }
 void MinuteTask(void)
 {		
-		PCA9555_Set_One_Value_Output(ADC_MINIUS,0);//拉低
+	PCA9555_Set_One_Value_Output(ADC_MINIUS,0);//拉低
+    delay_ms(100);
     adc_get(&sample[0], NUM_SAMPLES, adc_callback);//adc采样
 }
 void SecondTask(void)
 {static uint8_t second_count;
-    if(second_count++>60)
+    if(second_count++>120)
     {
         second_count = 0;
         MinuteTask();
@@ -306,10 +311,7 @@
     }else{
         flag_secondtask = 0;
     }
-    if(gps_ntripsend==1)
-    {
- gps_ntripsend=2;   
-    }
+    
  if(delaysleep_count>0)
      delaysleep_count--;
 }
@@ -335,6 +337,11 @@
 	{
         PowerTask();
         test31++;
+	}
+    if(!(SOS_ENBALE_POSITION&gpio_state))
+	{
+        UserKeyTask();
+        test21++;
 	}
 }
 
@@ -410,7 +417,7 @@
 		}
     g_com_map[MODBUS_MODE] = 0;
 		log_4g_enable_flag=g_com_map[LOG_4G_ENABLE];
-    g_com_map[VERSION] = (1<<8)|5;
+    g_com_map[VERSION] = (1<<8)|7;
          
         
     LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id);
@@ -590,55 +597,6 @@
 int test1,test3;
 uint32_t test4;
 extern uint8_t receive_flag;
-//extern uint8_t YUANGPS_ParseGGA_data[256];
-//extern uint8_t YUANGPS_ParseGGA_changdu;
-//static HIDO_CHAR url[256 + 1];
-//void OTA_MODE(void)
-//{
-//    if(g_com_map[OTA_FLAG])
-//    {
-//        Uart_Register(UART_ID_4G, UART_ID0);
-//        Uart_Register(UART_ID_DBG_GPS, UART_ID1);
-//        DBG_Init();
-//        DBG_SetMode(DBG_MODE_SHELL);
-//        Internet_Init();
-//    //    TCPClient_Init();
-//        HTTPClient_Init();
-//        gpio_open();
-//        LED_output_init();//配置彩色灯引脚
-//        IIC2_Init();
-//    //    Accelerometer_Init();
-//        PCA9555_init();
-//        uart_receive(UART_ID1,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback);
-//        power_init();
-//        sleep_timer_open(true, SLEEP_TIMER_MODE_RELOAD, sleep_timer_callback);
-//        sleep_timer_start(__MS_TO_32K_CNT(SLEEP_TIMER_NUM));//测试
-//        pca_input_detection_init(pca_handler);//pca检测输入
-//        state5v=1;
-//        state5V_prase_flag=state5v;
-//        gps_prase_flag=0;//解除gps解析
-//        uart1_change_from_gps_to_debug();//测试
-//        PCA9555_Set_One_Value_Output(MCU_A,1);//输出高电平切换为5V输入
-//        memcpy((HIDO_UINT8 *)url,g_com_map+OTA_URL_INDEX,g_com_map[OTA_URL_CHANGDU]);
-//        OTA_Start((HIDO_UINT8 *)url);
-//        
-////        g_com_map[OTA_FLAG]=0;
-////        save_com_map_to_flash();
-////        delay_us(100000);
-////        NVIC_SystemReset(); //软复位回到bootloader
-//    
-//    
-//        while (1)
-//        { 
-//            OTA_Poll();
-//            HTTPClient_Poll();    
-//            Internet_Poll();
-//            HIDO_TimerPoll();
-//            HIDO_ATLitePoll();
-////            IdleTask();
-//        }
-//    }
-//}
 int main(void)
 {
     board_clock_run();
@@ -727,9 +685,7 @@
             flag_secondtask = 0;
             SecondTask();
         }
-		PowerTask();
 		IMUTask();
-		UserKeyTask();
         IdleTask();
     }
 }

--
Gitblit v1.9.3