OK

Dependencies:   mbed

Files at this revision

API Documentation at this revision

Comitter:
Bjorken
Date:
Wed Mar 16 11:04:52 2016 +0000
Commit message:
Ultralyd

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r e49880825aec main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Wed Mar 16 11:04:52 2016 +0000
@@ -0,0 +1,53 @@
+#include "mbed.h"
+
+DigitalOut TriggerPin(p17);  //Sender signal
+DigitalOut EchoPin(p18);     //Motar signal
+DigitalIn  Br(p15);
+DigitalOut myled(LED1);
+
+Serial pc(USBTX, USBRX);
+
+Timer echo;   //Timer for avlesing av echosignal.
+
+int distance; //variable for lagring og utrening av avstand.
+int d;
+
+void triggerfunc();
+
+//Distance (in cm) = (elapsed time * sound velocity (340 m/s)) / 100 / 2 //formel for utregning av avstand, ved bruk av tiden.
+
+
+int main()
+{
+    while(1) {
+        pc.printf("Tast 1 for a starte avstandsmaling\n\r");
+        pc.scanf("%d", &d);
+    if(d == 1){
+        pc.printf("Triggersignal sendt\n\r");
+        triggerfunc();    
+        myled = 1;                                  //sender ut et triggersignal.
+        }
+    while(1) {
+        if(EchoPin == 1) { 
+            pc.printf("Timer startet\n\r");                               //Starter en timer som er aktiv så lenge EchoPin er høy.
+            echo.start();
+        } else {
+            pc.printf("Timer stoppet\n\r");
+            echo.stop();
+            distance = (echo.read() * 340) / 100 /2;    //340, er lydens hastighet i m/s. Deler på 100 for å få svaret i cm.
+            pc.printf("Malt avstand er: %.2f\n\r", distance);
+            echo.reset();   
+            break; 
+            }                             //we divide distance by 2 because the sensor returns the round trip time, which doubles the distance measurement.
+        }
+    }
+}
+
+
+/* Sender ut ett trigger signal på 10us */
+void triggerfunc()
+{
+    TriggerPin = 1;
+    wait(10u);
+    TriggerPin = 0;
+}
diff -r 000000000000 -r e49880825aec mbed.bld
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Wed Mar 16 11:04:52 2016 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/87f2f5183dfb
\ No newline at end of file