Racing Robots Session

Dependencies:   MbedJSONValue m3pi

This is the library for the Racing Robots session. It supports the M3PI robot of Polulu.

It is based on the "Arduino" principle of the init and loop function.

Just add a main.cpp file which contains:

Racing Robots main file

#include "robot_logic.h"

void init()
{
   //put your initialization logic here
}

void loop()
{
    //put your robot control logic here    
}

Features include:

  1. Controlling the LEDS
  2. Move forward and backward
  3. Turn
  4. Read the sensor values
  5. Use a PID controller
Committer:
dwini
Date:
Mon Feb 23 12:48:22 2015 +0000
Revision:
1:43c91152e9ce
Parent:
0:c0ae66a0ec7a
Child:
4:3743cbfe031b
Cleanup of racing_robots.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dwini 0:c0ae66a0ec7a 1 #include "racing_robots.h"
dwini 0:c0ae66a0ec7a 2
dwini 1:43c91152e9ce 3 // External functions called from our library
dwini 1:43c91152e9ce 4 extern void init(void);
dwini 0:c0ae66a0ec7a 5 extern void loop(void);
dwini 0:c0ae66a0ec7a 6
dwini 1:43c91152e9ce 7 /*
dwini 1:43c91152e9ce 8 * System initialization.
dwini 1:43c91152e9ce 9 * Also calls external init() function.
dwini 1:43c91152e9ce 10 */
dwini 0:c0ae66a0ec7a 11 void _init(void) {
dwini 0:c0ae66a0ec7a 12 // DO our init here
dwini 0:c0ae66a0ec7a 13
dwini 0:c0ae66a0ec7a 14 init(); // Students init
dwini 0:c0ae66a0ec7a 15 }
dwini 0:c0ae66a0ec7a 16
dwini 1:43c91152e9ce 17 /*
dwini 1:43c91152e9ce 18 * Entry point.
dwini 1:43c91152e9ce 19 * Also calls external loop function.
dwini 1:43c91152e9ce 20 */
dwini 1:43c91152e9ce 21 int main (void) {
dwini 0:c0ae66a0ec7a 22 // Initialize system
dwini 0:c0ae66a0ec7a 23 _init();
dwini 0:c0ae66a0ec7a 24
dwini 0:c0ae66a0ec7a 25 while (true) {
dwini 0:c0ae66a0ec7a 26 loop(); // Students loop
dwini 0:c0ae66a0ec7a 27 }
dwini 0:c0ae66a0ec7a 28 }