Oscar Schofield / Mbed 2 deprecated Elec350_OBS

Dependencies:   mbed

Committer:
Oschofield
Date:
Thu Nov 12 12:07:39 2015 +0000
Revision:
13:4b9c32ba0572
Parent:
12:08a1971c9441
Child:
14:6427883f5900
getPulse(); all wrong, re-written.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Oschofield 1:16b0f2898739 1 #include "button.h" //header file included
Oschofield 7:1e9cd1481e80 2
Oschofield 1:16b0f2898739 3
Oschofield 1:16b0f2898739 4 Button::Button(string s){
Oschofield 1:16b0f2898739 5 if (s == "user"){
Oschofield 1:16b0f2898739 6 pin = new DigitalIn(PA_0);
Oschofield 1:16b0f2898739 7 }
Oschofield 1:16b0f2898739 8 }
Oschofield 1:16b0f2898739 9
Oschofield 2:e3cd1e0c3b78 10 bool Button::ifPressed(){
Oschofield 2:e3cd1e0c3b78 11 return *pin;
Oschofield 8:ad8e2dd314a2 12 }
Oschofield 8:ad8e2dd314a2 13
Oschofield 11:444afcb2f59f 14 float Button::getPulse(float timeout)
Oschofield 9:a018d7c05dc7 15 {
Oschofield 8:ad8e2dd314a2 16
Oschofield 8:ad8e2dd314a2 17 Timer timer;
Oschofield 8:ad8e2dd314a2 18 timer.start();
Oschofield 8:ad8e2dd314a2 19
Oschofield 10:8a6ecbf764fa 20 while(this->ifPressed()== false){
Oschofield 10:8a6ecbf764fa 21 if (timeout != -1.0f && timer.read() > timeout){
Oschofield 10:8a6ecbf764fa 22 return -1.0f;
Oschofield 12:08a1971c9441 23 }
Oschofield 8:ad8e2dd314a2 24 }
Oschofield 10:8a6ecbf764fa 25
Oschofield 13:4b9c32ba0572 26 while(this->ifPressed() == true){
Oschofield 13:4b9c32ba0572 27 wait(0.01f);
Oschofield 13:4b9c32ba0572 28 }
Oschofield 13:4b9c32ba0572 29
Oschofield 8:ad8e2dd314a2 30 timer.stop();
Oschofield 8:ad8e2dd314a2 31 return timer.read();
Oschofield 7:1e9cd1481e80 32 }