From 01b6f2525f47ee781d86a2495dfcd17f68ccbafd Mon Sep 17 00:00:00 2001
From: zhangbo <zhangbo@qq.com>
Date: 星期二, 17 六月 2025 11:54:47 +0800
Subject: [PATCH] 通过debug已经测试功能正常,移植到正确的工卡试下

---
 keil/include/src/GPS.c |   46 ++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 40 insertions(+), 6 deletions(-)

diff --git a/keil/include/src/GPS.c b/keil/include/src/GPS.c
index 2e97834..e7ece43 100644
--- a/keil/include/src/GPS.c
+++ b/keil/include/src/GPS.c
@@ -615,6 +615,7 @@
  * Modified Date:    : 2021年5月07日
  *******************************************************************************/
 extern uint8_t GPS_UPLOAD_FLAG;
+uint16_t GPS_UPload_sleep_flag=0;
 uint8_t gpserror;
 HIDO_VOID GPS_RecvFsm(HIDO_UINT8 _u8RecvChar)
 {
@@ -659,12 +660,45 @@
             	{
             		GPS_ParseGGA(l_stGPSRecv.m_acRecvBuf, l_stGPSRecv.m_u32RecvLen);
                     l_stGPSRecv.m_acRecvBuf[l_stGPSRecv.m_u32RecvLen - 2] = '\0';
-										if(GPS_UPLOAD_FLAG==1)
-										{
-	                    UDPClient_UploadGPS(l_stGPSRecv.m_acRecvBuf); 
-											GPS_UPLOAD_FLAG=0;											
-										}
-             
+//                    #ifdef UWB_CG
+                    if(g_com_map[GPSENBLE]==0)
+                    {
+//                    UDPClient_UploadGPS(l_stGPSRecv.m_acRecvBuf); 
+                    }
+                    else if(g_com_map[GPSENBLE]&&g_com_map[GPSFrequency]==1)
+                    {
+                        if (l_u8PosState >= 1) 
+                        {
+                            UDPClient_UploadGPS(l_stGPSRecv.m_acRecvBuf);           // 
+                        } 
+                        else if (l_u8PosState == 0)           
+                        {
+                                if (++GPS_UPload_sleep_flag >= 60) 
+                                {
+                                        UDPClient_UploadGPS(l_stGPSRecv.m_acRecvBuf);
+                                        GPS_UPload_sleep_flag = 0;    
+                                }
+                        }	
+                    }
+                    else if(g_com_map[GPSENBLE])
+                    {
+                            if (l_u8PosState >= 1) 
+                            {
+                                if (++GPS_UPLOAD_FLAG >= g_com_map[GPSFrequency])      
+                                { 
+                                        UDPClient_UploadGPS(l_stGPSRecv.m_acRecvBuf); 
+                                        GPS_UPLOAD_FLAG = 0;         
+                                }
+                            } 
+                            else if (l_u8PosState == 0)           
+                            {
+                                if (++GPS_UPload_sleep_flag >= 60) 
+                                {
+                                        UDPClient_UploadGPS(l_stGPSRecv.m_acRecvBuf);
+                                        GPS_UPload_sleep_flag = 0;    
+                                }
+                            }
+                    }
                     switch(l_u8PosState)
                     {
                         case 0:

--
Gitblit v1.9.3