![]() |
ISF
2.1
Intelligent Sensing Framework for Kinetis with Processor Expert
|
#include "MKL25Z4.h"
#include "math.h"
#include "PE_Types.h"
#include "fusion.h"
#include "fusion_config.h"
#include "fusion_exec.h"
Go to the source code of this file.
Macros | |
#define | START_TIMER(x) x = SYST_CVR & 0x00FFFFFF |
#define | STOP_TIMER(x) x -= SYST_CVR & 0x00FFFFFF; if (x < 0) x += SYST_RVR |
Functions | |
void | Fusion_Init (fusion_state_t *pState) |
int8 | Fusion_Run (fusion_state_t *pState, fusion_algorithmConfig_t *pAlgorithmConfig) |
void | MagCal_Run (fusion_state_t *pState) |
#define START_TIMER | ( | x | ) | x = SYST_CVR & 0x00FFFFFF |
Definition at line 45 of file fusion_exec.c.
Referenced by Fusion_Run().
#define STOP_TIMER | ( | x | ) | x -= SYST_CVR & 0x00FFFFFF; if (x < 0) x += SYST_RVR |
Definition at line 46 of file fusion_exec.c.
Referenced by Fusion_Run().
void Fusion_Init | ( | fusion_state_t * | pState | ) |
Definition at line 49 of file fusion_exec.c.
References fusion_state_t::algorithmToUse, fInitMagCalibration(), fusion_state_t::loopcounter, Q3, Q3G, Q3M, Q6AG, Q6MA, Q9, SV_3DOF_G_BASIC::resetflag, SV_3DOF_B_BASIC::resetflag, SV_3DOF_Y_BASIC::resetflag, SV_6DOF_GB_BASIC::resetflag, SV_6DOF_GY_KALMAN::resetflag, SV_9DOF_GBY_KALMAN::resetflag, fusion_state_t::thisMagBuffer, fusion_state_t::thisMagCal, fusion_state_t::thisSV_3DOF_B_BASIC, fusion_state_t::thisSV_3DOF_G_BASIC, fusion_state_t::thisSV_3DOF_Y_BASIC, fusion_state_t::thisSV_6DOF_GB_BASIC, fusion_state_t::thisSV_6DOF_GY_KALMAN, and fusion_state_t::thisSV_9DOF_GBY_KALMAN.
Referenced by fsl_fusion_task(), and fsl_fusion_virt_3D_orient_PeriodicCallback().
int8 Fusion_Run | ( | fusion_state_t * | pState, |
fusion_algorithmConfig_t * | pAlgorithmConfig | ||
) |
Definition at line 99 of file fusion_exec.c.
References fusion_state_t::algorithmToUse, fInvertMagCal(), fRun_1DOF_P_BASIC(), fRun_3DOF_B_BASIC(), fRun_3DOF_G_BASIC(), fRun_3DOF_Y_BASIC(), fRun_6DOF_GB_BASIC(), fRun_6DOF_GY_KALMAN(), fRun_9DOF_GBY_KALMAN(), GYRO_OVERSAMPLE_RATIO, MagCalibration::iCalInProgress, MagneticBuffer::iMagBufferCount, MagCalibration::iMagCalHasRun, INTERVAL10CAL, INTERVAL4CAL, INTERVAL7CAL, iUpdateMagnetometerBuffer(), fusion_state_t::loopcounter, MINMEASUREMENTS10CAL, MINMEASUREMENTS4CAL, MINMEASUREMENTS7CAL, PARALLELNOTSEQUENTIAL, Q3, Q3G, Q3M, Q6AG, Q6MA, Q9, START_TIMER, STOP_TIMER, SV_3DOF_G_BASIC::systick, SV_3DOF_B_BASIC::systick, SV_3DOF_Y_BASIC::systick, SV_6DOF_GB_BASIC::systick, SV_6DOF_GY_KALMAN::systick, SV_9DOF_GBY_KALMAN::systick, fusion_state_t::thisAccel, THISCOORDSYSTEM, fusion_state_t::thisGyro, fusion_state_t::thisMag, fusion_state_t::thisMagBuffer, fusion_state_t::thisMagCal, fusion_state_t::thisSV_3DOF_B_BASIC, fusion_state_t::thisSV_3DOF_G_BASIC, fusion_state_t::thisSV_3DOF_Y_BASIC, fusion_state_t::thisSV_6DOF_GB_BASIC, fusion_state_t::thisSV_6DOF_GY_KALMAN, and fusion_state_t::thisSV_9DOF_GBY_KALMAN.
Referenced by fsl_fusion_virt_3D_orient_PeriodicCallback().
void MagCal_Run | ( | fusion_state_t * | pState | ) |
Definition at line 257 of file fusion_exec.c.
References fRunMagCalibration(), fusion_state_t::thisMag, fusion_state_t::thisMagBuffer, and fusion_state_t::thisMagCal.
Referenced by fsl_MagCal_task().