Rev 233 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 233 | Rev 234 | ||
---|---|---|---|
1 | 1 | ||
2 | 2 | ||
3 | typedef struct |
3 | typedef struct |
4 | { |
4 | { |
5 | uint8_t STATE; |
5 | uint8_t STATE; |
6 | unsigned int DRDY; |
6 | unsigned int DRDY; |
7 | uint8_t AXIS; |
7 | uint8_t AXIS; |
8 | signed int x_axis; |
8 | signed int x_axis; |
9 | signed int y_axis; |
9 | signed int y_axis; |
10 | signed int z_axis; |
10 | signed int z_axis; |
11 | signed int NickGrad; |
11 | signed int NickGrad; |
12 | signed int RollGrad; |
12 | signed int RollGrad; |
13 | }MM3_struct; |
13 | }MM3_struct; |
14 | 14 | ||
15 | extern MM3_struct MM3; |
15 | extern MM3_struct MM3; |
16 | 16 | ||
17 | void init_spi(void); |
17 | void init_spi(void); |
18 | void MM3_timer0(void); |
18 | void MM3_timer0(void); |
19 | signed int MM3_heading(void); |
19 | signed int MM3_heading(void); |
20 | 20 | ||
21 | #define Int2Grad_Faktor 1024 |
21 | #define Int2Grad_Faktor 1024 |
22 | 22 | ||
23 | // Die Werte der Statemachine |
23 | // Die Werte der Statemachine |
24 | #define MM3_RESET 0 |
24 | #define MM3_RESET 0 |
25 | #define MM3_START_TRANSFER 1 |
25 | #define MM3_START_TRANSFER 1 |
26 | #define MM3_WAIT_DRDY 2 |
26 | #define MM3_WAIT_DRDY 2 |
27 | #define MM3_DRDY 3 |
27 | #define MM3_DRDY 3 |
28 | #define MM3_X_BYTE2 4 |
28 | #define MM3_X_BYTE2 4 |
29 | #define MM3_Y_BYTE2 5 |
29 | #define MM3_Y_BYTE2 5 |
30 | #define MM3_Z_BYTE2 6 |
30 | #define MM3_Z_BYTE2 6 |
31 | #define MM3_X 7 |
31 | #define MM3_X 7 |
32 | #define MM3_Y 8 |
32 | #define MM3_Y 8 |
33 | #define MM3_Z 9 |
33 | #define MM3_Z 9 |
34 | #define MM3_IDLE 255 |
34 | #define MM3_IDLE 255 |
35 | 35 | ||
36 | 36 | ||
37 | // Die Werte der Kompasskalibrierung |
37 | // Die Werte der Kompasskalibrierung |
38 | 38 | ||
39 | // RANGE: Maximaler Wert - minimaler Wert |
39 | // RANGE: Maximaler Wert - minimaler Wert |
40 | #define RANGE_X 1161 |
40 | #define RANGE_X 1161 |
41 | #define RANGE_Y 1209 |
41 | #define RANGE_Y 1209 |
42 | #define RANGE_Z 1276 |
42 | #define RANGE_Z 1276 |
43 | 43 | ||
44 | // OFFSET: Maximaler Wert + minimaler Wert |
44 | // OFFSET: (Maximaler Wert + minimaler Wert) / 2 |
45 | #define OFF_X -46 |
45 | #define OFF_X -46 |
46 | #define OFF_Y 52 |
46 | #define OFF_Y 52 |
47 | #define OFF_Z 25 |
47 | #define OFF_Z 25 |
48 | 48 | ||
49 | // z. Z. nicht verwendet |
49 | // z. Z. nicht verwendet |
50 | #define GAIN_X 16 |
50 | #define GAIN_X 16 |
51 | #define GAIN_Y 15 |
51 | #define GAIN_Y 15 |
52 | #define GAIN_Z 15 |
52 | #define GAIN_Z 15 |
53 | 53 |