gyro handler finished

This commit is contained in:
2020-12-23 20:17:39 +01:00
committed by Robin Mueller
parent e527aa52f6
commit efd0823da2
9 changed files with 345 additions and 51 deletions

View File

@ -2,6 +2,7 @@
#define MISSION_DEVICES_GYROL3GD20HANDLER_H_
#include <fsfw/devicehandlers/DeviceHandlerBase.h>
#include "devicedefinitions/GyroL3GD20Definitions.h"
/**
* @brief Device Handler for the L3GD20H gyroscope sensor
@ -40,8 +41,9 @@ protected:
LocalDataPoolManager &poolManager) override;
private:
L3GD20H::GyroPrimaryDataset dataset;
enum InternalState {
enum class InternalState {
STATE_NONE,
STATE_CONFIGURE,
STATE_NORMAL
@ -49,6 +51,17 @@ private:
InternalState internalState = InternalState::STATE_NONE;
bool commandExecuted = false;
uint8_t statusReg = 0;
uint8_t ctrlReg1Value = L3GD20H::CTRL_REG_1_VAL;
uint8_t ctrlReg2Value = L3GD20H::CTRL_REG_2_VAL;
uint8_t ctrlReg3Value = L3GD20H::CTRL_REG_3_VAL;
uint8_t ctrlReg4Value = L3GD20H::CTRL_REG_4_VAL;
uint8_t ctrlReg5Value = L3GD20H::CTRL_REG_5_VAL;
uint8_t commandBuffer[L3GD20H::READ_LEN + 1];
float scaleFactor = static_cast<float>(L3GD20H::RANGE_DPS_00) / INT16_MAX;
};