@@ -10,8 +10,8 @@ GTimer_ms myTimer(1000);
10
10
GTimer_ms BackUp (10000 );
11
11
GTimer_ms SecondlyPlot (1000 );
12
12
GTimer_ms FiveMinPlot ((long )1*3750);
13
- GTimer_ms FifteenMinPlot ((long )5*3750);
14
- GTimer_ms HourPlot ((long )15*3750);
13
+ // GTimer_ms FifteenMinPlot((long)5*3750);
14
+ // GTimer_ms HourPlot((long)15*3750);
15
15
16
16
int Secondly[16 ], FiveMin[16 ], FifteenMin[16 ], Hour[16 ];
17
17
int mean;
@@ -47,51 +47,61 @@ void setup()
8000
47
47
48
48
DrawDisplay ();
49
49
}
50
- const byte NumMode = 8 ;
50
+ const byte NumMode = 6 ;
51
51
long lastDelta=0 ;
52
+ bool f = 0 ;
53
+
52
54
void loop ()
53
55
{
54
56
enc.tick ();
55
57
// if(enc.clicks == 2) {mode = (mode + NumMode - 2) % NumMode;return;}
56
- if (enc.clicks == 2 ) mode = 0 ;
57
- if (enc.clicks == 6 ) {BackReset ();resetFunc ();}
58
- if (enc.click ()) {
59
- lcd.clear ();
60
- mode = (mode + 1 ) % NumMode;
61
- // if(mode == 4){lcd.setCursor(0,0); lcd.print("secondly Plot"); delay(500);}
62
- // else if(mode == 5){lcd.setCursor(0,0); lcd.print("1 minute Plot"); delay(500);}
63
- // else if(mode == 6){lcd.setCursor(0,0); lcd.print("5 minute Plot"); delay(500);}
64
- // else if(mode == 7){lcd.setCursor(0,0); lcd.print("15 minute Plot"); delay(500);}
65
- // lcd.clear();
66
-
67
- }
68
-
69
- if (enc.held ()) SpeedFormat = !SpeedFormat;
70
58
71
59
int val = abs (mean-analogRead (A0));
72
60
73
61
if (val > 2 ){
74
62
int delta = millis () - lastturn;
75
- if (delta < 80 ) return ;
76
-
63
+ lastturn = millis ();
64
+ if (f) return ;
65
+ f = 1 ;
66
+ if (delta < 70 ) return ;
67
+
77
68
float PrevVel = vel;
78
69
vel = len / (delta) * 1000 ;
79
-
80
- if (lastDelta > 2000 && vel > 15 ){
81
- vel = PrevVel;
82
- return ;
83
- }
70
+ //
71
+ Serial.print (vel);
72
+ Serial.print (" " );
73
+ Serial.println (delta);
84
74
85
75
MaxSpeed = max (MaxSpeed, vel);
86
76
MaxAcceleration = max (MaxAcceleration, (vel - PrevVel) / delta * 1000 );
87
77
num++;
88
78
89
79
if (delta < 2000 )numC++;
90
80
91
- lastturn = millis ();
81
+
82
+ }
83
+ else
84
+ {
85
+ if (millis () - lastturn > 4000 ) vel = 0 ;
86
+ f=0 ;
92
87
}
93
- else if (millis () - lastturn > 10000 ) vel = 0 ;
94
88
89
+ if (enc.clicks == 2 ) mode = 0 ;
90
+ if (enc.clicks == 5 ) MaxSpeed=0 ;
91
+ if (enc.clicks == 10 ) {BackReset ();resetFunc ();}
92
+ if (enc.click ()) {
93
+ lcd.clear ();
94
+ mode = (mode + 1 ) % NumMode;
95
+ // if(mode == 4){lcd.setCursor(0,0); lcd.print("secondly Plot"); delay(500);}
96
+ // else if(mode == 5){lcd.setCursor(0,0); lcd.print("1 minute Plot"); delay(500);}
97
+ // else if(mode == 6){lcd.setCursor(0,0); lcd.print("5 minute Plot"); delay(500);}
98
+ // else if(mode == 7){lcd.setCursor(0,0); lcd.print("15 minute Plot"); delay(500);}
99
+ // lcd.clear();
100
+ //
101
+ }
102
+
103
+ if (enc.held ()) SpeedFormat = !SpeedFormat;
104
+
95
105
if (myTimer.isReady ()) DrawDisplay ();
96
106
if (BackUp.isReady ()) BackUP ();
97
107
0 commit comments