射出(3/29用)
Dependencies: mbed ros_lib_kinetic
Fork of NHK_kaida_ros0322_4 by
Diff: uw.cpp
- Revision:
- 0:f6fa58c56955
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/uw.cpp Fri Jun 02 14:34:33 2017 +0000 @@ -0,0 +1,42 @@ +#include "uw.h" +#include "mbed.h" + +Uw::Uw(PinName uw) : uw_(uw) { + dist = 0; +} + +double Uw::get_dist(int rank){ + double res; + + uw_.output(); + uw_=0; + wait_us(10); + uw_=1; + wait_us(5); + uw_=0; + + uw_.input(); + t.start(); + while(!uw_){ + t.reset(); + t.start(); + } + do{ + res=t.read_us(); + }while(uw_); + t.reset(); + t.stop(); + + + dist=(res/2)/29.1; //[cm]=[m/us]/[1/(us*100)] + // = *343.6 //[cm]=[m/us]*[us*100] + + switch(rank){ + case 1: + return dist*10; + case 2: + return dist*0.01; + default: + return dist; + } +}