Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Revision 0:2a1510763167, committed 2021-01-11
- Comitter:
- fermedicius
- Date:
- Mon Jan 11 10:59:03 2021 +0000
- Commit message:
- Test
Changed in this revision
| hcsr04.cpp | Show annotated file Show diff for this revision Revisions of this file |
| hcsr04.h | Show annotated file Show diff for this revision Revisions of this file |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hcsr04.cpp Mon Jan 11 10:59:03 2021 +0000
@@ -0,0 +1,29 @@
+#include "hcsr04.h"
+#include "mbed.h"
+/*
+*HCSR04.cpp
+*/
+HCSR04::HCSR04(PinName t, PinName e) : trig(t), echo(e) {}
+ long HCSR04::echo_duration() {
+
+ timer.reset(); //reset timer
+ trig=0; // trigger low
+ wait_us(2); // wait
+ trig=1; // trigger high
+ wait_us(10);
+ trig=0; // trigger low
+ while(!echo); // start pulseIN
+ timer.start();
+ while(echo);
+ timer.stop();
+ return timer.read_us();
+
+}
+
+//return distance in cm
+long HCSR04::distance(){
+ duration = echo_duration();
+ distance_cm = (duration/2)/29.1 ;
+ return distance_cm;
+
+}
\ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/hcsr04.h Mon Jan 11 10:59:03 2021 +0000
@@ -0,0 +1,20 @@
+#ifndef HCSR04_H
+#define HCSR04_H
+#include "mbed.h"
+
+
+
+class HCSR04 {
+ public:
+ HCSR04(PinName t, PinName e);
+ long echo_duration();
+ long distance();
+
+ protected:
+ DigitalOut trig;
+ DigitalIn echo;
+ Timer timer;
+ long duration,distance_cm;
+};
+
+#endif
\ No newline at end of file