Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Fork of ROME2_P1_Fertig by
main.cpp@1:b87369992345, 2018-02-23 (annotated)
- 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?
| User | Revision | Line number | New 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 | } |
