CHENGQI YANG / MGC3130

Dependencies:   BufferedArray

Dependents:   NucleoMGC3130 i2c_master

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers CalibrationMode.h Source File

CalibrationMode.h

00001 #ifndef UK_AC_HERTS_SMARTLAB_MGC3130_CalibrationMode
00002 #define UK_AC_HERTS_SMARTLAB_MGC3130_CalibrationMode
00003 
00004 #include "Parameter.h"
00005 
00006 /** This parameter enables/disables the selected auto-calibration feature.
00007 *If a bit in Argument0 is set to ‘0’, the respective auto-calibration feature will be enabled.
00008 *If a bit in Argument0 is set to ‘1’ the respective auto-calibration feature will be disabled.
00009 */
00010 class CalibrationMode: public Parameter
00011 {
00012 public:
00013     CalibrationMode() {
00014         setRuntimeParameterID(0x80);
00015     }
00016 
00017     /// Enable/disable gesture-triggered calibration.
00018     void enableGestureTriggered(bool enable) {
00019         if (enable)
00020             value[4] |= 0xFE;
00021         else value[4] &= 0x01;
00022         value[8] |= 0x01;
00023     }
00024 
00025     /// Enable/disable negative calibration.
00026     void enableNegative(bool enable) {
00027         if (enable)
00028             value[4] |= 0xFD;
00029         else value[4] &= 0x02;
00030         value[8] |= 0x02;
00031     }
00032 
00033     /// Enable/disable idle calibration.
00034     void enableIdle(bool enable) {
00035         if (enable)
00036             value[4] |= 0xFB;
00037         else value[4] &= 0x04;
00038         value[8] |= 0x04;
00039     }
00040 
00041     /// Enable/disable invalidity value calibration, if values are completely out of range.
00042     void enableInvalidityValue(bool enable) {
00043         if (enable)
00044             value[4] |= 0xF7;
00045         else value[4] &= 0x08;
00046         value[8] |= 0x08;
00047     }
00048 
00049     /// Enable/disable calibration triggered by AFA
00050     void enableTriggeredAFA(bool enable) {
00051         if (enable)
00052             value[4] |= 0xEF;
00053         else value[4] &= 0x10;
00054         value[8] |= 0x10;
00055     }
00056 };
00057 
00058 #endif