From: @CHENG <2393524978@qq.com>
Date: Sun, 29 Sep 2024 06:47:11 +0000 (+0800)
Subject: YYLPro20240903版本
X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=b9daa6bc1c9e950f3a8994fcc2d7acdd168cbde9;p=mirrors%2FASR3603_Z5.git
YYLPro20240903版本
---
diff --git a/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvopt b/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvopt
index 0ff085e2..d3195fbc 100644
--- a/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvopt
+++ b/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvopt
@@ -682,8 +682,8 @@
0
0
0
- .\VC9202\lib_hr_yll_v0.5.3.041924.lib
- lib_hr_yll_v0.5.3.041924.lib
+ .\VC9202\lib_hr_yll_v0.5.3.090324.lib
+ lib_hr_yll_v0.5.3.090324.lib
0
0
diff --git a/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvproj b/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvproj
index 7e74e63a..19a6f969 100644
--- a/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvproj
+++ b/1.doc/K18/BLE_Watch/keil/BLE_Watch.uvproj
@@ -643,9 +643,9 @@
.\VC9202\vc9202_user_debug.c
- lib_hr_yll_v0.5.3.041924.lib
+ lib_hr_yll_v0.5.3.090324.lib
4
- .\VC9202\lib_hr_yll_v0.5.3.041924.lib
+ .\VC9202\lib_hr_yll_v0.5.3.090324.lib
diff --git a/1.doc/K18/BLE_Watch/keil/VC9202/lib_hr_yll_v0.5.3.090324.lib b/1.doc/K18/BLE_Watch/keil/VC9202/lib_hr_yll_v0.5.3.090324.lib
new file mode 100644
index 00000000..fb3017b8
--- /dev/null
+++ b/1.doc/K18/BLE_Watch/keil/VC9202/lib_hr_yll_v0.5.3.090324.lib
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b83e7384c01f3563c3426552f63438884ec9bb43c2a330473f48eeca353d1c6e
+size 202348
diff --git "a/1.doc/K18/BLE_Watch/keil/VC9202/\343\200\220\345\265\214\345\205\245\345\274\217\347\253\257\343\200\221Pro\347\211\210\344\270\213\346\262\211\345\272\223\346\216\245\345\217\243\346\226\207\346\241\243.md" "b/1.doc/K18/BLE_Watch/keil/VC9202/\343\200\220\345\265\214\345\205\245\345\274\217\347\253\257\343\200\221Pro\347\211\210\344\270\213\346\262\211\345\272\223\346\216\245\345\217\243\346\226\207\346\241\243.md"
index 4ffbb9d0..0f31994e 100644
--- "a/1.doc/K18/BLE_Watch/keil/VC9202/\343\200\220\345\265\214\345\205\245\345\274\217\347\253\257\343\200\221Pro\347\211\210\344\270\213\346\262\211\345\272\223\346\216\245\345\217\243\346\226\207\346\241\243.md"
+++ "b/1.doc/K18/BLE_Watch/keil/VC9202/\343\200\220\345\265\214\345\205\245\345\274\217\347\253\257\343\200\221Pro\347\211\210\344\270\213\346\262\211\345\272\223\346\216\245\345\217\243\346\226\207\346\241\243.md"
@@ -489,7 +489,56 @@ int is_good_ppg(int ppg[], unsigned int ppglen, int fs);
---------------------------------------------------------------------------------------------------------------------------
-### 3.17 äºå»é¾ç®æ³åå§åæ¥å£
+### 3.17 ç¡ç åå§åæ¥å£
+
+##### ååï¼
+
+```
+void init_sleep_data(sleep_data_t* sdata);
+```
+
+##### è¾å
¥ï¼
+
+- sdata, sleep_dataæéç±»åï¼ç»æè§å¤´æä»¶ã
+
+ ##### è¾åºï¼
+- æ
+
+ ##### è¿åå¼ï¼
+- æ
+
+##### 说æï¼
+
+- å¿
é¡»å¨è°ç¨ç¡ç æ¥å£ä¹åè°ç¨åå§åæ¥å£
+
+---------------------------------------------------------------------------------------------------------------------------
+
+### 3.18 ç¡ç æ¥å£
+
+##### ååï¼
+
+```
+int get_sleep_time(gsensor_data_t gdata[], const int datalen, const sleep_time_t curtime, sleep_data_t *sdata);
+```
+
+##### è¾å
¥ï¼
+
+- gdataï¼gsensoræ°ç»ï¼gsensoræ°æ®ç»æå¨å¤´æä»¶ä¸å®ä¹ï¼ï¼ééçgsensoræ°æ®
+- datalenï¼æ´åï¼gdataé¿åº¦ï¼ä¸è¬è¾å
¥1séçé¿åº¦ï¼å³60*fsï¼
+- curtimeï¼èªå®ä¹ç±»åï¼å½åæ¶é´ï¼ç²¾ç¡®å°åéï¼
+- sdata, sleep_dataæéç±»åï¼è¿åçæ¶é´æ°æ®
+
+ ##### è¿åå¼ï¼
+- resultï¼æ´åï¼0表示没æç¡ç æ°æ®ï¼1表示è¿åç¡ç æ°æ®
+
+ ##### 说æï¼
+- 该æ¥å£1åéè°ç¨ä¸æ¬¡ï¼æ¯æ¬¡ä¼ å
¥1åéçgsensoræ°æ®åå½åæ¶é´ï¼
+- 该æ¥å£è¿åå¼ä¸º1æ¶è¡¨ç¤ºç¡ç ç»æï¼å¯è¯»åå°ç¡ç æ°æ®ï¼è¿åå¼ä¸º0ï¼è¡¨ç¤ºç¡ç æªç»æï¼æ²¡æç¡ç æ°æ®ã
+
+---------------------------------------------------------------------------------------------------------------------------
+
+
+### 3.19 äºå»é¾ç®æ³åå§åæ¥å£
##### ååï¼
@@ -513,7 +562,7 @@ void YYL_Init_PFE(unsigned char* buf, unsigned int len);
---------------------------------------------------------------------------------------------------------------------------
-### 3.18 äºå»é¾ç®æ³è¾å
¥æ¥å£
+### 3.20 äºå»é¾ç®æ³è¾å
¥æ¥å£
##### ååï¼
@@ -537,7 +586,7 @@ void YYL_Input_PFE(yylPFE_InputData_t *pInputData, int32_t hr);
---------------------------------------------------------------------------------------------------------------------------
-### 3.19 äºå»é¾ç®æ³è¾åºæ¥å£
+### 3.21 äºå»é¾ç®æ³è¾åºæ¥å£
##### ååï¼
@@ -562,7 +611,7 @@ yylPFE_OutputData * YYL_Output_PFE(int32_t *outputLen);
---------------------------------------------------------------------------------------------------------------------------
-### 3.20 äºå»é¾ç®æ³ç»ææ¸
空æ¥å£
+### 3.22 äºå»é¾ç®æ³ç»ææ¸
空æ¥å£
##### ååï¼
@@ -584,7 +633,7 @@ void YYL_Output_PFE_Array_Clear(void);
---------------------------------------------------------------------------------------------------------------------------
-### 3.21 äºå»é¾ç®æ³çæ¬è·åæ¥å£
+### 3.23 äºå»é¾ç®æ³çæ¬è·åæ¥å£
##### ååï¼
@@ -665,10 +714,18 @@ void test_algorithm()
int fs = SAMPLERATE;
int segdata[SAMPLERATE*SAMPLETIME];
const unsigned int seglen = SAMPLERATE * SAMPLETIME;
-
+
+ int count = 0;
+ sleep_time_t curtime;
+ int sleep_count = 0;
+ gsensor_data_t gdata[3000];
+ const size_t datalen = 3000;
+ sleep_data_t sdata;
+
HAEMO:
// æ
ç»ªç®æ³åå§åç¼å
init_algorithm(buf, 8000);
+ init_sleep_data(&sdata);
while(1) // æ¹ä¸ºä¸æå¾ªç¯è°ç¨
{
len = read_segment(fp, segdata, seglen); // 5sé¿åº¦çæ°æ®
@@ -680,6 +737,31 @@ void test_algorithm()
counter = 0;
goto YYLPFE; // å¾å°æ°æ®å忢å°ä¸å»ç®æ³
}
+
+ curtime = time(year, month, day, hour, minute); // 伪代ç ï¼å½åæ¶é´ï¼ç²¾ç¡®å°åéï¼
+ if (get_sleep_time(gdata, datalen, curtime, &sdata))
+ {
+ sleep_count++;
+ printf("begin_sleep_time: %d-%d-%d: %d-%d\n",
+ sdata.begin_sleep_time.year,
+ sdata.begin_sleep_time.month,
+ sdata.begin_sleep_time.day,
+ sdata.begin_sleep_time.hour,
+ sdata.begin_sleep_time.minute);
+ printf("end_sleep_time: %d-%d-%d: %d-%d\n",
+ sdata.end_sleep_time.year,
+ sdata.end_sleep_time.month,
+ sdata.end_sleep_time.day,
+ sdata.end_sleep_time.hour,
+ sdata.end_sleep_time.minute);
+ printf("total_sleep_time: %d M\n", sdata.total_sleep_time);
+ printf("sleep detail: \nstate count: %d\n", sdata.state_count);
+ for (int j = 0; j < sdata.state_count; j++)
+ {
+ printf("sleep state: %d - %d m\n", sdata.data[j].state, sdata.data[j].duration);
+ }
+ }
+ count++;
counter++;