PangKai Sun
/
MercurySwitchMotorControl
main.cpp@0:2c78f6dc3dea, 2017-03-11 (annotated)
- Committer:
- hankpkai
- Date:
- Sat Mar 11 23:40:59 2017 +0000
- Revision:
- 0:2c78f6dc3dea
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
hankpkai | 0:2c78f6dc3dea | 1 | #include "mbed.h" |
hankpkai | 0:2c78f6dc3dea | 2 | #include "Motor.h" |
hankpkai | 0:2c78f6dc3dea | 3 | |
hankpkai | 0:2c78f6dc3dea | 4 | //DigitalOut led(LED1); |
hankpkai | 0:2c78f6dc3dea | 5 | DigitalIn sw1(p5); |
hankpkai | 0:2c78f6dc3dea | 6 | DigitalIn sw2(p6); |
hankpkai | 0:2c78f6dc3dea | 7 | BusOut led(LED1,LED2,LED3,LED4); |
hankpkai | 0:2c78f6dc3dea | 8 | Motor m(p21, p11, p12); // pwm, fwd, rev |
hankpkai | 0:2c78f6dc3dea | 9 | |
hankpkai | 0:2c78f6dc3dea | 10 | int main() { |
hankpkai | 0:2c78f6dc3dea | 11 | led = 0; |
hankpkai | 0:2c78f6dc3dea | 12 | m.speed(0); |
hankpkai | 0:2c78f6dc3dea | 13 | int count = 3; |
hankpkai | 0:2c78f6dc3dea | 14 | float speed = 0; |
hankpkai | 0:2c78f6dc3dea | 15 | while(1) { |
hankpkai | 0:2c78f6dc3dea | 16 | |
hankpkai | 0:2c78f6dc3dea | 17 | if(sw1 == 0 && count < 5) |
hankpkai | 0:2c78f6dc3dea | 18 | { |
hankpkai | 0:2c78f6dc3dea | 19 | count ++; |
hankpkai | 0:2c78f6dc3dea | 20 | speed +=0.5; |
hankpkai | 0:2c78f6dc3dea | 21 | m.speed(speed); |
hankpkai | 0:2c78f6dc3dea | 22 | if(count == 3) |
hankpkai | 0:2c78f6dc3dea | 23 | led =0; |
hankpkai | 0:2c78f6dc3dea | 24 | else if (count == 1) |
hankpkai | 0:2c78f6dc3dea | 25 | led = 0x1; |
hankpkai | 0:2c78f6dc3dea | 26 | else if (count == 2) |
hankpkai | 0:2c78f6dc3dea | 27 | led = 0x2; |
hankpkai | 0:2c78f6dc3dea | 28 | else if (count == 4) |
hankpkai | 0:2c78f6dc3dea | 29 | led = 0x4; |
hankpkai | 0:2c78f6dc3dea | 30 | else if (count == 5) |
hankpkai | 0:2c78f6dc3dea | 31 | led = 0x8; |
hankpkai | 0:2c78f6dc3dea | 32 | wait(1); |
hankpkai | 0:2c78f6dc3dea | 33 | |
hankpkai | 0:2c78f6dc3dea | 34 | } |
hankpkai | 0:2c78f6dc3dea | 35 | |
hankpkai | 0:2c78f6dc3dea | 36 | else if(sw2 == 0 && count>0 ) |
hankpkai | 0:2c78f6dc3dea | 37 | { |
hankpkai | 0:2c78f6dc3dea | 38 | count --; |
hankpkai | 0:2c78f6dc3dea | 39 | speed -=0.5; |
hankpkai | 0:2c78f6dc3dea | 40 | m.speed(speed); |
hankpkai | 0:2c78f6dc3dea | 41 | if(count == 3) |
hankpkai | 0:2c78f6dc3dea | 42 | led =0; |
hankpkai | 0:2c78f6dc3dea | 43 | else if (count == 1) |
hankpkai | 0:2c78f6dc3dea | 44 | led = 0x1; |
hankpkai | 0:2c78f6dc3dea | 45 | else if (count == 2) |
hankpkai | 0:2c78f6dc3dea | 46 | led = 0x2; |
hankpkai | 0:2c78f6dc3dea | 47 | else if (count == 4) |
hankpkai | 0:2c78f6dc3dea | 48 | led = 0x4; |
hankpkai | 0:2c78f6dc3dea | 49 | else if (count == 5) |
hankpkai | 0:2c78f6dc3dea | 50 | led = 0x8; |
hankpkai | 0:2c78f6dc3dea | 51 | |
hankpkai | 0:2c78f6dc3dea | 52 | wait(1); |
hankpkai | 0:2c78f6dc3dea | 53 | } |
hankpkai | 0:2c78f6dc3dea | 54 | } |
hankpkai | 0:2c78f6dc3dea | 55 | } |