keil/include/main/main.c
@@ -278,7 +278,6 @@
uint8_t heart_upload_time=0;
extern uint8_t taglist_num;
//extern uint8_t ceshidata[500];
extern uint8_t fixed_solution_count_minute;
extern uint8_t ceshichangdu;
uint8_t gps_ntripsend;
extern uint8_t in_the_room_flag;
@@ -287,10 +286,13 @@
extern uint16_t g_spsum_GSV_sum;
extern uint16_t g_snum_GSV_sum;
extern uint8_t ceju_leave_flag;
extern uint8_t fixed_solution_count_minute;
uint8_t open_gps_time=0;
static void sleep_timer_callback(void *dev, uint32_t time)
{
if(secondtask_count++%2==0)
    {
    {
        open_gps_time++;
        input5v_time=1;
        flag_secondtask = 1;
        if(!read_5v_input_pca())
@@ -314,40 +316,62 @@
//        OpenUWB();
        }
//            in_the_room_flag=1;   
      if(30<open_gps_time<90)
         {
         Receive_g_spsum_Data(g_spsum_GSV);
         Receive_g_snum_Data(g_snum_GSV);
         }
         if(ceju_leave_flag==1)
         {
         Receive_g_spsum_Data(g_spsum_GSV);
         Receive_g_snum_Data(g_snum_GSV);
         if((g_spsum_GSV_sum<200&&g_snum_GSV_sum<3)||(fixed_solution_count_minute<30))
//         if((g_spsum_GSV_sum<200&&g_snum_GSV_sum<3)&&(ceju_leave_flag==1))
         if(open_gps_time>90)
         {
          open_gps_time=90;
//         if((g_spsum_GSV_sum<200&&g_snum_GSV_sum<3)&&(fixed_solution_count_minute<30||fixed_solution_count_minute==0))
         if((g_spsum_GSV_sum<300||g_snum_GSV_sum<20)&&(fixed_solution_count_minute<30))
         {
         lounei_flag=1;
         Switch_low_power_mode(lounei_flag);
//         Switch_low_power_mode(lounei_flag);
         }
         if((200<g_spsum_GSV_sum&&2<g_snum_GSV_sum)&&(fixed_solution_count_minute>30))
         if((400<g_spsum_GSV_sum&&10<g_snum_GSV_sum)&&(fixed_solution_count_minute>30))
//         if((200<g_spsum_GSV_sum&&3<g_snum_GSV_sum)&&(ceju_leave_flag==1))
         {
         lounei_flag=0;
         Switch_low_power_mode(lounei_flag);
//         Switch_low_power_mode(lounei_flag);
         }
         }
         if(heart_upload_time==60)
         {
         ceju_leave_flag=0;
         fixed_solution_count_minute=0;
         if(lounei_flag==1)
         {
            PCA9555_Set_One_Value_Output(GPS_POWER,0);
         }
         }
         if(heart_upload_time==0||heart_upload_time==60)
         {
            TCPHeartBeatUpload();   
            heart_upload_time=0;
            if(lounei_flag==1)
            {
//               PCA9555_Set_One_Value_Output(LED_POWER,0);
               PCA9555_Set_One_Value_Output(GPS_POWER,0);
            }
               if(heart_upload_time==60)
               {
                  ceju_leave_flag=0;
                  fixed_solution_count_minute=0;
               }
         }
         heart_upload_time++;
         }
         }
    }else{
        flag_secondtask = 0;
    }