Rev 242 | Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
241 | killagreg | 1 | #ifndef __MK3MAG_H |
2 | #define __MK3MAG_H |
||
3 | |||
4 | typedef struct |
||
5 | { |
||
6 | u8 Major; |
||
7 | u8 Minor; |
||
8 | u8 Patch; |
||
9 | u8 Compatible; |
||
10 | } __attribute__((packed)) MK3MAG_Version_t; |
||
11 | |||
12 | typedef struct |
||
13 | { |
||
14 | s16 X; |
||
15 | s16 Y; |
||
16 | s16 Z; |
||
17 | } __attribute__((packed)) MK3MAG_MagVector_t; |
||
18 | |||
19 | typedef struct |
||
20 | { |
||
21 | s16 Nick; |
||
22 | s16 Roll; |
||
23 | } __attribute__((packed)) MK3MAG_WriteAttitude_t; |
||
24 | |||
25 | typedef struct |
||
26 | { |
||
27 | u8 CalByte; |
||
28 | u8 Dummy1; |
||
29 | u8 Dummy2; |
||
30 | } __attribute__((packed)) MK3MAG_Cal_t; |
||
31 | |||
32 | typedef struct |
||
33 | { |
||
34 | s16 Heading; |
||
35 | } __attribute__((packed)) MK3MAG_Heading_t; |
||
36 | |||
37 | |||
38 | #define MK3MAG_CMD_VERSION 0x01 |
||
39 | #define MK3MAG_CMD_READ_MAGVECT 0x02 |
||
40 | #define MK3MAG_CMD_READ_HEADING 0x03 |
||
41 | #define MK3MAG_CMD_WRITE_CAL 0x04 |
||
42 | |||
43 | extern volatile MK3MAG_Heading_t MK3MAG_Heading; |
||
44 | extern volatile MK3MAG_MagVector_t MK3MAG_MagVector; |
||
45 | extern volatile MK3MAG_Version_t MK3MAG_Version; |
||
46 | |||
47 | void MK3MAG_Init(void); |
||
48 | void MK3MAG_SendCommand(u8 command); |
||
49 | void MK3MAG_GetVersion(void); |
||
50 | void MK3MAG_UpdateCompass(void); |
||
51 | |||
52 | #endif // MK3MAG_H |