From da7797b2548c24091fd530fdeb8f3bf4a87cc822 Mon Sep 17 00:00:00 2001 From: WXK <287788329@qq.com> Date: 星期二, 19 三月 2024 11:14:16 +0800 Subject: [PATCH] 1 --- Src/application/GPS.c | 17 +++++++++++++---- 1 files changed, 13 insertions(+), 4 deletions(-) diff --git a/Src/application/GPS.c b/Src/application/GPS.c index a98eb48..3fd298a 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; @@ -445,11 +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; -static HIDO_INT32 GPS_ParseGGA(HIDO_CHAR *_pcData, HIDO_UINT32 _u32Len) +extern uint8_t fangzhijinrushuimian_flag; +HIDO_INT32 GPS_ParseGGA(HIDO_CHAR *_pcData, HIDO_UINT32 _u32Len) { ST_GPS stGPS; HIDO_DataStruct stTime;//时间 @@ -558,6 +559,7 @@ gps_jingdu=stGPS.m_dLat; gps_weidu=stGPS.m_dLon; gps_height=stGPS.m_fAlt+stGPS.m_fMsl; + fangzhijinrushuimian_flag=0; } else//如果不是成功获取位置的那一包 { @@ -569,6 +571,7 @@ gps_jingdu=0; gps_weidu=0; gps_height=0; + fangzhijinrushuimian_flag=0; } return HIDO_OK; @@ -623,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; } } @@ -718,7 +724,10 @@ { 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