Alain Pegatoquet
/
chrono_ER1
Chrono pour mesurer vitesse pour 1 tour (capteur analogique)
Diff: main.cpp
- Revision:
- 0:cf0fbe1e01d4
- Child:
- 1:d5f22105a691
diff -r 000000000000 -r cf0fbe1e01d4 main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Tue Nov 28 09:45:23 2017 +0000 @@ -0,0 +1,34 @@ +#include "mbed.h" + +// Global variables +Serial pc(USBTX, USBRX); +AnalogIn Ain(A3); +Timer timer1; + +float IrSensor; +// Prototype +float distance(float); + +// main function +int main(void) +{ + pc.printf("Debut du programme...\n"); + + while(1) { + IrSensor=Ain.read(); // IrSensor belongs to [0.0; 1.0] + pc.printf("%f \n\r",IrSensor*3.3); // Output voltage from 0 to 3.3V + + pc.printf("Distance en cm : %.1f \n\r",distance(IrSensor*3.3)); + wait (0.5); + } +} + +// Calcul de la distance +// Entre 20 et 80cm, on peut approximer la distance avec r=24/(V-0,1) +// r = distance en cm +// V = tension lue +float distance(float tension) +{ + return(24.0/(tension - 0.1)); +} +