From 8a2a686ae7a102b628f0a2b6c63b73b3f5ce573b Mon Sep 17 00:00:00 2001 From: WXK <287788329@qq.com> Date: 星期四, 17 四月 2025 16:23:34 +0800 Subject: [PATCH] 最新ota,适配4g手环升级与最新boot --- keil/include/src/GPS.c | 39 +++++++++++++++++++++++++++++++++------ 1 files changed, 33 insertions(+), 6 deletions(-) diff --git a/keil/include/src/GPS.c b/keil/include/src/GPS.c index 9362494..4b12c5e 100644 --- a/keil/include/src/GPS.c +++ b/keil/include/src/GPS.c @@ -7,13 +7,13 @@ #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__) - +#include <global_param.h> #define GPS_UART_RX_BUF_SIZE 1024 #define GPS_UART_TX_BUF_SIZE (4) @@ -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); @@ -504,7 +512,7 @@ { l_fnGPSEventCallback(GPS_TYPE_GGA, _pcData, _u32Len); } - rtkled=BLUE; +// rtkled=BLUE; GPS_successful_flag=1; _pcData[_u32Len-1]=0; _pcData[_u32Len-2]=0; @@ -520,7 +528,7 @@ } else { - rtkled=RED; +// rtkled=RED; GPS_successful_flag=0; _pcData[_u32Len-1]=0; _pcData[_u32Len-2]=0; @@ -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