Class library for a HC-SR04 Distance Sensor based on PwmOut (Trig) and InterruptIn (Echo).

Dependents:   ultra TDPS-COM1 HCSR04

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