From 3a40c92e09584e3dde2c8d73a43acc29bb1f07cf Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期四, 27 三月 2025 18:05:50 +0800
Subject: [PATCH] 1.5,完善ota升级

---
 keil/include/src/GPS.c |   37 ++++++++++++++++++++++++++++++++-----
 1 files changed, 32 insertions(+), 5 deletions(-)

diff --git a/keil/include/src/GPS.c b/keil/include/src/GPS.c
index 9362494..14e6944 100644
--- a/keil/include/src/GPS.c
+++ b/keil/include/src/GPS.c
@@ -7,14 +7,14 @@
 #include "HIDO_Util.h"
 #include "HIDO_Debug.h"
 #include "HIDO_Timer.h"
-
+#include "DBG.h"
 #include "GPS.h"
 //#include "GPIO.h"
 #include "Uart.h"
 #include "WS2812.h"
 #define GPS_DBG(level, fmt, ...) HIDO_Debug(fmt, __VA_ARGS__)
-
-#define GPS_UART_RX_BUF_SIZE                    1024
+#include <global_param.h>
+#define GPS_UART_RX_BUF_SIZE                    1000
 #define GPS_UART_TX_BUF_SIZE                    (4)
 
 typedef enum
@@ -478,9 +478,15 @@
 uint8_t fangchai_flag;
 uint8_t GPS_ParseGGA_data[256];
 uint8_t GPS_ParseGGA_changdu;
-extern uint16_t g_com_map[256];
+uint8_t YUANGPS_ParseGGA_data[256];
+uint8_t YUANGPS_ParseGGA_changdu;
+//extern uint16_t g_com_map[256];
 extern uint8_t bat_percent;
 uint8_t gpsbaoxu;
+extern uint8_t gps_ntripsend;
+//static HIDO_UINT8 l_u8GPSBuff[512];
+//static HIDO_UINT32 l_u8GPSLen = 0;
+//static HIDO_UINT32 l_u8GPSRecvTick = 0;
 static HIDO_INT32 GPS_ParseGGA(HIDO_CHAR *_pcData, HIDO_UINT32 _u32Len)
 {
     uint16_t state_flag;
@@ -497,6 +503,8 @@
     {
         return HIDO_ERR;
     }
+    memcpy(YUANGPS_ParseGGA_data,_pcData,_u32Len);
+    YUANGPS_ParseGGA_changdu=_u32Len;
     if(*(HIDO_CHAR *)stPosState.m_pData != '0')
     {
 //        HIDO_DebugString(_pcData, _u32Len);
@@ -534,6 +542,25 @@
         GPS_ParseGGA_changdu=u32Len;
     }
     UDPClient_UploadGPS();
+    gps_ntripsend=1;
+    NTRIPApp_ReportGGA(GPS_ParseGGA_data, _u32Len);
+//    if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_NTRIP&&gps_ntripsend)
+//    {
+//        gps_ntripsend=0;
+//        NTRIPApp_ReportGGA(GPS_ParseGGA_data, _u32Len);
+////        l_u8GPSLen = 0;
+//    }    
+//    if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_NTRIP)
+//        {
+//            if(GPS_ParseGGA_changdu > 0)
+//            {
+//                if((HIDO_TimerGetTick() - l_u8GPSRecvTick) > 50)
+//                {
+//                    NTRIPApp_ReportGGA(GPS_ParseGGA_data, GPS_ParseGGA_changdu);
+//                    GPS_ParseGGA_changdu = 0;
+//                }
+//            }
+//        }
     return HIDO_OK;
 }
 
@@ -781,7 +808,7 @@
 {
     HIDO_UINT8 u8RecvChar = 0;
 
-    while (Uart_GetChar(UART_ID_GPS, &u8RecvChar) == HIDO_OK)
+    while (Uart_GetChar(UART_ID_DBG_GPS, &u8RecvChar) == HIDO_OK)
     {
     	GPS_RecvFsm(u8RecvChar);
     }

--
Gitblit v1.9.3