Quadrirotor

Dependencies:   CommonTypes ESC Matrix PID Servo kalman mbed-rtos mbed

Fork of Nucleo_MPU_9250 by Alan Huchin Herrera

Committer:
AlanHuchin
Date:
Tue Jun 26 18:24:45 2018 +0000
Revision:
0:89cf0851969b
hello

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AlanHuchin 0:89cf0851969b 1 /*
AlanHuchin 0:89cf0851969b 2 * SOURCE FILE : MathFuncs.h
AlanHuchin 0:89cf0851969b 3 *
AlanHuchin 0:89cf0851969b 4 * Definition of class MathFuncs.
AlanHuchin 0:89cf0851969b 5 *
AlanHuchin 0:89cf0851969b 6 */
AlanHuchin 0:89cf0851969b 7
AlanHuchin 0:89cf0851969b 8 #ifndef MathFuncsDefined
AlanHuchin 0:89cf0851969b 9
AlanHuchin 0:89cf0851969b 10 #define MathFuncsDefined
AlanHuchin 0:89cf0851969b 11
AlanHuchin 0:89cf0851969b 12 #include "Types.h"
AlanHuchin 0:89cf0851969b 13
AlanHuchin 0:89cf0851969b 14 /** Various useful maths related functions. */
AlanHuchin 0:89cf0851969b 15 class MathFuncs {
AlanHuchin 0:89cf0851969b 16
AlanHuchin 0:89cf0851969b 17 public :
AlanHuchin 0:89cf0851969b 18
AlanHuchin 0:89cf0851969b 19 /** Constrain a number to be between 2 values.
AlanHuchin 0:89cf0851969b 20 *
AlanHuchin 0:89cf0851969b 21 * @param x Number to constrain.
AlanHuchin 0:89cf0851969b 22 * @param min Minimum value.
AlanHuchin 0:89cf0851969b 23 * @param max Maximum value.
AlanHuchin 0:89cf0851969b 24 * @returns A number between min and max.
AlanHuchin 0:89cf0851969b 25 */
AlanHuchin 0:89cf0851969b 26 static Int16 Constrain( Int16 x, Int16 min, Int16 max ) {
AlanHuchin 0:89cf0851969b 27 if( x < min ) {
AlanHuchin 0:89cf0851969b 28 return min;
AlanHuchin 0:89cf0851969b 29 }
AlanHuchin 0:89cf0851969b 30 else if( x > max ) {
AlanHuchin 0:89cf0851969b 31 return max;
AlanHuchin 0:89cf0851969b 32 }
AlanHuchin 0:89cf0851969b 33 else {
AlanHuchin 0:89cf0851969b 34 return x;
AlanHuchin 0:89cf0851969b 35 }
AlanHuchin 0:89cf0851969b 36 }
AlanHuchin 0:89cf0851969b 37
AlanHuchin 0:89cf0851969b 38 };
AlanHuchin 0:89cf0851969b 39
AlanHuchin 0:89cf0851969b 40 #endif
AlanHuchin 0:89cf0851969b 41
AlanHuchin 0:89cf0851969b 42 /* END of MathFuncs.h */
AlanHuchin 0:89cf0851969b 43