![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
for noam
main.cpp@0:33b00fa05201, 2019-12-20 (annotated)
- Committer:
- drorbalbul
- Date:
- Fri Dec 20 15:17:18 2019 +0000
- Revision:
- 0:33b00fa05201
noam
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
drorbalbul | 0:33b00fa05201 | 1 | #include "mbed.h" |
drorbalbul | 0:33b00fa05201 | 2 | #include "Motor.h" |
drorbalbul | 0:33b00fa05201 | 3 | #include <Map.hpp> |
drorbalbul | 0:33b00fa05201 | 4 | |
drorbalbul | 0:33b00fa05201 | 5 | AnalogIn analog_value1(PA_0); |
drorbalbul | 0:33b00fa05201 | 6 | AnalogIn analog_value2(PA_1); |
drorbalbul | 0:33b00fa05201 | 7 | AnalogIn analog_value3(PA_3); |
drorbalbul | 0:33b00fa05201 | 8 | AnalogIn analog_value4(PA_4); |
drorbalbul | 0:33b00fa05201 | 9 | Motor myMotor(PA_8, PA_5, PA_6); |
drorbalbul | 0:33b00fa05201 | 10 | //DigitalOut led(LED1); |
drorbalbul | 0:33b00fa05201 | 11 | Serial pc(USBTX,USBRX); |
drorbalbul | 0:33b00fa05201 | 12 | int main() { |
drorbalbul | 0:33b00fa05201 | 13 | float pedal1, pedal2, matzeret1, matzeret2, sumpedal, summetzeret, subpedal, submetzeret; |
drorbalbul | 0:33b00fa05201 | 14 | Map mapvaltovolt = Map(0, 1, 0, 3300); |
drorbalbul | 0:33b00fa05201 | 15 | Map pedaltodagree = Map(850, 1200, 0, 90); |
drorbalbul | 0:33b00fa05201 | 16 | Map mtodagree = Map(490, 2900, 0, 90); |
drorbalbul | 0:33b00fa05201 | 17 | float mdagree = 0, pdagree = 0; |
drorbalbul | 0:33b00fa05201 | 18 | while(1) { |
drorbalbul | 0:33b00fa05201 | 19 | pedal1 = analog_value1.read(); // Converts and read the analog input value (value from 0.0 to 1.0) |
drorbalbul | 0:33b00fa05201 | 20 | pedal2 = analog_value2.read(); // Converts and read the analog input value (value from 0.0 to 1.0) |
drorbalbul | 0:33b00fa05201 | 21 | matzeret1 = analog_value3.read(); |
drorbalbul | 0:33b00fa05201 | 22 | pedal1 = mapvaltovolt.Calculate(pedal1); |
drorbalbul | 0:33b00fa05201 | 23 | pedal2 = mapvaltovolt.Calculate(pedal2); |
drorbalbul | 0:33b00fa05201 | 24 | matzeret1 = mapvaltovolt.Calculate(matzeret1); |
drorbalbul | 0:33b00fa05201 | 25 | /*matzeret2 = analog_value4.read(); |
drorbalbul | 0:33b00fa05201 | 26 | matzeret2 = matzeret2 * ConvertToVolt; */ |
drorbalbul | 0:33b00fa05201 | 27 | |
drorbalbul | 0:33b00fa05201 | 28 | pc.printf("pedal1 is: %.4f, pedal2 is:%.4f\n\r", pedal1, pedal2); |
drorbalbul | 0:33b00fa05201 | 29 | sumpedal = pedal1+pedal2; |
drorbalbul | 0:33b00fa05201 | 30 | //pc.printf("sumpedal is: %.4f\n\r", sumpedal); |
drorbalbul | 0:33b00fa05201 | 31 | subpedal = abs(3500-sumpedal); |
drorbalbul | 0:33b00fa05201 | 32 | //pc.printf("Subpedal is: %.4f\n\r", subpedal); |
drorbalbul | 0:33b00fa05201 | 33 | if (subpedal<175) { |
drorbalbul | 0:33b00fa05201 | 34 | if (pedal1 >=1000){ |
drorbalbul | 0:33b00fa05201 | 35 | myMotor.speed(0.3); |
drorbalbul | 0:33b00fa05201 | 36 | } |
drorbalbul | 0:33b00fa05201 | 37 | else { |
drorbalbul | 0:33b00fa05201 | 38 | myMotor.speed(0); |
drorbalbul | 0:33b00fa05201 | 39 | } |
drorbalbul | 0:33b00fa05201 | 40 | } |
drorbalbul | 0:33b00fa05201 | 41 | else{ |
drorbalbul | 0:33b00fa05201 | 42 | pc.printf("error\n\r"); |
drorbalbul | 0:33b00fa05201 | 43 | //myMotor.speed(0); |
drorbalbul | 0:33b00fa05201 | 44 | } |
drorbalbul | 0:33b00fa05201 | 45 | summetzeret = matzeret1 + matzeret2; |
drorbalbul | 0:33b00fa05201 | 46 | submetzeret = abs(3400-summetzeret); |
drorbalbul | 0:33b00fa05201 | 47 | pc.printf("matzeret1 is: %.4f, matzeret2 is:%.4f\n\r", matzeret1, matzeret2); |
drorbalbul | 0:33b00fa05201 | 48 | pc.printf("dagree of pedal = %d, dagree of metzeeret = %d\n\r", (int)pedaltodagree.Calculate(pedal1), (int)mtodagree.Calculate(matzeret1)); |
drorbalbul | 0:33b00fa05201 | 49 | if (submetzeret>175) { |
drorbalbul | 0:33b00fa05201 | 50 | pc.printf("METZERET NOT CORRECT\n\n\n\r"); |
drorbalbul | 0:33b00fa05201 | 51 | } |
drorbalbul | 0:33b00fa05201 | 52 | |
drorbalbul | 0:33b00fa05201 | 53 | |
drorbalbul | 0:33b00fa05201 | 54 | wait(0.01); |
drorbalbul | 0:33b00fa05201 | 55 | } |
drorbalbul | 0:33b00fa05201 | 56 | } |