Serpentine
/
foodcontroller
Tilt steering control
main.cpp@0:8e22f474256a, 2016-06-07 (annotated)
- Committer:
- pemb4660
- Date:
- Tue Jun 07 15:31:48 2016 +0000
- Revision:
- 0:8e22f474256a
steering control
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
pemb4660 | 0:8e22f474256a | 1 | #include "mbed.h" |
pemb4660 | 0:8e22f474256a | 2 | #include "MMA8451Q.h" |
pemb4660 | 0:8e22f474256a | 3 | |
pemb4660 | 0:8e22f474256a | 4 | #define MMA8451_I2C_ADDRESS (0x1d<<1) |
pemb4660 | 0:8e22f474256a | 5 | |
pemb4660 | 0:8e22f474256a | 6 | int main() |
pemb4660 | 0:8e22f474256a | 7 | { |
pemb4660 | 0:8e22f474256a | 8 | MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS); |
pemb4660 | 0:8e22f474256a | 9 | PwmOut rled(LED_RED); |
pemb4660 | 0:8e22f474256a | 10 | PwmOut gled(LED_GREEN); |
pemb4660 | 0:8e22f474256a | 11 | bool right; |
pemb4660 | 0:8e22f474256a | 12 | |
pemb4660 | 0:8e22f474256a | 13 | while (1) { |
pemb4660 | 0:8e22f474256a | 14 | |
pemb4660 | 0:8e22f474256a | 15 | if(acc.getAccX() <= 0.1 && acc.getAccX() >= -0.1) { |
pemb4660 | 0:8e22f474256a | 16 | if (right == true) { |
pemb4660 | 0:8e22f474256a | 17 | rled = 0; |
pemb4660 | 0:8e22f474256a | 18 | } else |
pemb4660 | 0:8e22f474256a | 19 | gled = 0; |
pemb4660 | 0:8e22f474256a | 20 | } |
pemb4660 | 0:8e22f474256a | 21 | |
pemb4660 | 0:8e22f474256a | 22 | if (acc.getAccX() > 0.1) { |
pemb4660 | 0:8e22f474256a | 23 | rled = 0; |
pemb4660 | 0:8e22f474256a | 24 | gled = 1; |
pemb4660 | 0:8e22f474256a | 25 | right = true; |
pemb4660 | 0:8e22f474256a | 26 | } |
pemb4660 | 0:8e22f474256a | 27 | |
pemb4660 | 0:8e22f474256a | 28 | if (acc.getAccX() < -0.1) { |
pemb4660 | 0:8e22f474256a | 29 | rled = 1; |
pemb4660 | 0:8e22f474256a | 30 | gled = 0; |
pemb4660 | 0:8e22f474256a | 31 | right = false; |
pemb4660 | 0:8e22f474256a | 32 | } |
pemb4660 | 0:8e22f474256a | 33 | wait(0.1); |
pemb4660 | 0:8e22f474256a | 34 | } |
pemb4660 | 0:8e22f474256a | 35 | |
pemb4660 | 0:8e22f474256a | 36 | } |