Silvan Li
/
mbedKart_sp
single player mbedKart
(notes)
universal.h@28:0187a2d494a2, 2018-12-11 (annotated)
- Committer:
- DerekW2015
- Date:
- Tue Dec 11 05:50:48 2018 +0000
- Revision:
- 28:0187a2d494a2
- Parent:
- 23:b0fe1c1046dc
- Child:
- 29:1d568c399cb7
Added to speed control to allow going into reverse using the brake button. Also added multipliers for left and right to allow steering while accelerating.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
DerekW2015 | 21:f8f6c1f5743c | 1 | #ifndef EXAMPLE_H |
DerekW2015 | 21:f8f6c1f5743c | 2 | #define EXAMPLE_H |
DerekW2015 | 21:f8f6c1f5743c | 3 | #define PANID 0xD161 |
DerekW2015 | 21:f8f6c1f5743c | 4 | #define CHANNEL 0x1A |
DerekW2015 | 21:f8f6c1f5743c | 5 | |
DerekW2015 | 18:6c93ec600402 | 6 | // Define devices |
DerekW2015 | 18:6c93ec600402 | 7 | Motor left(p22, p16, p15); // pwm, fwd, rev |
DerekW2015 | 18:6c93ec600402 | 8 | Motor right(p23, p19, p20); // pwm, fwd, rev |
DerekW2015 | 18:6c93ec600402 | 9 | BusOut myled(LED1,LED2,LED3,LED4); |
DerekW2015 | 18:6c93ec600402 | 10 | RGBLed myRGBled(p26, p25, p24); // red, green, blue |
DerekW2015 | 21:f8f6c1f5743c | 11 | rgbSensor rgbsensor(p28, p27, p30); |
DerekW2015 | 18:6c93ec600402 | 12 | Serial blue(p13, p14); // serial tx, serial rx |
sli425 | 23:b0fe1c1046dc | 13 | Serial pc(USBTX, USBRX); //debugging |
DerekW2015 | 18:6c93ec600402 | 14 | enum speed_state { accelerating, braking, coasting }; |
DerekW2015 | 28:0187a2d494a2 | 15 | enum left_right { left_dir, right_dir, straight }; |
DerekW2015 | 18:6c93ec600402 | 16 | |
DerekW2015 | 18:6c93ec600402 | 17 | //Game state variables |
DerekW2015 | 18:6c93ec600402 | 18 | int progress = 0; |
DerekW2015 | 18:6c93ec600402 | 19 | int position = 1; |
DerekW2015 | 18:6c93ec600402 | 20 | int current_item = 0; |
DerekW2015 | 18:6c93ec600402 | 21 | bool holding_item = false; |
DerekW2015 | 18:6c93ec600402 | 22 | bool itembox = false; |
DerekW2015 | 18:6c93ec600402 | 23 | bool is_hit = false; |
DerekW2015 | 18:6c93ec600402 | 24 | float speed_cmd = 0.0; |
DerekW2015 | 18:6c93ec600402 | 25 | float max_speed = 1.0; |
DerekW2015 | 18:6c93ec600402 | 26 | float acceleration_rate = 0.04; |
DerekW2015 | 18:6c93ec600402 | 27 | float brake_rate = 0.1; |
DerekW2015 | 18:6c93ec600402 | 28 | float coast_rate = 0.02; |
DerekW2015 | 28:0187a2d494a2 | 29 | float left_multiplier, right_multiplier; |
DerekW2015 | 18:6c93ec600402 | 30 | int cstate; |
DerekW2015 | 18:6c93ec600402 | 31 | speed_state sstate = coasting; |
DerekW2015 | 28:0187a2d494a2 | 32 | left_right l_r = straight; |
DerekW2015 | 21:f8f6c1f5743c | 33 | bool collide = false; |
DerekW2015 | 21:f8f6c1f5743c | 34 | #endif |