52 uint8_t iNVMBuffer[256];
58 for (i = 0; i < 256; i++)
59 *(pDst++) = *(pSrc++);
66 pSrc = (
uint8 *) &itmp32;
68 for (i = 0; i < 4; i++)
69 *(pDst++) = *(pSrc++);
72 for (i = 0; i < 64; i++)
73 *(pDst++) = *(pSrc++);
77 #endif // if F_USING_MAG 83 #if F_USING_GYRO && (F_9DOF_GBY_KALMAN || F_6DOF_GY_KALMAN) 86 uint8_t iNVMBuffer[256];
92 for (i = 0; i < 256; i++)
93 *(pDst++) = *(pSrc++);
100 pSrc = (
uint8 *) &itmp32;
102 for (i = 0; i < 4; i++)
103 *(pDst++) = *(pSrc++);
106 #if F_9DOF_GBY_KALMAN 107 pSrc = (
uint8 *) sfg->SV_9DOF_GBY_KALMAN.fbPl;
109 pSrc = (
uint8 *) sfg->SV_6DOF_GY_KALMAN.fbPl;
111 for (i = 0; i < 12; i++)
112 *(pDst++) = *(pSrc++);
123 uint8_t *pSrc, *pDst;
125 uint8_t iNVMBuffer[256];
131 for (i = 0; i < 256; i++)
132 *(pDst++) = *(pSrc++);
138 pSrc = (
uint8 *) &itmp32;
140 for (i = 0; i < 4; i++)
141 *(pDst++) = *(pSrc++);
144 pSrc = (
uint8 *) &(sfg->AccelCal);
145 for (i = 0; i < 84; i++)
146 *(pDst++) = *(pSrc++);
156 uint8_t *pSrc, *pDst;
158 uint8_t iNVMBuffer[256];
163 for (i = 0; i < 256; i++)
164 *(pDst++) = *(pSrc++);
177 uint8_t *pSrc, *pDst;
179 uint8_t iNVMBuffer[256];
184 for (i = 0; i < 256; i++)
185 *(pDst++) = *(pSrc++);
198 uint8_t *pSrc, *pDst;
200 uint8_t iNVMBuffer[256];
205 for (i = 0; i < 256; i++)
206 *(pDst++) = *(pSrc++);
void EraseGyroCalibrationFromNVM(void)
#define CALIBRATION_NVM_ADDR
start of final 4K (sector size) of 1M flash
void SaveMagCalibrationToNVM(SensorFusionGlobals *sfg)
middleware driver for NVM on Kinetis devices
void SaveAccelCalibrationToNVM(SensorFusionGlobals *sfg)
void EraseMagCalibrationFromNVM(void)
The top level fusion structure.
void SaveGyroCalibrationToNVM(SensorFusionGlobals *sfg)
byte NVM_SetBlockFlash(uint8_t *Source, uint32_t Dest, uint16_t Count)
#define F_6DOF_GY_KALMAN
6DOF accel and gyro (Kalman) algorithm selector - 0x2000 to include, 0x0000 otherwise ...
The sensor_fusion.h file implements the top level programming interface.
Provides functions to store calibration to NVM.
struct MagCalibration MagCal
mag cal storage
void EraseAccelCalibrationFromNVM(void)