Class library for a HC-SR04 Distance Sensor based on PwmOut (Trig) and InterruptIn (Echo).
Dependents: ultra TDPS-COM1 HCSR04
Diff: HCSR04.cpp
- Revision:
- 0:5541303b14e7
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/HCSR04.cpp Mon Feb 08 14:43:42 2016 +0000 @@ -0,0 +1,28 @@ +#include "HCSR04.h" +#include "mbed.h" + + +HCSR04::HCSR04(PinName t, PinName e) : trig(t), echo(e) { + trig.period(0.06); + trig.pulsewidth_us(20); + echo.rise(this,&HCSR04::HighTrigger); + echo.fall(this,&HCSR04::LowTrigger); +} + +unsigned int HCSR04::read_us() { + return us; +} + +float HCSR04::read_cm() { + return (float)us/58; +} + +void HCSR04::HighTrigger() { + timer.start(); +} + +void HCSR04::LowTrigger() { + timer.stop(); + us = timer.read_us(); + timer.reset(); +} \ No newline at end of file