TeamSurface / Mbed 2 deprecated kueenste_rome2_p1

Dependencies:   mbed

Fork of ROME2_P1_Fertig by St Knz

Committer:
kueenste
Date:
Fri Feb 23 14:07:21 2018 +0000
Revision:
1:b87369992345
Parent:
0:17b906055a44
Child:
2:ff4efefe7a1f
Distanzmesser completed

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kueenste 0:17b906055a44 1 #include "mbed.h"
kueenste 1:b87369992345 2 #include "IRSensor.h"
kueenste 0:17b906055a44 3
kueenste 1:b87369992345 4 // LEDs
kueenste 0:17b906055a44 5 DigitalOut myled(LED1);
kueenste 1:b87369992345 6 DigitalOut led0(PC_8);
kueenste 1:b87369992345 7 DigitalOut led1(PC_6);
kueenste 1:b87369992345 8 DigitalOut led2(PB_12);
kueenste 1:b87369992345 9 DigitalOut led3(PA_7);
kueenste 1:b87369992345 10 DigitalOut led4(PC_0);
kueenste 1:b87369992345 11 DigitalOut led5(PC_9);
kueenste 0:17b906055a44 12
kueenste 1:b87369992345 13 // Distanzmesser
kueenste 1:b87369992345 14 AnalogIn distance(PB_1); // Kreieren der Ein- und Ausgangsobjekte
kueenste 1:b87369992345 15 DigitalOut enable(PC_1);
kueenste 1:b87369992345 16 DigitalOut bit0(PH_1);
kueenste 1:b87369992345 17 DigitalOut bit1(PC_2);
kueenste 1:b87369992345 18 DigitalOut bit2(PC_3);
kueenste 1:b87369992345 19
kueenste 1:b87369992345 20 // Motoren
kueenste 1:b87369992345 21 DigitalOut enableMotorDriver(PB_2);
kueenste 1:b87369992345 22 DigitalIn motorDriverFault(PB_14);
kueenste 1:b87369992345 23 DigitalIn motorDriverWarning(PB_15);
kueenste 1:b87369992345 24 PwmOut pwmLeft(PA_8);
kueenste 1:b87369992345 25 PwmOut pwmRight(PA_9);
kueenste 1:b87369992345 26
kueenste 1:b87369992345 27 float d = 0;
kueenste 1:b87369992345 28
kueenste 1:b87369992345 29 IRSensor irSensor0(distance, bit0, bit1, bit2, 0); // Objekte kreieren
kueenste 1:b87369992345 30 IRSensor irSensor1(distance, bit0, bit1, bit2, 1);
kueenste 1:b87369992345 31 IRSensor irSensor2(distance, bit0, bit1, bit2, 2);
kueenste 1:b87369992345 32 IRSensor irSensor3(distance, bit0, bit1, bit2, 3);
kueenste 1:b87369992345 33 IRSensor irSensor4(distance, bit0, bit1, bit2, 4);
kueenste 1:b87369992345 34 IRSensor irSensor5(distance, bit0, bit1, bit2, 5);
kueenste 1:b87369992345 35
kueenste 1:b87369992345 36 int main()
kueenste 1:b87369992345 37 {
kueenste 1:b87369992345 38
kueenste 1:b87369992345 39 enable = 1; // schaltet die Sensoren ein
kueenste 1:b87369992345 40
kueenste 1:b87369992345 41 /*
kueenste 1:b87369992345 42 bit0 = 0; // Wahl des Sensors mit dem Multiplexer (Sensor vorne)
kueenste 1:b87369992345 43 bit1 = 0;
kueenste 1:b87369992345 44 bit2 = 0;
kueenste 1:b87369992345 45 */
kueenste 1:b87369992345 46
kueenste 0:17b906055a44 47 while(1) {
kueenste 1:b87369992345 48 /*
kueenste 0:17b906055a44 49 myled = 1; // LED is ON
kueenste 0:17b906055a44 50 wait(0.2); // 200 ms
kueenste 0:17b906055a44 51 myled = 0; // LED is OFF
kueenste 1:b87369992345 52 wait(0.2); // 1 sec
kueenste 1:b87369992345 53
kueenste 1:b87369992345 54 led1 = 1; // LED is ON
kueenste 1:b87369992345 55 wait(0.2); // 200 ms
kueenste 1:b87369992345 56 led1 = 0; // LED is OFF
kueenste 1:b87369992345 57 wait(0.2); // 1 sec
kueenste 1:b87369992345 58
kueenste 1:b87369992345 59 led2 = 1; // LED is ON
kueenste 1:b87369992345 60 wait(0.2); // 200 ms
kueenste 1:b87369992345 61 led2 = 0; // LED is OFF
kueenste 1:b87369992345 62 wait(0.2); // 1 sec
kueenste 1:b87369992345 63
kueenste 1:b87369992345 64 led3 = 1; // LED is ON
kueenste 1:b87369992345 65 wait(0.2); // 200 ms
kueenste 1:b87369992345 66 led3 = 0; // LED is OFF
kueenste 1:b87369992345 67 wait(0.2); // 1 sec
kueenste 1:b87369992345 68
kueenste 1:b87369992345 69 led4 = 1; // LED is ON
kueenste 1:b87369992345 70 wait(0.2); // 200 ms
kueenste 1:b87369992345 71 led4 = 0; // LED is OFF
kueenste 1:b87369992345 72 wait(0.2); // 1 sec
kueenste 1:b87369992345 73
kueenste 1:b87369992345 74 led5 = 1; // LED is ON
kueenste 1:b87369992345 75 wait(0.2); // 200 ms
kueenste 1:b87369992345 76 led5 = 0; // LED is OFF
kueenste 1:b87369992345 77 wait(0.2); // 1 sec
kueenste 1:b87369992345 78 */
kueenste 1:b87369992345 79
kueenste 1:b87369992345 80 /*wait(0.5);
kueenste 1:b87369992345 81 d = -0.58f*sqrt(distance)+0.58f; // Lesen der Distanz in [m]
kueenste 1:b87369992345 82 printf("Mein Wert: %f\n",d);
kueenste 1:b87369992345 83 */
kueenste 1:b87369992345 84
kueenste 1:b87369992345 85
kueenste 1:b87369992345 86 float distance0 = irSensor0.read(); // gibt die Distanz in [m] zurueck
kueenste 1:b87369992345 87 float distance1 = irSensor1.read();
kueenste 1:b87369992345 88 float distance2 = irSensor2.read();
kueenste 1:b87369992345 89 float distance3 = irSensor3.read();
kueenste 1:b87369992345 90 float distance4 = irSensor4.read();
kueenste 1:b87369992345 91 float distance5 = irSensor5.read();
kueenste 1:b87369992345 92
kueenste 1:b87369992345 93 led0 = 0;
kueenste 1:b87369992345 94 led1 = 0;
kueenste 1:b87369992345 95 led2 = 0;
kueenste 1:b87369992345 96 led3 = 0;
kueenste 1:b87369992345 97 led4 = 0;
kueenste 1:b87369992345 98 led5 = 0;
kueenste 1:b87369992345 99
kueenste 1:b87369992345 100
kueenste 1:b87369992345 101
kueenste 1:b87369992345 102 if(distance0 < 0.2f) {
kueenste 1:b87369992345 103 led0 = 1;
kueenste 1:b87369992345 104 }
kueenste 1:b87369992345 105 if(distance1 < 0.2f) {
kueenste 1:b87369992345 106 led1 = 1;
kueenste 1:b87369992345 107 }
kueenste 1:b87369992345 108 if(distance2 < 0.2f) {
kueenste 1:b87369992345 109 led2 = 1;
kueenste 1:b87369992345 110 }
kueenste 1:b87369992345 111 if(distance3 < 0.2f) {
kueenste 1:b87369992345 112 led3 = 1;
kueenste 1:b87369992345 113 }
kueenste 1:b87369992345 114 if(distance4 < 0.2f) {
kueenste 1:b87369992345 115 led4 = 1;
kueenste 1:b87369992345 116 }
kueenste 1:b87369992345 117 if(distance5 < 0.2f) {
kueenste 1:b87369992345 118 led5 = 1;
kueenste 1:b87369992345 119 }
kueenste 1:b87369992345 120
kueenste 1:b87369992345 121
kueenste 0:17b906055a44 122 }
kueenste 0:17b906055a44 123 }