| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- //GPIO declarations
- //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- byte segmentClock = 6;
- byte segmentLatch = 5;
- byte segmentData = 7;
- byte segmentClockLAP = 11;
- byte segmentLatchLAP = 10;
- byte segmentDataLAP = 12;
- //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- #define SENSOR 3 // define pint 3 for sensor
- #define ACTION 9 // define pin 9 as for ACTION
- float startTime;
- float endTime;
- float duration;
- byte timerRunning;
- unsigned long time;
- float distance;
- float seconds;
- // float minutes;
- float hours;
- float mph;
- int laps = 0;
- int avglaps= 0; // AVERAGE LAP COUNTER
- void loop() {
-
- if (timerRunning == 0 && digitalRead(SENSOR) == HIGH) { // stop counting
- startTime = millis();
- timerRunning = 1;
- }
- if (timerRunning == 1 && digitalRead(SENSOR) == LOW) { // start counting
- endTime = millis();
- timerRunning = 0;
- laps++;
- avglaps++;
- duration = endTime - startTime;
- seconds = (duration/1000);
- hours= (duration/3600000);
- mph= (distance/hours);
- Serial.print ("Lap: ");
- Serial.print (laps);
- Serial.print (" \t");
- Serial.print ("mph: ");
- Serial.print (mph,3);
- Serial.print (" \t");
- Serial.print ("sec: ");
- Serial.println (seconds,3);
- Serial.print ("avgLap: ");
- Serial.println (avglaps);
- delay(5); // added this delay to stop reading rear wheels error before was up to .003 seconds
- showNumber(mph);
- showNumberLAP(laps);
- /// LAP AVERAGE COUNTER LOOP CODE /////////////////////
- double nd = mph;
- //double ad= mph;
- pushd(nd);
- double ad = avgd();
- // pushd(ad); // this pushs previous average back into new average
- //Serial.print ("nd: ");
- //Serial.println (nd,4);
- Serial.print ("ad: ");
- Serial.println (ad,4);
- //Serial.print ("dlen: ");
- //Serial.println (dlen,4);
- //Serial.print ("d[dlen]: ");
- //Serial.println (d[dlen],4);
- //Serial.print(average);
- }
- }
|