Dit Pet / Mbed 2 deprecated ReactionTimer_copy

Dependencies:   mbed

Committer:
pios
Date:
Wed Apr 13 15:37:58 2022 +0000
Revision:
0:95d4ede1a32b
MyProgramPios

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pios 0:95d4ede1a32b 1 #include "mbed.h"
pios 0:95d4ede1a32b 2
pios 0:95d4ede1a32b 3 DigitalOut redLED(D11);
pios 0:95d4ede1a32b 4 DigitalOut amberLED(D12);
pios 0:95d4ede1a32b 5 DigitalOut greenLED(D13);
pios 0:95d4ede1a32b 6
pios 0:95d4ede1a32b 7 DigitalIn button(USER_BUTTON);
pios 0:95d4ede1a32b 8
pios 0:95d4ede1a32b 9 Timer t;
pios 0:95d4ede1a32b 10
pios 0:95d4ede1a32b 11 Serial pc(SERIAL_TX,SERIAL_RX);
pios 0:95d4ede1a32b 12
pios 0:95d4ede1a32b 13 float startTime = 0.0;
pios 0:95d4ede1a32b 14 float stopTime = 0.0;
pios 0:95d4ede1a32b 15 float duration = 0.0;
pios 0:95d4ede1a32b 16
pios 0:95d4ede1a32b 17 void flash(){
pios 0:95d4ede1a32b 18 redLED = 1;
pios 0:95d4ede1a32b 19 wait(2);
pios 0:95d4ede1a32b 20 redLED = 0;
pios 0:95d4ede1a32b 21 amberLED = 1;
pios 0:95d4ede1a32b 22 wait(1);
pios 0:95d4ede1a32b 23 amberLED = 0;
pios 0:95d4ede1a32b 24 greenLED = 1;
pios 0:95d4ede1a32b 25 }
pios 0:95d4ede1a32b 26
pios 0:95d4ede1a32b 27 int main(){
pios 0:95d4ede1a32b 28 float record = 100.0;
pios 0:95d4ede1a32b 29 t.start();
pios 0:95d4ede1a32b 30 while(1){
pios 0:95d4ede1a32b 31 flash();
pios 0:95d4ede1a32b 32 startTime = t.read();
pios 0:95d4ede1a32b 33
pios 0:95d4ede1a32b 34 while(stopTime==0.01){
pios 0:95d4ede1a32b 35 if(button!=1){
pios 0:95d4ede1a32b 36 stopTime = t.read();
pios 0:95d4ede1a32b 37 duration = stopTime - startTime;
pios 0:95d4ede1a32b 38 pc.printf("Reaction Time = %f Seconds \r\n", duration);
pios 0:95d4ede1a32b 39 pc.printf("Record Time = %f Seconds \r\n \r\n", record);
pios 0:95d4ede1a32b 40 greenLED = 0;
pios 0:95d4ede1a32b 41 wait(5);
pios 0:95d4ede1a32b 42 if(duration<=record){
pios 0:95d4ede1a32b 43 record = duration;
pios 0:95d4ede1a32b 44 }
pios 0:95d4ede1a32b 45 duration = 0.0;
pios 0:95d4ede1a32b 46 }
pios 0:95d4ede1a32b 47 }
pios 0:95d4ede1a32b 48 stopTime = 0.01;
pios 0:95d4ede1a32b 49 wait(5.0);
pios 0:95d4ede1a32b 50
pios 0:95d4ede1a32b 51 }
pios 0:95d4ede1a32b 52 }
pios 0:95d4ede1a32b 53
pios 0:95d4ede1a32b 54
pios 0:95d4ede1a32b 55
pios 0:95d4ede1a32b 56
pios 0:95d4ede1a32b 57
pios 0:95d4ede1a32b 58
pios 0:95d4ede1a32b 59
pios 0:95d4ede1a32b 60
pios 0:95d4ede1a32b 61