Library for controlling ultrasonic ranging module HCSR04 Ported by hiawoood from arduino library orgininally created by ITead studio.

Revision:
1:b3401c36a10b
Parent:
0:0bda99bb39a4
--- a/HCSR04.cpp	Tue Oct 18 14:32:12 2011 +0000
+++ b/HCSR04.cpp	Sun Jun 16 04:37:08 2019 +0000
@@ -1,19 +1,12 @@
 #include "HCSR04.h"
 #include "mbed.h"
 
-
-HCSR04::HCSR04(PinName t, PinName e) : trig(t), echo(e) {}
+Ultrasonic::Ultrasonic(PinName t, PinName e) : trig(t), echo(e) {
+        trig=0;
+}
 
-//      Trigger          Echo
-//      _______           _____________,,,,,,,,,
-// ____|  10us |_________| 150us-25ms, or 38ms if no obstacle
-// 
-
-//return echo duration in us (refer to digram above)
-long HCSR04::echo_duration() {
+int Ultrasonic::echo_duration() {
     timer.reset();
-    trig = 0;
-    wait_us(2);
     trig = 1;
     wait_us(10);
     trig = 0;
@@ -24,18 +17,8 @@
     return timer.read_us();
 }
 
-//return distance to nearest obstacle or returns -1 
-//if no obstacle within range
-//set sys to cm or inch accordingly
-long HCSR04::distance(int sys){
+int Ultrasonic::distance(){
     duration = echo_duration();
-    if(duration > 30000)
-        return -1;
-    distacne_cm = duration /29 / 2 ;
-    distance_inc = duration / 74 / 2;
-    if (sys)
-        return distacne_cm;
-    else
-        return distance_inc;
-}
-
+    _distance= duration /58 / 2 ;
+        return _distance;
+}
\ No newline at end of file