diff options
Diffstat (limited to 'sensors/akmdfs/AKFS_Compass.h')
-rw-r--r-- | sensors/akmdfs/AKFS_Compass.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/sensors/akmdfs/AKFS_Compass.h b/sensors/akmdfs/AKFS_Compass.h new file mode 100644 index 0000000..aa59285 --- /dev/null +++ b/sensors/akmdfs/AKFS_Compass.h @@ -0,0 +1,84 @@ +/****************************************************************************** + * + * Copyright (C) 2012 Asahi Kasei Microdevices Corporation, Japan + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + ******************************************************************************/ +#ifndef AKFS_INC_COMPASS_H +#define AKFS_INC_COMPASS_H + +#include "AKFS_Common.h" +#include "AKFS_CSpec.h" + +/****************************************/ +/* Include files for AK8975 library. */ +/****************************************/ +#include "AKFS_AK8975.h" +#include "AKFS_Configure.h" +#include "AKFS_AOC.h" +#include "AKFS_Device.h" +#include "AKFS_Direction.h" +#include "AKFS_Math.h" +#include "AKFS_VNorm.h" + +/*** Constant definition ******************************************************/ + +/*** Type declaration *********************************************************/ +typedef struct _AKSENSOR_DATA{ + AKFLOAT x; + AKFLOAT y; + AKFLOAT z; + int8 status; +} AKSENSOR_DATA; + +/*! A parameter structure. */ +typedef struct _AK8975PRMS{ + /* Variables for Decomp8975. */ + AKFVEC mfv_hdata[AKFS_HDATA_SIZE]; + uint8vec mi_asa; + uint8 mi_st; + + /* Variables forAOC. */ + AKFS_AOC_VAR m_aocv; + + /* Variables for Magnetometer buffer. */ + AKFVEC mfv_hvbuf[AKFS_HDATA_SIZE]; + AKFVEC mfv_ho; + AKFVEC mfv_hs; + AKFS_PATNO m_hpat; + + /* Variables for Accelerometer buffer. */ + AKFVEC mfv_adata[AKFS_ADATA_SIZE]; + AKFVEC mfv_avbuf[AKFS_ADATA_SIZE]; + AKFVEC mfv_ao; + AKFVEC mfv_as; + + /* Variables for Direction. */ + int16 mi_hnaveD; + int16 mi_anaveD; + AKFLOAT mf_azimuth; + AKFLOAT mf_pitch; + AKFLOAT mf_roll; + + /* Variables for vector output */ + int16 mi_hnaveV; + int16 mi_anaveV; + AKFVEC mfv_hvec; + AKFVEC mfv_avec; + int16 mi_hstatus; + +} AK8975PRMS; + +#endif + |