From ef0b1c703a953d434d387c41a791eaa6bb5c2541 Mon Sep 17 00:00:00 2001 From: hcj <1224667075@qq.com> Date: Thu, 17 Jul 2025 15:46:19 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E6=94=B9GPS=E6=95=B0=E6=8D=AE=E4=B8=8A?= =?utf8?q?=E4=BC=A0=E5=8D=8F=E8=AE=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../service/ble_service/blemoder/bletest.cpp | 20 ++++++++++++++----- .../service/ble_service/bleservice/bleEvent.c | 5 ++++- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp index fdbfdcc7f..7015daae8 100644 --- a/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp +++ b/code/sdk/application/wearable/service/ble_service/blemoder/bletest.cpp @@ -225,6 +225,10 @@ bool get_training_GPS_path(char *path ,uint32_t time,uint32_t max_len) int read_GPS_DATA(char *path ,uint8_t *out_buf) { FILE *fp= fopen(path,"rb+"); + if(fp==NULL) + { + return 0; + } uint32_t file_size=0; int len=0; @@ -234,18 +238,24 @@ int read_GPS_DATA(char *path ,uint8_t *out_buf) while (1) { int read_size=fread(&data,1,sizeof(data),fp); - if(read_size!=sizeof(data) ) + if(read_size==sizeof(data) ) { - len+=sizeof(data); + int temp_data=data.timestamp; - memcpy_s(out_buf,4,&temp_data,sizeof(data.timestamp)); + memcpy_s(out_buf+len,4,&temp_data,sizeof(data.timestamp)); + printf("%d",temp_data); + len+=4; int temp_latitude=(int)(data.latitude *10000000); - memcpy_s(out_buf,4,&temp_data,sizeof(temp_latitude)); + memcpy_s(out_buf+len,4,&temp_latitude,sizeof(temp_latitude)); + // printf("temp_latitude :%d\r\n",temp_latitude); + len+=4; int temp_longitude=(int)(data.longitude*1000000); - memcpy_s(out_buf,4,&temp_data,sizeof(temp_latitude)); + memcpy_s(out_buf+len,4,&temp_longitude,sizeof(temp_longitude)); + // printf("temp_longitude :%d\r\n",temp_longitude); + len+=4; } diff --git a/code/sdk/application/wearable/service/ble_service/bleservice/bleEvent.c b/code/sdk/application/wearable/service/ble_service/bleservice/bleEvent.c index aa8a46c42..890030c60 100644 --- a/code/sdk/application/wearable/service/ble_service/bleservice/bleEvent.c +++ b/code/sdk/application/wearable/service/ble_service/bleservice/bleEvent.c @@ -3502,7 +3502,7 @@ void APP_send_sos_Cmd(uint16_t cmd,uint8_t *data,uint16_t len,uint8_t *totalData void GetGPSCmd(uint16_t cmd,uint8_t *data,uint16_t len,uint8_t *totalData,uint8_t crcvalue) { - { + { if(Check_CRC(data,len,crcvalue)) { if(len==4) @@ -6065,6 +6065,9 @@ void type2AE3Data(ble_read_data *buffer_handle,uint8_t *cmd_buf ,uint8_t *data,u case SYN_GET_MSG_CONFIG_CMD: //获取手表消息设置 GetmsgconfigCmd(cmd,data,datalen,totaldata,crcvalue); break; + case SYN_APP_GET_GPS_DATA_CMD://app获取GPS数据 + GetGPSCmd(cmd,data,datalen,totaldata,crcvalue); + break; case APP_GET_AI_PCM_DATA_CMD: GetAiRecordCmd(cmd,data,datalen,totaldata,crcvalue); -- 2.17.1