\r
bool initstatus = true;\r
uint8_t wear_;\r
- uint8_t valid_counter_ = 0;//有效数计数器\r
- uint8_t unwear_counter_ = 0;//佩戴错误计数器\r
+ uint8_t valid_counter_ = 0; // 有效数计数器\r
+ uint8_t disvalid_counter_ = 0; // 无效数计数器\r
+ uint8_t unwear_counter_ = 0; // 佩戴错误计数器\r
};\r
}\r
\r
{\r
#endif\r
\r
-#define MAX_UNWEAR_COUNT 30\r
-#define MAX_VALID_HRS_COUNT 30\r
+#define MAX_UNWEAR_COUNT 20\r
+#define MAX_VALID_HRS_COUNT 40\r
+#define MAX_DISVALID_HRS_COUNT 40\r
#define HEARTTEST 1 //[0 开启测试 1 关闭]\r
/* 佩戴检测结果 */\r
enum\r
{\r
valid_counter_ = 0;\r
unwear_counter_ = 0;\r
+ disvalid_counter_ = 0;\r
SetCheckStatus(false);\r
SetWearStatus(1);\r
}\r
void HeartModel::SetWearStatus(int32_t wear)\r
{\r
// 设置佩戴状态\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HeartModel Weartest::%d", wear);\r
+ // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "HeartModel Weartest::%d", wear);\r
if (wear_ != 1 && wear != 1)\r
{\r
unwear_counter_++; // 佩戴错误计时器计数\r
if (Show_Heart_ != 0)\r
{\r
Heart_ = heart;\r
- valid_counter_++; // 增加有效计数器\r
+ valid_counter_++; // 增加有效计数器\r
+ disvalid_counter_ = 0; // 清零无效数\r
}\r
else\r
{\r
- valid_counter_ = 0; // 清零有效计数器\r
+ valid_counter_ = 0; // 清零有效计数器\r
+ disvalid_counter_++; // 增加无效数\r
+ }\r
+ // 一直为无效数\r
+ if (disvalid_counter_ >= MAX_DISVALID_HRS_COUNT)\r
+ {\r
+ // 结束本次测试\r
+ PRINT("MAX_DISVALID_HRS_COUNT\r\n");\r
+ Heart_Stop();\r
+ return;\r
}\r
#if HEARTTEST\r
if (valid_counter_ >= MAX_VALID_HRS_COUNT)\r