
radar
Diff: main.cpp
- Revision:
- 0:24034ea3555d
- Child:
- 1:5b8b3a6e9f8c
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Tue Nov 17 13:30:38 2020 +0000 @@ -0,0 +1,57 @@ +#include "mbed.h" +#include "rtos.h" +#include "Servo.h" + +DigitalOut trig(D3); +DigitalIn echo(D2); +Servo myservo(D4); + +Thread hilo_tarea1; +Thread hilo_tarea2; +Timer senal; +float distancia; + +void tarea1(void); +void tarea2(void); + +int main() +{ + hilo_tarea1.start(tarea1); + hilo_tarea2.start(tarea2); + hilo_tarea1.set_priority(osPriorityNormal); + while (true) { + + } +} + +void tarea1(void){ + while(true){ + senal.reset(); + trig = 0; + wait_us(2); + trig = 1; + wait_us(10); + trig = 0; + while(echo==0); + senal.start(); + while(echo==1); + senal.stop(); + distancia = (senal.read_us())/58; + printf("%.f\n\r",distancia); + ThisThread::sleep_for(50); + } +} + +void tarea2(void){ + myservo.calibrate(0.0009, 180.0); + while(true){ + for(int i=0; i<100; i++){ + myservo = i/100.0; + ThisThread::sleep_for(100); + } + for(int i=100; i>0; i--){ + myservo = i/100.0; + ThisThread::sleep_for(100); + } + } +} \ No newline at end of file