#ifndef __app_ImuCalibration_h__
#define __app_ImuCalibration_h__
#include <stdbool.h>
#include <stdint.h>
#include <string.h>
#include "sdk_common.h"
#include "SEGGER_RTT.h"
#include "usr_config.h"

enum{
	ImuCal_init,
	ImuCal_GetData,
	ImuCal_Analyze,
	ImuCal_finish,
	ImuCal_error,
  ImuCal_quiet,
};

extern char calibration_printfbuf[256];

#define Mahony_PRINT(...) send_ANO(0,(unsigned char*)calibration_printfbuf,sprintf(calibration_printfbuf,__VA_ARGS__))

void ImuCalibration_pcs(short* Acc, short* Gyr, short* Mag);
uint8_t ImuCalibration_GetState(void);
void ImuCalibration_SetState(uint8_t _state);
void send_ANO(unsigned char fun, unsigned char* p, int len);

#endif
