Sonar

Committer:
twjfransen
Date:
Wed Jun 13 09:22:37 2018 +0000
Revision:
0:932004bfb013
...

Who changed what in which revision?

UserRevisionLine numberNew contents of line
twjfransen 0:932004bfb013 1 #include "mbed.h"
twjfransen 0:932004bfb013 2
twjfransen 0:932004bfb013 3 struct Point{
twjfransen 0:932004bfb013 4 float x;
twjfransen 0:932004bfb013 5 float y;
twjfransen 0:932004bfb013 6 };
twjfransen 0:932004bfb013 7
twjfransen 0:932004bfb013 8 class Sonar{
twjfransen 0:932004bfb013 9 public:
twjfransen 0:932004bfb013 10 Sonar(PinName trig, PinName echo, float angle_z = 0, float x = 0, float y = 0, float z = 0);
twjfransen 0:932004bfb013 11 float getDistance();
twjfransen 0:932004bfb013 12 float getLastDistance() {return _distance;}
twjfransen 0:932004bfb013 13 Point getCoordinate();
twjfransen 0:932004bfb013 14 void autoPulse(bool on_off, float frequency_ms = 1);
twjfransen 0:932004bfb013 15 void pulse();
twjfransen 0:932004bfb013 16
twjfransen 0:932004bfb013 17 private:
twjfransen 0:932004bfb013 18 Ticker _ticker;
twjfransen 0:932004bfb013 19 Timer _timer;
twjfransen 0:932004bfb013 20 DigitalOut _trig;
twjfransen 0:932004bfb013 21 InterruptIn _echo;
twjfransen 0:932004bfb013 22
twjfransen 0:932004bfb013 23 int _begin;
twjfransen 0:932004bfb013 24 int _end;
twjfransen 0:932004bfb013 25 float _distance;
twjfransen 0:932004bfb013 26 bool _pinged;
twjfransen 0:932004bfb013 27
twjfransen 0:932004bfb013 28 float _ratio_x;
twjfransen 0:932004bfb013 29 float _ratio_y;
twjfransen 0:932004bfb013 30 float _x;
twjfransen 0:932004bfb013 31 float _y;
twjfransen 0:932004bfb013 32 float _z;
twjfransen 0:932004bfb013 33
twjfransen 0:932004bfb013 34 void echoBegin();
twjfransen 0:932004bfb013 35 void echoEnd();
twjfransen 0:932004bfb013 36 };