Final Project files for mBed development.

Dependencies:   m3pi mbed

Committer:
lsaristo
Date:
Thu Nov 13 07:12:31 2014 +0000
Revision:
8:12d780f7443e
Child:
9:3a0433c391cb
Removed unneeded c source file

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lsaristo 8:12d780f7443e 1 /**
lsaristo 8:12d780f7443e 2 * @file project.h
lsaristo 8:12d780f7443e 3 * @brief Main header file for includes and whatnot
lsaristo 8:12d780f7443e 4 * for the other project files.
lsaristo 8:12d780f7443e 5 * @author John Wilkey
lsaristo 8:12d780f7443e 6 */
lsaristo 8:12d780f7443e 7
lsaristo 8:12d780f7443e 8 #ifndef _PROJECT_H
lsaristo 8:12d780f7443e 9 #define _PROJECT_H
lsaristo 8:12d780f7443e 10
lsaristo 8:12d780f7443e 11 #include <stdio.h>
lsaristo 8:12d780f7443e 12 #include "mbed.h"
lsaristo 8:12d780f7443e 13 #include "m3pi.h"
lsaristo 8:12d780f7443e 14 #define TURN_SPEED 0.25
lsaristo 8:12d780f7443e 15 #define DRIVE_SPEED 0.5
lsaristo 8:12d780f7443e 16 #define ERR_SUCCESS 0
lsaristo 8:12d780f7443e 17 #define ERR_FAILURE 1
lsaristo 8:12d780f7443e 18
lsaristo 8:12d780f7443e 19
lsaristo 8:12d780f7443e 20 /**
lsaristo 8:12d780f7443e 21 * @brief Driver forward.
lsaristo 8:12d780f7443e 22 *
lsaristo 8:12d780f7443e 23 * @param[in] amt Amount to drive forward.
lsaristo 8:12d780f7443e 24 * @param[in] spd Drive speed.
lsaristo 8:12d780f7443e 25 * @return Success or failure.
lsaristo 8:12d780f7443e 26 */
lsaristo 8:12d780f7443e 27 int forward(float amt, float spd);
lsaristo 8:12d780f7443e 28
lsaristo 8:12d780f7443e 29 /**
lsaristo 8:12d780f7443e 30 * @brief Drive backward.
lsaristo 8:12d780f7443e 31 *
lsaristo 8:12d780f7443e 32 * @param[in] amt Amount to drive backward.
lsaristo 8:12d780f7443e 33 * @param[in] spd Drive speed.
lsaristo 8:12d780f7443e 34 * @return Success or failure.
lsaristo 8:12d780f7443e 35 */
lsaristo 8:12d780f7443e 36 int backward(float amt, float spd);
lsaristo 8:12d780f7443e 37
lsaristo 8:12d780f7443e 38 /**
lsaristo 8:12d780f7443e 39 * @brief Turn right.
lsaristo 8:12d780f7443e 40 *
lsaristo 8:12d780f7443e 41 * @param[in] deg Desired final turn angle from starting position.
lsaristo 8:12d780f7443e 42 * @param[in] spd Desired turning speed.
lsaristo 8:12d780f7443e 43 * @return Success or failure.
lsaristo 8:12d780f7443e 44 */
lsaristo 8:12d780f7443e 45 int right(float deg);
lsaristo 8:12d780f7443e 46
lsaristo 8:12d780f7443e 47 /**
lsaristo 8:12d780f7443e 48 * @brief Turn left.
lsaristo 8:12d780f7443e 49 *
lsaristo 8:12d780f7443e 50 * @param[in] deg Desired final turn angle from starting position.
lsaristo 8:12d780f7443e 51 * @param[in] spd Desired turning speed.
lsaristo 8:12d780f7443e 52 * @return Success or failure.
lsaristo 8:12d780f7443e 53 */
lsaristo 8:12d780f7443e 54 int left (float deg);
lsaristo 8:12d780f7443e 55
lsaristo 8:12d780f7443e 56 /**
lsaristo 8:12d780f7443e 57 * @brief Controller decision logic.
lsaristo 8:12d780f7443e 58 *
lsaristo 8:12d780f7443e 59 * Decide what to do next based on the status of the drawing so far.
lsaristo 8:12d780f7443e 60 *
lsaristo 8:12d780f7443e 61 */
lsaristo 8:12d780f7443e 62 void next_action();
lsaristo 8:12d780f7443e 63
lsaristo 8:12d780f7443e 64 /**
lsaristo 8:12d780f7443e 65 * @brief Print a formatted message to the LCD
lsaristo 8:12d780f7443e 66 */
lsaristo 8:12d780f7443e 67 void pretty_print(char* msg);
lsaristo 8:12d780f7443e 68
lsaristo 8:12d780f7443e 69
lsaristo 8:12d780f7443e 70
lsaristo 8:12d780f7443e 71 #endif