Code for autonomous rover for Sparkfun AVC. DataBus won 3rd in 2012 and the same code was used on Troubled Child, a 1986 Jeep Grand Wagoneer to win 1st in 2014.
Dependencies: mbed Watchdog SDFileSystem DigoleSerialDisp
util.h
- Committer:
- shimniok
- Date:
- 2013-06-07
- Revision:
- 3:42f3821c4e54
- Parent:
- 2:fbc6e3cf3ed8
- Child:
- 18:c2f3df4ef5fe
File content as of revision 3:42f3821c4e54:
#ifndef __UTIL_H #define __UTIL_H /** Utility routines */ #define clamp360(x) clamp((x), 0, 360.0, false) #define clamp180(x) clamp((x), -180.0, 180.0, true) #ifndef M_PI #define M_PI 3.14159265358979323846 #endif /** * Clamp value between min and max. Specify which of the two are inclusive * @param v is the value to clamp * @param min is the minimum value, inclusive if flip==false, exclusive otherwise * @param max is the maximum value, inclusive if flip==true, exclusive otherwise * @param flip determines whether min or max is inclusive * @return the clamped value */ float clamp(float v, float min, float max, bool flip); /** Convert char to integer */ int ctoi(char c); /** Convert string to floating point */ double cvstof(char *s); /** Tokenize a string * @param s is the string to tokenize * @param max is the maximum number of characters * @param delim is the character delimiter on which to tokenize * @returns t is the pointer to the next token */ char *split(char *s, char *t, int max, char delim); #endif