gps蓝牙产测增加经纬度坐标信息
authorpenglei <1624952103@qq.com>
Wed, 19 Nov 2025 02:43:38 +0000 (10:43 +0800)
committerpenglei <1624952103@qq.com>
Wed, 19 Nov 2025 02:43:38 +0000 (10:43 +0800)
code/sdk/zhihui/services/factorytest_service/factorytest_protocol.c

index a39f9eb..a3471b0 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: penglei 1624952103@qq.com\r
  * @Date: 2024-06-17 14:31:08\r
  * @LastEditors: penglei 1624952103@qq.com\r
- * @LastEditTime: 2025-11-17 10:55:49\r
+ * @LastEditTime: 2025-11-19 10:43:10\r
  * @FilePath: /FD230/code/sdk/application/wearable/service/factorytest_service/factorytest_protocol.c\r
  * @Description: \r
  * \r
@@ -2408,24 +2408,44 @@ void factorytest_protocol_soft_test_decode(uint8_t submode,uint8_t testitem,uint
             } else if(testitem == 0x02)\r
             {\r
                 //获取可见星 有效星 信号增益 定位精度\r
-                uint8_t send_data[7] = {0};\r
+                uint8_t send_data[15] = {0};\r
 #ifdef SUPPORT_GNSS\r
                 // if(send_gps_data)\r
                 {\r
+                    uint32_t lat = (uint32_t)(send_gps_data.location.lat * 1000000.0f);\r
+                    uint32_t lng =  (uint32_t)(send_gps_data.location.lng * 1000000.0f);\r
+\r
+                    // uint32_t lat = (uint32_t)(22.575890 * 1000000.0f);\r
+                    // uint32_t lng =  (uint32_t)(114.055733 * 1000000.0f);\r
+\r
                     send_data[0] = send_gps_data.num_sats;\r
                     send_data[1] = send_gps_data.th001_valid_star_count;\r
                     send_data[2] = send_gps_data.th000_signal_vga;\r
+\r
                     send_data[3] = (uint8_t)(((uint32_t)send_gps_data.th001_quality & 0xFF000000) >> 24);\r
                     send_data[4] = (uint8_t)(((uint32_t)send_gps_data.th001_quality & 0x00FF0000) >> 16);\r
                     send_data[5] = (uint8_t)(((uint32_t)send_gps_data.th001_quality & 0x0000FF00) >> 8);\r
                     send_data[6] = (uint8_t)(((uint32_t)send_gps_data.th001_quality & 0x000000FF) >> 0);\r
 \r
-                    PRINT("gps_data->num_sats : %d,gps_data->th001_valid_star_count : %d,gps_data->th000_signal_vga : %d,gps_data->th001_quality : %f\n",\r
+                    send_data[7] = (uint8_t)((lat & 0xFF000000) >> 24);\r
+                    send_data[8] = (uint8_t)((lat & 0x00FF0000) >> 16);\r
+                    send_data[9] = (uint8_t)((lat & 0x0000FF00) >> 8);\r
+                    send_data[10] = (uint8_t)((lat & 0x000000FF) >> 0);\r
+\r
+                    send_data[11] = (uint8_t)((lng & 0xFF000000) >> 24);\r
+                    send_data[12] = (uint8_t)((lng & 0x00FF0000) >> 16);\r
+                    send_data[13] = (uint8_t)((lng & 0x0000FF00) >> 8);\r
+                    send_data[14] = (uint8_t)((lng & 0x000000FF) >> 0);\r
+                    \r
+\r
+                    PRINT("gps_data->num_sats : %d,gps_data->th001_valid_star_count : %d,gps_data->th000_signal_vga : %d,gps_data->th001_quality : %f,lat:%lu, lng:%lu \n",\r
                     send_gps_data.num_sats,send_gps_data.th001_valid_star_count,\r
-                    send_gps_data.th000_signal_vga,send_gps_data.th001_quality\r
-                    );\r
+                    send_gps_data.th000_signal_vga,send_gps_data.th001_quality,lat,lng);\r
+                    \r
                     PRINT("%2X %2X %2X\r\n",send_data[0],send_data[1],send_data[2]);\r
                     PRINT("%2X %2X %2X %2X \r\n",send_data[3],send_data[4],send_data[5],send_data[6]);\r
+                    PRINT("%2X %2X %2X %2X \r\n",send_data[7],send_data[8],send_data[9],send_data[10]);\r
+                    PRINT("%2X %2X %2X %2X \r\n",send_data[11],send_data[12],send_data[13],send_data[14]);\r
                 }\r
 #endif\r
                 factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST,\r