Rev 292 | Rev 338 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 292 | Rev 330 | ||
---|---|---|---|
1 | #ifndef _COMPASS_H |
1 | #ifndef _COMPASS_H |
2 | #define _COMPASS_H |
2 | #define _COMPASS_H |
3 | 3 | ||
4 | typedef struct |
4 | typedef struct |
5 | { |
5 | { |
6 | s16 X; |
6 | s16 X; |
7 | s16 Y; |
7 | s16 Y; |
8 | s16 Z; |
8 | s16 Z; |
9 | } __attribute__((packed)) s16vec_t; |
9 | } __attribute__((packed)) s16vec_t; |
10 | 10 | ||
11 | extern volatile s16vec_t MagVector; // current magnetic field vector |
11 | extern volatile s16vec_t MagVector; // current magnetic field vector |
12 | extern volatile s16 Compass_Heading; // current heading direction |
12 | extern volatile s16 Compass_Heading; // current heading direction |
13 | extern volatile u8 Compass_CalState; // current calibration state |
13 | extern volatile u8 Compass_CalState; // current calibration state |
- | 14 | extern s32 EarthMagneticField; |
|
- | 15 | extern s32 EarthMagneticInclination; |
|
- | 16 | extern s32 EarthMagneticFieldFiltered; |
|
- | 17 | extern u8 ErrorDisturbedEarthMagnetField; |
|
- | 18 | extern s16 Hx, Hy; |
|
14 | 19 | ||
15 | #define COMPASS_NONE 0 |
20 | #define COMPASS_NONE 0 |
16 | #define COMPASS_MK3MAG 1 |
21 | #define COMPASS_MK3MAG 1 |
17 | #define COMPASS_NCMAG 2 |
22 | #define COMPASS_NCMAG 2 |
18 | extern u8 Compass_Device; |
23 | extern u8 Compass_Device; |
19 | 24 | ||
20 | void Compass_Init(void); |
25 | void Compass_Init(void); |
21 | void Compass_Update(void); |
26 | void Compass_Update(void); |
22 | void Compass_CalcHeading(void); |
27 | void Compass_CalcHeading(void); |
23 | void Compass_SetCalState(u8 CalState); |
28 | void Compass_SetCalState(u8 CalState); |
24 | void Compass_UpdateCalState(void); |
29 | void Compass_UpdateCalState(void); |
25 | 30 | ||
26 | #endif // _COMPASS_H |
31 | #endif // _COMPASS_H |
27 | 32 |