changed range conditions
Fork of HCSR04 by
Diff: HCSR04.h
- Revision:
- 2:3ebde19131af
- Parent:
- 0:5461d44a187c
diff -r 68ad9acbec81 -r 3ebde19131af HCSR04.h --- a/HCSR04.h Mon Dec 02 23:14:26 2013 +0000 +++ b/HCSR04.h Thu Dec 12 17:22:48 2013 +0000 @@ -43,19 +43,24 @@ #include "mbed.h" +#define MTRS_TO_INCH (39.3701) + typedef enum { RANGE_MEAS_INVALID, RANGE_MEAS_VALID } etHCSR04_RANGE_STATUS; + + class HCSR04 { public: HCSR04( PinName pinTrigger, PinName pinEcho ); void startMeas(void); etHCSR04_RANGE_STATUS getMeas(float &rRangeMeters); - + + private: DigitalOut trigger; Ticker triggerTicker; @@ -63,6 +68,8 @@ Timer echoTimer; unsigned long measTimeStart_us; unsigned long measTimeStop_us; + unsigned long dTime_us; + etHCSR04_RANGE_STATUS status; void triggerTicker_cb(void); // trigger ticker callback function void ISR_echoRising(void); // ISR for rising edge