kai wang
/
mbed_health
久坐警报器
Diff: main.cpp
- Revision:
- 1:32df8ff2011e
- Parent:
- 0:76c6ddb1425b
- Child:
- 2:6a50d967a71a
--- a/main.cpp Sun May 08 14:36:12 2016 +0000 +++ b/main.cpp Tue May 10 12:05:02 2016 +0000 @@ -1,7 +1,7 @@ #include "mbed.h" #include"time.h" -#define UPA 2000//坐时最大加速度值 +#define UPA 3800//坐时最大加速度值 uint16_t x_a,y_a,z_a; bool flag = 0; @@ -76,21 +76,22 @@ } void buzzerini(void) { - for (int i=0;i<=11;i++) { + for (int i=0;i<=11;i++) + { buzzer.period(1/(2*frequency[i])); // 设置PWM周期 buzzer=0.5; // 设置占空比 wait(0.4*beat[i]); // 保持节拍周期 - } + } } void sit_judgement() { int flag=0; clock_t start,end; start=clock(); get_val(); - while(x_a<=UPA) + while(y_a<=UPA) { get_val(); end=clock(); - if(((double)end-start)/CLK_TCK>30)//坐了30s + if(((double)end-start)/CLK_TCK>20)//坐了20s { flag=1; break; } @@ -98,6 +99,11 @@ while(flag) { buzzerini(); get_val(); + if(y_a>UPA) + { + buzzer.period_us(0); + break;} + } } @@ -113,7 +119,7 @@ if(flag) { flag=0; - wait(1); + wait(20);//等站起来后读取判断周期变长 } } } \ No newline at end of file