single player mbedKart

Dependencies:   Motor

(notes)

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?

UserRevisionLine numberNew 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