constdT for gyro fliter

dTGyro
This commit is contained in:
borisbstyle 2015-08-15 15:48:38 +02:00
parent 6f13859345
commit 00ae128e3d
2 changed files with 6 additions and 2 deletions

View File

@ -8,7 +8,6 @@
typedef struct filterStatePt1_s { typedef struct filterStatePt1_s {
float state; float state;
float RC; float RC;
float constdT;
} filterStatePt1_t; } filterStatePt1_t;
float filterApplyPt1(float input, filterStatePt1_t *filter, uint8_t f_cut, float dt); float filterApplyPt1(float input, filterStatePt1_t *filter, uint8_t f_cut, float dt);

View File

@ -689,10 +689,15 @@ void processRx(void)
// Gyro Low Pass // Gyro Low Pass
void filterGyro(void) { void filterGyro(void) {
int axis; int axis;
static float dTGyro;
static filterStatePt1_t gyroADCState[XYZ_AXIS_COUNT]; static filterStatePt1_t gyroADCState[XYZ_AXIS_COUNT];
if (!dTGyro) {
dTGyro = (float)targetLooptime * 0.000001f;
}
for (axis = 0; axis < XYZ_AXIS_COUNT; axis++) { for (axis = 0; axis < XYZ_AXIS_COUNT; axis++) {
gyroADC[axis] = filterApplyPt1(gyroADC[axis], &gyroADCState[axis], currentProfile->pidProfile.gyro_cut_hz, dT); gyroADC[axis] = filterApplyPt1(gyroADC[axis], &gyroADCState[axis], currentProfile->pidProfile.gyro_cut_hz, dTGyro);
} }
} }
void getArmingChannel(modeActivationCondition_t *modeActivationConditions, uint8_t *armingChannel) { void getArmingChannel(modeActivationCondition_t *modeActivationConditions, uint8_t *armingChannel) {