From 7c93e39f66f75e445ddb224de1ce70ce6e0b0902 Mon Sep 17 00:00:00 2001
From: WXK <287788329@qq.com>
Date: 星期二, 26 三月 2024 17:51:12 +0800
Subject: [PATCH] V1.13

---
 Src/application/GPS.c |   90 ++++++++++++++++++++++++---------------------
 1 files changed, 48 insertions(+), 42 deletions(-)

diff --git a/Src/application/GPS.c b/Src/application/GPS.c
index d0251f8..3f8b4e5 100644
--- a/Src/application/GPS.c
+++ b/Src/application/GPS.c
@@ -39,7 +39,7 @@
 typedef struct
 {
     E_GPSRecvState m_eState;
-    HIDO_CHAR m_acRecvBuf[128];
+    HIDO_CHAR m_acRecvBuf[256];
     HIDO_UINT32 m_u32RecvLen;
 } ST_GPSRecv;
 
@@ -337,41 +337,41 @@
     return HIDO_OK;
 }
 
-#if 0
-/*******************************************************************************
- * Function Name     : GPS_ParseSpeed
- * Description       :
- * Input             : None
- * Output            : None
- * Return            : HIDO_OK 成功, HIDO_ERR 失败
- * Author            : www.hido-studio.com
- * Modified Date:    : 2022年5月2日
- *******************************************************************************/
-static HIDO_INT32 GPS_ParseSpeed(HIDO_DataStruct *_pstSpeedData, ST_GPS *_pstGPS)
-{
-    HIDO_UINT32 u32Len = _pstSpeedData->m_u32Len;
-    HIDO_CHAR *pcStart = (HIDO_CHAR *) _pstSpeedData->m_pData;
-    HIDO_CHAR acSpeed[10];
+//#if 0
+///*******************************************************************************
+// * Function Name     : GPS_ParseSpeed
+// * Description       :
+// * Input             : None
+// * Output            : None
+// * Return            : HIDO_OK 成功, HIDO_ERR 失败
+// * Author            : www.hido-studio.com
+// * Modified Date:    : 2022年5月2日
+// *******************************************************************************/
+//static HIDO_INT32 GPS_ParseSpeed(HIDO_DataStruct *_pstSpeedData, ST_GPS *_pstGPS)
+//{
+//    HIDO_UINT32 u32Len = _pstSpeedData->m_u32Len;
+//    HIDO_CHAR *pcStart = (HIDO_CHAR *) _pstSpeedData->m_pData;
+//    HIDO_CHAR acSpeed[10];
 
-    if (u32Len >= 10)
-    {
-        return HIDO_ERR;
-    }
+//    if (u32Len >= 10)
+//    {
+//        return HIDO_ERR;
+//    }
 
-    if (u32Len >= 1)
-    {
-        memcpy(acSpeed, pcStart, u32Len);
-        acSpeed[u32Len] = 0;
-        _pstGPS->m_u16Speed = atof(acSpeed) * 1.852;
-    }
-    else
-    {
-        _pstGPS->m_u16Speed = 0;
-    }
+//    if (u32Len >= 1)
+//    {
+//        memcpy(acSpeed, pcStart, u32Len);
+//        acSpeed[u32Len] = 0;
+//        _pstGPS->m_u16Speed = atof(acSpeed) * 1.852;
+//    }
+//    else
+//    {
+//        _pstGPS->m_u16Speed = 0;
+//    }
 
-    return HIDO_OK;
-}
-#endif
+//    return HIDO_OK;
+//}
+//#endif
 
 /*******************************************************************************
  * Function Name     : GPS_ParseSpeed
@@ -445,12 +445,12 @@
 char _pcData_final[256];
 extern uint8_t fangchai_flag;
 extern uint8_t GPSchangdu;
-extern uint8_t GPS_GGAdate[200];
+extern uint8_t GPS_GGAdate[400];
 extern u8 gps_state,gps_chafenlingqi,gps_satel_num,gps_signalpower;
 extern double gps_jingdu,gps_weidu;
 extern float gps_height;
 extern uint8_t fangzhijinrushuimian_flag;
-static HIDO_INT32 GPS_ParseGGA(HIDO_CHAR *_pcData, HIDO_UINT32 _u32Len)
+HIDO_INT32 GPS_ParseGGA(HIDO_CHAR *_pcData, HIDO_UINT32 _u32Len)
 {
     ST_GPS stGPS;
     HIDO_DataStruct stTime;//时间
@@ -585,8 +585,8 @@
  * Return            : one
  * Author            : hido.ltd
  * Modified Date:    : 2021年5月07日
- *******************************************************************************/
-static HIDO_VOID GPS_RecvFsm(HIDO_UINT8 _u8RecvChar)
+// *******************************************************************************/
+HIDO_VOID GPS_RecvFsm(HIDO_UINT8 _u8RecvChar)
 {
     switch (l_stGPSRecv.m_eState)
     {
@@ -626,7 +626,10 @@
 
             	if(strstr(l_stGPSRecv.m_acRecvBuf, "GGA,") != HIDO_NULL)
             	{
+                    
             		GPS_ParseGGA(l_stGPSRecv.m_acRecvBuf, l_stGPSRecv.m_u32RecvLen);
+                    memset(l_stGPSRecv.m_acRecvBuf,0,l_stGPSRecv.m_u32RecvLen);
+//                    fangzhijinrushuimian_flag=0;
             	}
             }
 
@@ -717,11 +720,14 @@
 // * Return            : None
 // * Author            : hido.ltd
 // *******************************************************************************/
-HIDO_VOID GPS_Recv_Poll(uint8_t u8RecvChar)
-{
-    	GPS_RecvFsm(u8RecvChar);
-}
-
+//HIDO_VOID GPS_Recv_Poll(uint8_t u8RecvChar)
+//{
+//    	GPS_RecvFsm(u8RecvChar);
+//}
+//HIDO_VOID GPS_ParseGGAPoll(HIDO_UINT8 data,HIDO_UINT8 datanum)
+//{
+//    	GPS_ParseGGA(&data, datanum);
+//}
 ///*******************************************************************************
 // * Function Name     : GPS_SetEventCallback
 // * Description       : GPS设置GPS事件回调

--
Gitblit v1.9.3