radar

Dependencies:   Servo

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