Prog Thib Ju
Dependencies: mbed
main.cpp
- Committer:
- JulienB1
- Date:
- 2019-04-11
- Revision:
- 0:5535594ef331
- Child:
- 1:7d94c1b86ad6
File content as of revision 0:5535594ef331:
#include "mbed.h" PwmOut moteur1(D10); PwmOut moteur2(D9); DigitalOut Trig(D12); InterruptIn reception(D8); DigitalOut myled(LED1); DigitalOut LED(LED1); Serial pc(USBTX, USBRX); Timer t; double distance ; double rc; void front_montant() { t.start(); } void front_descendant() { t.stop(); double distance = 330*t.read()/2*1.06; // pc.printf("Distance = %f \r\n",330*t.read()/2*1.06); pc.printf("Distance = %lf \r\n", distance); t.reset(); myled =1; if (distance<=0.10){ rc = 0;} if (distance<=0.20 && distance>0.10){ rc = 0.5;} if (distance >=0.20) { rc = 1; } //if (distance<=0.40 && distance>0.20){ rc = 0.6;} //if (distance<=0.50 && distance>0.40){ rc = 0.8;} //pc.printf("rapport cyclique = \r \n"); //pc.scanf("%lf" ,&rc); pc.printf("Nouvelle valeur du rapport cyclique = %lf \r \n", rc); moteur2.write(rc); } int main() { t.reset(); reception.rise(&front_montant); reception.fall(&front_descendant); moteur1.period_ms(10); moteur2.period_ms(10); moteur1.write(0); moteur2.write(0); pc.baud(9600); while(1) { Trig = 1; wait(0.001); Trig =0 ; wait(0.001); /* Trig = 0; Trig = 1; //pc.printf("rapport cyclique = \r \n"); //pc.scanf("%lf" ,&rc); pc.printf("Nouvelle valeur du rapport cyclique = %lf \r \n", rc); moteur_cc_pwm.write(rc); */ } }