Subversion Repositories FlightCtrl

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
700 killagreg 1
#ifndef _MM3_H
2
#define _MM3_H
3
 
4
#include <inttypes.h>
5
 
6
typedef struct
7
{
8
        int8_t X_off;
9
        int8_t Y_off;
10
        int8_t Z_off;
11
        int16_t X_range;
12
        int16_t Y_range;
13
        int16_t Z_range;
14
} MM3_calib_t;
15
 
16
extern MM3_calib_t MM3_calib;
17
 
741 killagreg 18
// Initialization of the MM3 communication
726 killagreg 19
void MM3_Init(void);
754 killagreg 20
 
741 killagreg 21
// should be called cyclic to get actual compass reading
726 killagreg 22
void MM3_Update(void);
741 killagreg 23
// this function calibrates the MM3
24
// and returns immediately if the communication to the MM3-Board is broken.
726 killagreg 25
void MM3_Calibrate(void);
754 killagreg 26
 
741 killagreg 27
// calculates the current compass heading in a range from 0 to 360 deg.
754 killagreg 28
// returns -1 if no compass data are available
726 killagreg 29
int16_t MM3_Heading(void);
700 killagreg 30
 
31
#endif //_MM3_H
32