Tomo Yamanaka / Mbed 2 deprecated Distance_Sensor_Sample

Dependencies:   mbed

Committer:
1050186
Date:
Wed Apr 20 04:19:13 2016 +0000
Revision:
1:da6118c4da1f
Parent:
0:f8c34fd5e223
Modify main.cpp

Who changed what in which revision?

UserRevisionLine numberNew contents of line
1050186 0:f8c34fd5e223 1 #include "mbed.h"
1050186 0:f8c34fd5e223 2
1050186 0:f8c34fd5e223 3 AnalogIn ain(A0);
1050186 0:f8c34fd5e223 4 DigitalOut led1(LED_RED);
1050186 1:da6118c4da1f 5 Ticker flipper;
1050186 1:da6118c4da1f 6 int f_sen = 0;
1050186 0:f8c34fd5e223 7
1050186 1:da6118c4da1f 8 void flip() {
1050186 0:f8c34fd5e223 9 float tmp1 = 0;
1050186 0:f8c34fd5e223 10 float tmp2 = 0;
1050186 0:f8c34fd5e223 11 float data;
1050186 1:da6118c4da1f 12 float distance;
1050186 1:da6118c4da1f 13
1050186 1:da6118c4da1f 14 tmp1 = ain;
1050186 1:da6118c4da1f 15 tmp2 = ain;
1050186 1:da6118c4da1f 16 data = (tmp1 + tmp2) / 2.0f;
1050186 1:da6118c4da1f 17
1050186 1:da6118c4da1f 18 if ((0.121 <= data) && (data <= 0.970)) {
1050186 1:da6118c4da1f 19 distance = 26.663 * pow((data * 3.3),-1.25);
1050186 1:da6118c4da1f 20 printf("Distance : %4.3f[cm]\n",distance);
1050186 1:da6118c4da1f 21 f_sen = 1;
1050186 1:da6118c4da1f 22 } else {
1050186 1:da6118c4da1f 23 printf("Distance : ------[cm]\n");
1050186 1:da6118c4da1f 24 f_sen = 0;
1050186 1:da6118c4da1f 25 }
1050186 1:da6118c4da1f 26 }
1050186 1:da6118c4da1f 27
1050186 1:da6118c4da1f 28 int main() {
1050186 0:f8c34fd5e223 29
1050186 0:f8c34fd5e223 30 printf("Sensor start!\n");
1050186 1:da6118c4da1f 31 flipper.attach_us(&flip, 500000);//500ms
1050186 0:f8c34fd5e223 32 while(1) {
1050186 1:da6118c4da1f 33 if(f_sen == 1){
1050186 1:da6118c4da1f 34 led1 = 1;
1050186 0:f8c34fd5e223 35 } else {
1050186 1:da6118c4da1f 36 led1 = 0;
1050186 0:f8c34fd5e223 37 }
1050186 0:f8c34fd5e223 38 wait(0.5);
1050186 0:f8c34fd5e223 39 }
1050186 0:f8c34fd5e223 40 }