chen
2024-11-27 b3a401224cebaa7e938df4295841f8d2f702b11c
keil/include/main/main.c
@@ -191,6 +191,7 @@
            }else{
               power_low_flag=0;
               gps_air780_power_change(gps_power_state,1);//gps原样,开启4G
               LOG_INFO(TRACE_MODULE_APP, "电池电压正常,4G,GPS,正常工作\r\n");
            }
      gpio_pin_set(ADC_GND_ENABLE);//在拉高
  //  LOG_INFO(TRACE_MODULE_APP, "The voltage is %%%d \r\n",bat_percent);
@@ -285,7 +286,7 @@
void IMUTask(void)
{
   if(nomove_count>g_com_map[NOMOVESLEEP_TIME]&&g_com_map[IMU_ENABLE]==1)
   {
   {power_wakeup_enable((enum POWER_WAKEUP_SOURCE_T)ACCLERATE_DETECT_Pin, POWER_WAKEUP_LEVEL_HIGH);
      mcu_deep_sleep();
   }
}
@@ -331,7 +332,8 @@
      gps_wait_count=0;
      }
    //UWB状态检测
if(!power_low_flag)//低供电下不需要检测重连
   {
    if(IfTCPConnected())
    {
        TCP_reconnect_timer =0;
@@ -349,6 +351,7 @@
        }
    }
   }
    HIDO_TimerTick();
      if(nomove_count<=g_com_map[NOMOVESLEEP_TIME])//防止溢出
    nomove_count++;
@@ -367,6 +370,7 @@
   green_charge_state=0;
   charge_red_on();
   }
   UWBPoll();
   charge_state_change();//充电状态判断
if(secondtask_count++%2==0)
    {
@@ -376,7 +380,7 @@
    }
      if(enbale_blink_flag)
   {
      delay_us(5000);
      //delay_us(5000);
   green_charge_state=0;
   charge_red_off();
   }      
@@ -440,9 +444,9 @@
    ip2 = (g_com_map[TCP_IP_2]>>12&0xf)*1000+(g_com_map[TCP_IP_2]>>8&0xf)*100+(g_com_map[TCP_IP_2]>>4&0xf)*10+(g_com_map[TCP_IP_2]&0xf);
    ip3 = (g_com_map[TCP_IP_3]>>12&0xf)*1000+(g_com_map[TCP_IP_3]>>8&0xf)*100+(g_com_map[TCP_IP_3]>>4&0xf)*10+(g_com_map[TCP_IP_3]&0xf);
    port = g_com_map[TCP_PORT];
    g_com_map[VERSION] = (1<<8)|10;
    g_com_map[VERSION] = (1<<8)|1;
    LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id);
    LOG_INFO(TRACE_MODULE_APP,"固件版本:UWB-4G车载手环 V%d.%d. \r\n",g_com_map[VERSION]>>8,g_com_map[VERSION]&0xff);
    LOG_INFO(TRACE_MODULE_APP,"固件版本:4G-GPS定位手环 V%d.%d. \r\n",g_com_map[VERSION]>>8,g_com_map[VERSION]&0xff);
    LOG_INFO(TRACE_MODULE_APP,"服务器地址: %d.%d.%d.%d:%d.\r\n",ip0,ip1,ip2,ip3,port);
}
@@ -453,28 +457,28 @@
    if(gpio_pin_get_val(INPUT_5V_Pin))
    {
        if(state5v==0)
        {
            state5v=1;
            state5V_prase_flag=state5v;
            gps_prase_flag=0;//解除gps解析
            uart1_change_from_gps_to_debug();//测试
         //   uart_receive(UART_ID1,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback);//开启dma
            //UartInit();
        }
//        if(state5v==0)
//        {
//            state5v=1;
//            state5V_prase_flag=state5v;
//            gps_prase_flag=0;//解除gps解析
//            uart1_change_from_gps_to_debug();//测试
//         //   uart_receive(UART_ID1,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback);//开启dma
//            //UartInit();
//        }
        //UART_CheckSend();
    } else {
        if(state5v==1)
        {
            g_com_map[MODBUS_MODE] = 0;
            state5v=0;
            state5V_prase_flag=state5v;
            gps_prase_flag=1;//恢复gps解析
            uart1_change_from_debug_to_gps();//测试
          //  uart_receive(UART_ID1,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback);//开启dma
            //UartDeinit();
        }
//        //UART_CheckSend();
//    } else {
//        if(state5v==1)
//        {
//            g_com_map[MODBUS_MODE] = 0;
//            state5v=0;
//            state5V_prase_flag=state5v;
//            gps_prase_flag=1;//恢复gps解析
//            uart1_change_from_debug_to_gps();//测试
//          //  uart_receive(UART_ID1,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback);//开启dma
//            //UartDeinit();
//        }
    }
      UART_CheckReceive();
}
@@ -592,6 +596,7 @@
    board_acceleration_detection_init(move_handler);
//       LOG_INFO(TRACE_MODULE_APP, "测试进入app");
      board_4GUsart_detection_init(_4gUsart_handler);
    while (1)
    { test4=gpio_pin_get_val(SCL_PIN);
      
@@ -652,7 +657,7 @@
//        }//yuan
            if(delaysleep_count==0)
        if(!gps_power_state&&!gpio_pin_get_val(INPUT_5V_Pin)&&((IfTCPConnected()&&AIR780E_IsIPIdle()&&Socket_IsSendQueueEmpty(0))||((!flag_TCP_reconnectting)&&!IfTCPConnected())))
        if(!gps_power_state&&!gpio_pin_get_val(INPUT_5V_Pin)&&((IfTCPConnected()&&AIR780E_IsIPIdle()&&Socket_IsSendQueueEmpty(0))||((!flag_TCP_reconnectting)&&!IfTCPConnected())||power_low_flag))
        {
//               test1=gpio_pin_get_val(_4G_USART_RX_Pin);
            uint32_t lock;