Parcourir la source

增加版本查询接口

zhoutao il y a 1 mois
Parent
commit
3ebc6532bf

+ 9 - 1
src/exchange/exchange.c

@@ -77,6 +77,13 @@ exchange_js_notice_wasm_save_acc()
     imu_save_acc_list_exchange();
 }
 
+// js查询wasm模块软件名称以及版本的数据存储地址
+EM_PORT_API(uint8 *)
+exchange_js_get_soft_name_and_version_save_address()
+{
+    return sysmain_get_soft_name_and_version_data_address();
+}
+
 /*************************************以下是释放内存******************************/
 // js通知wasm模块释放内存
 EM_PORT_API(void)
@@ -90,7 +97,8 @@ exchange_js_notice_wasm_free_memory()
 
     free(pExch_pdwAccAddress);
 
-    imu_free_memory(); // 释放imu模块内存
+    imu_free_memory();     // 释放imu模块内存
+    sysmain_free_memory(); // 释放sysmain模块内存
 }
 
 /*************************************以下是测试用接口,发布后要去除******************************/

+ 4 - 0
src/exchange/exchange.h

@@ -46,6 +46,10 @@ exchange_js_get_acc_save_address();
 EM_PORT_API(void)
 exchange_js_notice_wasm_save_acc();
 
+// js查询wasm模块软件名称以及版本的数据存储地址
+EM_PORT_API(uint8 *)
+exchange_js_get_soft_name_and_version_save_address();
+
 /***************************释放内存接口*******************************/
 // js通知wasm模块释放内存
 EM_PORT_API(void)

+ 7 - 0
src/sysdefine/struct.h

@@ -27,6 +27,13 @@ typedef struct
     uint8 abySlotList[PUB_SYS_SLOT_NUM];
 } PUB_SYS_STATUS_T;
 
+// 软件名称及版本
+typedef struct
+{
+    uint8 abySoftName[PUB_SOFTWARE_NAME_LEN];       // 软件名称
+    uint8 abySoftVersion[PUB_SOFTWARE_VERSION_LEN]; // 软件版本
+} PUB_SOFT_NAME_VERSION_T;
+
 // 定位数据缓存结构
 typedef struct
 {

+ 10 - 5
src/sysdefine/sysmacro.h

@@ -6,8 +6,13 @@
 #ifndef __SYS_MACRO_H__
 #define __SYS_MACRO_H__
 
-#define SOFTWARE_NAME "APLS8000SDK" // 软件名称:基于音频的手机定位系统开发包
-#define SOFTWARE_VERSION "V2.0.00"  // 软件版本
+// 软件型号APLM:audio phone locate module
+#define PUB_SOFTWARE_NAME_LEN 11
+#define PUB_SOFTWARE_NAME "APLM8000SDK" // 软件名称:基于音频的手机定位模块开发包
+
+// 2025-2-8 by zt 增加软件版本接口
+#define PUB_SOFTWARE_VERSION_LEN 7
+#define PUB_SOFTWARE_VERSION "V2.1.00" // 软件版本
 
 #define PUB_M_PI 3.14159265358979323846
 #define PUB_2PI (2 * 3.14159265358979323846)
@@ -62,8 +67,8 @@
 // 路由模块
 #define PUB_MAC_ADDRESS_LEN 12 // MAC地址字节数
 
-// 测试宏
-// #define PUB_DEBUG_ENABLE 1 // 调试
-#define PUB_DEBUG_ENABLE 0 // 调试关
+// 测试宏定义
+// #define PUB_DEBUG_ENABLE 1 // 打开调试开
+#define PUB_DEBUG_ENABLE 0 // 关闭调试
 
 #endif

+ 28 - 0
src/sysmain/sysmain.c

@@ -8,6 +8,7 @@
 
 // 定义本模块使用的全局变量
 int32 *gSysmain_pdwCurrentLctCoord = NULL;
+uint8 *gSysmain_pbySoftNameVsersion = NULL; // 软件名称与版本
 
 // 导入全局变量
 extern PUB_SYS_STATUS_T gg_stSysStatus;                                 // 系统状态
@@ -24,6 +25,10 @@ void sysmain_init()
 
     // 申请一片内存
     gSysmain_pdwCurrentLctCoord = malloc(sizeof(PUB_CURRENT_LCT_RESULT_T));
+    gSysmain_pbySoftNameVsersion = malloc(sizeof(PUB_SOFT_NAME_VERSION_T));
+
+    // 组织软件名称与版本
+    sysmain_organize_soft_name_and_version(gSysmain_pbySoftNameVsersion);
 
     // 初始化全局数据
     globaldata_init();
@@ -205,3 +210,26 @@ int32 *sysmain_get_current_location_coord()
 {
     return (int32 *)gSysmain_pdwCurrentLctCoord;
 }
+
+// 组织软件名称与版本
+void sysmain_organize_soft_name_and_version(uint8 *pbyData)
+{
+    PUB_SOFT_NAME_VERSION_T *pstData = (PUB_SOFT_NAME_VERSION_T *)pbyData;
+    memcpy(pstData->abySoftName, PUB_SOFTWARE_NAME, PUB_SOFTWARE_NAME_LEN);
+    memcpy(pstData->abySoftVersion, PUB_SOFTWARE_VERSION, PUB_SOFTWARE_VERSION_LEN);
+
+    return;
+}
+
+// 查询软件名称与版本的存储地址
+uint8 *sysmain_get_soft_name_and_version_data_address()
+{
+    return gSysmain_pbySoftNameVsersion;
+}
+
+// 释放模块内存
+void sysmain_free_memory()
+{
+    free(gSysmain_pdwCurrentLctCoord);
+    free(gSysmain_pbySoftNameVsersion);
+}

+ 3 - 0
src/sysmain/sysmain.h

@@ -12,10 +12,13 @@
 void sysmain_init();
 uint8 sysmain_audio_signal_process();
 int32 *sysmain_get_current_location_coord();
+uint8 *sysmain_get_soft_name_and_version_data_address();
+void sysmain_free_memory();
 
 // 内部接口
 void sysmain_init_lct();
 void sysmain_save_current_location_coord(PUB_CURRENT_LCT_RESULT_T *pstLctResult);
 void sysmain_consume_location_data(PUB_LOCATION_DATA_T *pstLocationData);
+void sysmain_organize_soft_name_and_version(uint8 *pbyData);
 
 #endif