Projekt LCD
/
Bertel_PingDONG
Letft Curve, Right Curve, Forward
Fork of BertlTemplate2 by
Bertel_PingDONG.cpp@2:d40301306dd7, 2016-02-29 (annotated)
- Committer:
- TFuchsbichler
- Date:
- Mon Feb 29 07:50:08 2016 +0000
- Revision:
- 2:d40301306dd7
dfssfdfsd
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
TFuchsbichler | 2:d40301306dd7 | 1 | #include "mbed.h" |
TFuchsbichler | 2:d40301306dd7 | 2 | #include "Serial_HL.h" |
TFuchsbichler | 2:d40301306dd7 | 3 | #include "Bertl14.h" |
TFuchsbichler | 2:d40301306dd7 | 4 | #include "BertlObjects.h" |
TFuchsbichler | 2:d40301306dd7 | 5 | |
TFuchsbichler | 2:d40301306dd7 | 6 | BusOut boardPow(p30, P1_6,P1_7); |
TFuchsbichler | 2:d40301306dd7 | 7 | |
TFuchsbichler | 2:d40301306dd7 | 8 | Timer t_main; |
TFuchsbichler | 2:d40301306dd7 | 9 | Timer t_blink; |
TFuchsbichler | 2:d40301306dd7 | 10 | |
TFuchsbichler | 2:d40301306dd7 | 11 | void Forward(); |
TFuchsbichler | 2:d40301306dd7 | 12 | void RightCurve(); |
TFuchsbichler | 2:d40301306dd7 | 13 | void LeftCurve(); |
TFuchsbichler | 2:d40301306dd7 | 14 | |
TFuchsbichler | 2:d40301306dd7 | 15 | int main(void) { |
TFuchsbichler | 2:d40301306dd7 | 16 | boardPow=1; wait_ms(10); |
TFuchsbichler | 2:d40301306dd7 | 17 | InitBertl(); |
TFuchsbichler | 2:d40301306dd7 | 18 | pex.useISR=0; leds=9; |
TFuchsbichler | 2:d40301306dd7 | 19 | pex.ClearLeds(); |
TFuchsbichler | 2:d40301306dd7 | 20 | pex.WaitUntilFrontButtonPressed(); |
TFuchsbichler | 2:d40301306dd7 | 21 | t_main.start(); |
TFuchsbichler | 2:d40301306dd7 | 22 | t_blink.start(); |
TFuchsbichler | 2:d40301306dd7 | 23 | |
TFuchsbichler | 2:d40301306dd7 | 24 | while(1) { |
TFuchsbichler | 2:d40301306dd7 | 25 | pex.ReadButtons(); |
TFuchsbichler | 2:d40301306dd7 | 26 | if(pex.IsButton(BTN_FM)) Forward(); |
TFuchsbichler | 2:d40301306dd7 | 27 | if(pex.IsButton(BTN_FRR)) RightCurve(); |
TFuchsbichler | 2:d40301306dd7 | 28 | if(pex.IsButton(BTN_FLL)) LeftCurve(); |
TFuchsbichler | 2:d40301306dd7 | 29 | } |
TFuchsbichler | 2:d40301306dd7 | 30 | } |
TFuchsbichler | 2:d40301306dd7 | 31 | |
TFuchsbichler | 2:d40301306dd7 | 32 | void Forward() { |
TFuchsbichler | 2:d40301306dd7 | 33 | t_main.reset(); |
TFuchsbichler | 2:d40301306dd7 | 34 | t_blink.reset(); |
TFuchsbichler | 2:d40301306dd7 | 35 | mL.SetPow(0.3);mR.SetPow(0.3); |
TFuchsbichler | 2:d40301306dd7 | 36 | |
TFuchsbichler | 2:d40301306dd7 | 37 | while (t_main.read_ms() < 5000) { |
TFuchsbichler | 2:d40301306dd7 | 38 | if (t_blink.read_ms() > 100) { |
TFuchsbichler | 2:d40301306dd7 | 39 | t_blink.reset(); |
TFuchsbichler | 2:d40301306dd7 | 40 | pex.ToggleLeds(LED_FL1|LED_FR1); |
TFuchsbichler | 2:d40301306dd7 | 41 | } |
TFuchsbichler | 2:d40301306dd7 | 42 | } |
TFuchsbichler | 2:d40301306dd7 | 43 | pex.ClearLeds(); |
TFuchsbichler | 2:d40301306dd7 | 44 | mL.SetPow(0);mR.SetPow(0); |
TFuchsbichler | 2:d40301306dd7 | 45 | } |
TFuchsbichler | 2:d40301306dd7 | 46 | |
TFuchsbichler | 2:d40301306dd7 | 47 | void RightCurve() { |
TFuchsbichler | 2:d40301306dd7 | 48 | t_main.reset(); |
TFuchsbichler | 2:d40301306dd7 | 49 | t_blink.reset(); |
TFuchsbichler | 2:d40301306dd7 | 50 | mL.SetPow(0.3);mR.SetPow(0.15); |
TFuchsbichler | 2:d40301306dd7 | 51 | |
TFuchsbichler | 2:d40301306dd7 | 52 | while (t_main.read_ms() < 5000) { |
TFuchsbichler | 2:d40301306dd7 | 53 | if (t_blink.read_ms() > 100) { |
TFuchsbichler | 2:d40301306dd7 | 54 | t_blink.reset(); |
TFuchsbichler | 2:d40301306dd7 | 55 | pex.ToggleLeds(LED_FR1); |
TFuchsbichler | 2:d40301306dd7 | 56 | } |
TFuchsbichler | 2:d40301306dd7 | 57 | } |
TFuchsbichler | 2:d40301306dd7 | 58 | pex.ClearLeds(); |
TFuchsbichler | 2:d40301306dd7 | 59 | mL.SetPow(0);mR.SetPow(0); |
TFuchsbichler | 2:d40301306dd7 | 60 | } |
TFuchsbichler | 2:d40301306dd7 | 61 | |
TFuchsbichler | 2:d40301306dd7 | 62 | void LeftCurve() { |
TFuchsbichler | 2:d40301306dd7 | 63 | t_main.reset(); |
TFuchsbichler | 2:d40301306dd7 | 64 | t_blink.reset(); |
TFuchsbichler | 2:d40301306dd7 | 65 | mL.SetPow(0.15);mR.SetPow(0.3); |
TFuchsbichler | 2:d40301306dd7 | 66 | |
TFuchsbichler | 2:d40301306dd7 | 67 | while (t_main.read_ms() < 5000) { |
TFuchsbichler | 2:d40301306dd7 | 68 | if (t_blink.read_ms() > 100) { |
TFuchsbichler | 2:d40301306dd7 | 69 | t_blink.reset(); |
TFuchsbichler | 2:d40301306dd7 | 70 | pex.ToggleLeds(LED_FL1); |
TFuchsbichler | 2:d40301306dd7 | 71 | } |
TFuchsbichler | 2:d40301306dd7 | 72 | } |
TFuchsbichler | 2:d40301306dd7 | 73 | pex.ClearLeds(); |
TFuchsbichler | 2:d40301306dd7 | 74 | mL.SetPow(0);mR.SetPow(0); |
TFuchsbichler | 2:d40301306dd7 | 75 | } |