version 1.0
Dependencies: CMSIS_DSP_401 GPS MPU9150_DMP PID QuaternionMath Servo mbed
Fork of SolarOnFoils_MainModule_20150518 by
Diff: systemVar.h
- Revision:
- 0:81b21910454e
- Child:
- 1:b4a0d63db637
diff -r 000000000000 -r 81b21910454e systemVar.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/systemVar.h Tue Jun 23 13:55:28 2015 +0000 @@ -0,0 +1,93 @@ +#ifndef SYSTEMVAR_H_INCLUDED +#define SYSTEMVAR_H_INCLUDED + +#include "mbed.h" +#include "string.h" +#include "Quaternion.h" + +//Solar on Foils display values +enum VALUE_t +{ +////////////////////////////////////////////////////////////////////////////////////// +// system measured values // +////////////////////////////////////////////////////////////////////////////////////// + _ROLL = 0, // roll + _PITCH, // pitch + _PHEIGHT, // portside height + _SHEIGHT, // starboard height + _PCURRENT, // portside current + _SCURRENT, // starboard current + _SPEED, // speed +////////////////////////////////////////////////////////////////////////////////////// +// system variables // +////////////////////////////////////////////////////////////////////////////////////// + _MAXROLL, // variable max roll + _MINPITCH, // variable min pitch + _MAXPITCH, // variable max pitch + _TAKEOFFSPEED, // variable take off speed + _HEIGHTFOILBORNE, // variable flight height foilborne + _HEIGHTFOILASSIST, // variable flight height foil assist + _AOAFOILASSIST // variable AOA foil assist +}; + +class SystemVar +{ + private: + // variable + + char cValue[4]; + + VALUE_t value; + + uint32_t uiCounter; + uint32_t uiRoll[2]; + uint32_t uiPitch[2]; + uint32_t uiPHeight; + uint32_t uiSHeight; + uint32_t uiPCurrent; + uint32_t uiSCurrent; + uint32_t uiSpeed; + uint32_t uiVarMaxRoll; + uint32_t uiVarMinPitch; + uint32_t uivVarMaxPitch; + uint32_t uivVarTakeOffSpeed; + uint32_t uivVarHeightFoilBorne; + uint32_t uivVarHeightFoilAssist; + uint32_t uivVarAOAFoilAssist; + + bool bError; + + public: + // Constructor + SystemVar(); + // Destructor + ~SystemVar(); + + // Gets + char* getValue(void); + int iGetRollPolarity(void); + int iGetPitchPolarity(void); + + // Sets + void vSetRoll(Quaternion); + void vSetPitch(Quaternion); + void vSetPHeight(uint32_t); + void vSetSHeight(uint32_t); + void vSetPCurrent(uint32_t); + void vSetSCurrent(uint32_t); + void vSetSpeed(uint32_t); + // Set variables + void vVarMaxRoll(uint32_t); + void vVarMinPitch(uint32_t); + void vVarMaxPitch(uint32_t); + void vVarTakeOffSpeed(uint32_t); + void vVarHeightFoilBorne(uint32_t); + void vVarHeightFoilAssist(uint32_t); + void vVarAOAFoilAssist(uint32_t); + + // Other functions + void itoa( uint32_t , char *); + void cShowValue(VALUE_t); + +}; +#endif