* @Author: penglei 1624952103@qq.com\r
* @Date: 2024-06-17 14:31:08\r
* @LastEditors: penglei 1624952103@qq.com\r
- * @LastEditTime: 2024-06-19 17:07:52\r
+ * @LastEditTime: 2024-06-20 15:31:42\r
* @FilePath: /FD230/code/sdk/application/wearable/service/factorytest_service/factorytest_protocol.c\r
* @Description: \r
* \r
//恢复出厂设置\r
uint8_t send_data = 0x00;\r
\r
- do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_TYPE_RESTORE_FACTORY_SETTING, NULL, 0);\r
-\r
factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_COMMON,\r
BLE_TEST_CMD_COMMON_SUB_MODE_POWER_ON_OFF_DEVICE,\r
0x05,\r
&send_data,\r
1);\r
+\r
+ do_custom_cmd_service_check_msg(CUSTOM_CMD_MSG_TYPE_RESTORE_FACTORY_SETTING, NULL, 0);\r
}\r
break;\r
\r
uint32_t timeout = *data;\r
PRINT("ScreenDurationTime : %d \r\n",*data);\r
//修改自动灭屏时间\r
- uapi_setScreenDuration(timeout);\r
+ uapi_setScreenDuration(timeout * 1000);\r
\r
factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST,\r
BLE_TEST_CMD_SOFT_TEST_SUB_MODE_LCD,\r
0x04,\r
&send_data,\r
1);\r
+ } else if(testitem == 0x05)\r
+ {\r
+ //删除录音\r
+ uint8_t send_data = uapi_delete_files("/user/userdata/microphone.mp3");\r
+ factorytest_protocol_replymsg(BLE_TEST_CMD_MODE_SOFT_TEST,\r
+ BLE_TEST_CMD_SOFT_TEST_SUB_MODE_SPEAKER,\r
+ 0x05,\r
+ &send_data,\r
+ 1);\r
}\r
break;\r
\r
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:f6a67b9062aaa46eff812864455a1646cb6cf8e11d9a3514a0fbf69622e63705
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:d61ccfdb7af0b398215b4c8687c1e10a16c89809e06ef42133c9ce16d0e5fae4
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:33660ebb32bfca061d3ec4f116e9bb1a0892a93b50babbfac0fd7d0cda2cb3c3
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:8c2db91d9acb764137f7399e314b8115cdf9f7bcf7fe7f8de42808afd2422e4f
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:b5010861c2e72ef730075170d125e9b17b13f18baa5599933b43d68b8f28c8e0
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:3c0c9186312f8ad1abc6ab0573a961e342e1128494d664ebb726e0c82475c026
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:9856cbb512f87fe79fa7975e5459e5b267e361e3c0caa02947700b372cf4be4d
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:e86ca47549e4d6edb7b1167a809afa451f21bf2f22812279f2f25286e86aaa0d
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:dd5a005d99fef596455b8bb9a7cb1da1bc42084f4846c43b20d718e9933c8e6f
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:24b85f500fbb8c0b61310ccfbcfabd92fbc399ae058c9e2e69268dd3962bc815
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:dfaca8cbd1b40395b77bbaa958bf976b2eca04b55a60915bda018abb774fffe8
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:af4ae290ee2dffa0a85fb99b445d7d533f43401049f2c4f60ffa73052504023d
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:a6ca44bbfbd338c6cbff1d7329a9c1d554b5922ab1c13ea61351348f6049f68e
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:226a9c0dfa2b57afb94b689583e4bbdec67d55f87a1064db45962084b134c4bd
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:ffd2771577bcbaa02eb35cb74e132c98de94db1060c4653ed243f1040e4baec4
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:b44f9c3ad594cbd7ef5b5aa38ed09d9c06f382a4945ec11a4a69a7166b823622
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:06b0a22558cca7d4980d33237982e694f0da0cea31707901d8f47f273c7cd037
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:1d69bb84df6a0d20e8c726486e274cad71b5510f1387182b75f49de46d699de7
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:c798090c5c7b5f48f314608992a8f212d9f633f4f41eb188618921f69da31bf5
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:51b4ef6fadd390a70867ba99d8a75e9b1fb5c27f34cdeaafde3aec861c48e7f9
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:daed50899830b040765db902f9412999622cb06efe035d455d2cc79e6e8fd4fb
+size 146040
--- /dev/null
+version https://git-lfs.github.com/spec/v1
+oid sha256:c1eaad41172815bee9988dbdd287616725961086efd5e7d5f2759b50b7e11429
+size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:6fc36ab917be00c9a2dcb673a4fdc05198bedc304fae2aea092f7cadec8ff8c1
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:77318b7c30dc165ad3446704f735074c9249cb9af532175bbc5fbe50a22346e0
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:7fe3d6d01331bce80f744a20cf2a7a511a176491eeebe685232debbc59a60513
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:b1311d92b96c2ccd10e62ee6fcd20a2106f45dcc79b47b64ecc2060215037c37
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:4a0abcac99fd87c447d584b1e678f806a72aa14a7b09d4019e0ba31bb03bc4c4
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:7b6fdd69730f4e9184be64e3c6e4da276e9fdaa5f918fb67110a932c18e74472
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:616669a7f5854eff91afb479443b97de8f3b95aec06c4c881962411857fb701c
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:3181ea3fefff911e91484480ba7d60fa055c8ca97dbda6e34c9f0961e2a77cc0
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:21013815879cb7652fe1dfc75a656ccc8b50d74c7f82f5e477743c4bdfa9c4b1
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:bee64e87ce7421f84f37bdc0a54a2009ea27ea5c9b5eae60e43a878e290ab471
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:1b6b27c9ced02c6c7a8f7112fd87e889dbacd35538f5ca36552ce66502708239
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:d4dd8807e244acdbf9211cba60fdf703b71728e0555656fc4f6893e4106c193f
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:e55e76d745e793c47c95f49b9156f6719af14b664285a762cf243bcbb33c2ffa
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:5308e5feca09ca15036164a04543287b350a02186e4681299394fed681ac0dca
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:d4505667567257525d90db975552c8ae2e9757e606025497df6878f2e3dd99dd
-size 146040
+++ /dev/null
-version https://git-lfs.github.com/spec/v1
-oid sha256:e08795fdde6362abb0f7aa9bac7a6587cdf7d79ee73dd5284a7c2990d5c15567
-size 146040
int max_step_freq;
int max_pace;
int hrs;
+ int duration;
+ int MHR;
}cywee_activity_result_t;
typedef struct
CWM_OS_dbgOutput(InputBuff);
return 0;
}
-#define CWM_DATA_PATH "/user/userdata/sport/stepcount"
+#define CWM_DATA_PATH "/user/userdata/sport/stepcount.bin"
void CWM_OS_saveData(int* data, uint32_t len){
FILE * fp = fopen(CWM_DATA_PATH,"wb");
CWM_OS_saveData_history(&new_calories,&history_calories,sizeof(int),CYWEE_SAVE_DATA_DISTANCE);
}
-
-
void cywee_ar_alert_switch(int cmd)
{
memset(&scl, 0, sizeof(scl));
scl.iData[0] = 1;
scl.iData[1] = cmd;
CWM_SettingControl(SCL_ACTIVITY_PAUSE, &scl);
+
+ if(hrs_mode_state == 0)
+ {
+ send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_DO_PPG_TEST);
+ hrs_mode_state = 1;
+ }
+ else
+ {
+ send_ppg_cmd_msg(PPG_SERVICE_CMD_TYPE_STOP_PPG_TEST);
+ hrs_mode_state = 0;
+ }
}
void cywee_inactivity_mode_change(int mode)
gxyz_t.z = sensorEVT->fData[2];
// CWM_OS_dbgPrintf("acc: x=%.3f, y=%.3f, z=%.3f\n",
- // sensorEVT->fData[0],
- // sensorEVT->fData[1],
- // sensorEVT->fData[2]
+ // sensorEVT->fData[0] * 418,
+ // sensorEVT->fData[1] * 418,
+ // sensorEVT->fData[2] * 418
// );
if(get_acc_swtich)
(int)sensorEVT->fData[1],
(int)sensorEVT->fData[5],
(int)sensorEVT->fData[6]);
-
+
memset(&c_activity_result_t,0,sizeof(cywee_activity_result_t));
c_activity_result_t.activity_mode = (int)sensorEVT->fData[0];
c_activity_result_t.calories = (int)sensorEVT->fData[1];
+ c_activity_result_t.duration = (int)sensorEVT->fData[5];
+ c_activity_result_t.MHR = (int)sensorEVT->fData[6];
c_activity_result_t.hrs = hrs;
cywee_func(CYWEE_MSG_TYPE_ACTIVITY_UPDATE,&c_activity_result_t,sizeof(cywee_activity_result_t));
//配置跑步机模式相关参数(进入跑步机模式自动生效)
memset(&scl, 0, sizeof(scl));
scl.iData[0] = 1;
+ scl.iData[4] = 1;//extra info发送 0 打开,1关闭
CWM_SettingControl(SCL_PEDO_CONFIG, &scl);
memset(&scl, 0, sizeof(scl));
return 1;\r
}\r
\r
-#define MMC_DATA_PATH "/user/userdata/mmc_para"\r
+#define MMC_DATA_PATH "/user/userdata/mmc_para.bin"\r
\r
int SavePara_infile(void)\r
{ \r
const uint8_t SLOPE_PARA_MAX = 28;\r
const uint8_t SLOPE_PARA_MIN = 3;\r
\r
-int32_t ble_hrs_data = 0;\r
-uint8_t ble_hrs_flag = 0;\r
-\r
-int32_t ble_spo2_data = 0;\r
-uint8_t ble_spo2_flag = 0;\r
-\r
#ifdef SPO2_DATA_CALI\r
static int32_t red_data_fifo[4] = {0};\r
static int32_t ir_data_fifo[4] = {0};\r
PRINT("*count : %d \r\n",*count);\r
if(*count < 10)\r
{\r
- gsensor_get_n_data(8,gsensordata);\r
+ if(hrs_mode_state == 1)\r
+ {\r
+ gsensor_get_n_data(8,gsensordata);\r
+ }\r
for(ii=0; ii<*count; ii++)\r
{\r
if(ii == 8)\r
}\r
else\r
{\r
- gsen_fifo_x_send[ii] = gsensordata[ii].x * 2048;\r
- gsen_fifo_y_send[ii] = gsensordata[ii].y * 2048;\r
- gsen_fifo_z_send[ii] = gsensordata[ii].z * 2048;\r
+ gsen_fifo_x_send[ii] = gsensordata[ii].x * 4096 / 10;\r
+ gsen_fifo_y_send[ii] = gsensordata[ii].y * 4096 / 10;\r
+ gsen_fifo_z_send[ii] = gsensordata[ii].z * 4096 / 10;\r
}\r
-\r
- if(abs(PPG_buf[ii]) > 10000)\r
- ble_hrs_data = abs(PPG_buf[ii]);\r
-\r
//PRINT("hxdata:%d/%d %d %d %.3f %.3f %.3f %d\r\n" ,1+ii,*count,PPG_buf[ii],ir_buf[0],gsen_fifo_x_send[ii],gsen_fifo_y_send[ii],gsen_fifo_z_send[ii],ppg_s_data.green_cur);\r
PRINT("hxdata:%d/%d %d %d %d %d %d %d\r\n" ,1+ii,*count,PPG_buf[ii],ir_buf[0],gsen_fifo_x_send[ii],gsen_fifo_y_send[ii],gsen_fifo_z_send[ii],ppg_s_data.green_cur);\r
\r
do_cywee_service_check_msg(CYWEE_SERVICE_CMD_HRS_WEARSTATUS_CHANGE,cywee_data);\r
}\r
\r
- if(hrsresult.lastesthrs > 0)\r
- {\r
- ble_hrs_flag = 1;\r
- }\r
-\r
if(hrs_wear_status == MSG_HRS_WEAR && hrsresult.hr_living == MSG_LIVING_TRUE)\r
{\r
// app_hr_reset_stop_timer();\r
PRINT("*count[%d] \r\n",*count);\r
if(*count < 10)\r
{\r
- gsensor_get_n_data(8,gsensordata);\r
+ //gsensor_get_n_data(8,gsensordata);\r
for(ii=0; ii<*count; ii++)\r
{\r
\r
- if(ii == 8)\r
- {\r
- gsen_fifo_x_send[ii] = gsen_fifo_x_send[ii - 1];\r
- gsen_fifo_y_send[ii] = gsen_fifo_y_send[ii - 1];\r
- gsen_fifo_z_send[ii] = gsen_fifo_z_send[ii - 1];\r
- }\r
- else\r
- {\r
- gsen_fifo_x_send[ii] = gsensordata[ii].x * 2048;\r
- gsen_fifo_y_send[ii] = gsensordata[ii].y * 2048;\r
- gsen_fifo_z_send[ii] = gsensordata[ii].z * 2048;\r
- }\r
-\r
- if(abs(red_buf[ii]) > 10000)\r
- ble_spo2_data = abs(red_buf[ii]) ;\r
-\r
+ // if(ii == 8)\r
+ // {\r
+ // gsen_fifo_x_send[ii] = gsen_fifo_x_send[ii - 1];\r
+ // gsen_fifo_y_send[ii] = gsen_fifo_y_send[ii - 1];\r
+ // gsen_fifo_z_send[ii] = gsen_fifo_z_send[ii - 1];\r
+ // }\r
+ // else\r
+ // {\r
+ // gsen_fifo_x_send[ii] = gsensordata[ii].x * 2048;\r
+ // gsen_fifo_y_send[ii] = gsensordata[ii].y * 2048;\r
+ // gsen_fifo_z_send[ii] = gsensordata[ii].z * 2048;\r
+ // }\r
PRINT("hxdata:%d/%d %d %d %d %d %d %d\r\n",\r
1+ii,*count,red_buf[ii],ir_buf[ii],green_buf[ii],gsen_fifo_x_send[ii],gsen_fifo_y_send[ii],gsen_fifo_z_send[ii]);\r
//printf("FFF==>spo2 red_buf : %d, %d, %d, %d \n", 1+ii, *count, red_buf[ii], ir_buf[0]);\r
DEBUG_PRINTF("block_cnt: %d, data_cnt:%d, hr_result:%d,ir_quality:%d,motion:%d,poor_signal:%d,reliable_score_result:%d,screen_up:%d,spo2_result:%d\r\n",spo2_alg_results.block_cnt,spo2_alg_results.data_cnt,spo2_alg_results.hr_result,spo2_alg_results.ir_quality,spo2_alg_results.motion,spo2_alg_results.poor_signal,spo2_alg_results.reliable_score_result,spo2_alg_results.screen_up,spo2_alg_results.spo2_result);\r
\r
hrsresult.lastestspo2 = spo2_alg_results.spo2_result;\r
- if(hrsresult.lastestspo2 > 0)\r
- ble_spo2_flag = 1;\r
+\r
// if(hrsresult.lastestspo2)\r
{\r
// store_latest_spo2(hrsresult.lastestspo2);\r
#ifndef GSEN_40MS_TIMMER\r
//readFifoByHrsModule();\r
#endif\r
- DEBUG_PRINTF("\r\nsend jlink cnt=%d\r\n",*count); \r
+ //DEBUG_PRINTF("\r\nsend jlink cnt=%d\r\n",*count); \r
\r
\r
// for(ii=0; ii<*count; ii++)\r
\r
#include "hx3695_hal.h"\r
\r
-extern int32_t ble_hrs_data;\r
-extern uint8_t ble_hrs_flag;\r
-\r
-extern int32_t ble_spo2_data;\r
-extern uint8_t ble_spo2_flag;\r
-\r
#endif\r
do_cywee_service_check_msg(CYWEE_SERVICE_CMD_START_GET_ACC,NULL);
cmd = "hrs";
enable = 1;
+ uapi_pm_add_sleep_veto(PM_ID_HEART);
}else if (mail == PPG_SERVICE_CMD_TYPE_DO_HRV_TEST){
cmd = "hrv";
enable = 1;
do_cywee_service_check_msg(CYWEE_SERVICE_CMD_STOP_GET_ACC,NULL);
cmd = "hrs";
enable = 0;
+ uapi_pm_remove_sleep_veto(PM_ID_HEART);
}else if (mail == PPG_SERVICE_CMD_TYPE_STOP_SPO2_TEST){
cmd = "spo2";
void uapi_setScreenDuration(int32_t time)
{
const power_display_svr_api_t *display_api = power_display_svr_get_api();
- display_api->set_screen_auto_off_timeout(time);
+ errcode_t ret = display_api->set_screen_auto_off_timeout(time);
}
/*获取屏幕状态: return 0 screen on , 1 screen off*/
}
}
-#include "touch_screen_drv.h"
-
void touch_getstate(void)
{
int32_t state;
static OHOS::UIViewGroup* boot_group=nullptr;
static OHOS::UIImageAnimatorView* ReBootImageAnimatorView=nullptr;
static constexpr char *ReBootPaths = "/system/ReBoot/"; //开机图片路径
-static constexpr int16_t REBOOT_IMAGE_ANIMATOR_VIEW_NUM_FRAMES = 30; // 图片帧数
+static constexpr int16_t REBOOT_IMAGE_ANIMATOR_VIEW_NUM_FRAMES = 36; // 图片帧数
static constexpr int16_t REBOOT_IMAGE_ANIMATOR_TIME = 150; // 图片更新间隔
static OHOS::ImageAnimatorInfo ReBootImageInfo[REBOOT_IMAGE_ANIMATOR_VIEW_NUM_FRAMES]; // 开机图像的信息
static constexpr int16_t REBOOT_IMAGE_ANIMATOR_VIEW_X = 0;
char buffer[256];
for (int i = 0; i < numImages; i++)
{
- if(i < 10)
- snprintf(buffer, sizeof(buffer), "%s6S2400%d.%s", basePath, i , fileExtension);
- else
- snprintf(buffer, sizeof(buffer), "%s6S240%d.%s", basePath, i , fileExtension);
+ snprintf(buffer, sizeof(buffer), "%s%d.%s", basePath, i + 1 , fileExtension);
+
imagePaths[i] = strdup(buffer);
}
return imagePaths;