Rev 157 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 157 | Rev 162 | ||
---|---|---|---|
Line 8... | Line 8... | ||
8 | int ServoValue = 0; |
8 | int ServoValue = 0; |
9 | //Salvo 8.9.2007 |
9 | //Salvo 8.9.2007 |
10 | volatile uint8_t Kompass_Neuer_Wert= 0; |
10 | volatile uint8_t Kompass_Neuer_Wert= 0; |
11 | volatile unsigned int Kompass_Value_Old = 0; |
11 | volatile unsigned int Kompass_Value_Old = 0; |
12 | // Salvo End |
12 | // Salvo End |
- | 13 | //Salvo 21.9.2007 |
|
- | 14 | short unsigned int Kompass_present= 0; //>0 bedeutet dass der Kompass vorhanden ist |
|
- | 15 | // Salvo End |
|
13 | enum { |
16 | enum { |
14 | STOP = 0, |
17 | STOP = 0, |
15 | CK = 1, |
18 | CK = 1, |
16 | CK8 = 2, |
19 | CK8 = 2, |
17 | CK64 = 3, |
20 | CK64 = 3, |
Line 19... | Line 22... | ||
19 | CK1024 = 5, |
22 | CK1024 = 5, |
20 | T0_FALLING_EDGE = 6, |
23 | T0_FALLING_EDGE = 6, |
21 | T0_RISING_EDGE = 7 |
24 | T0_RISING_EDGE = 7 |
22 | }; |
25 | }; |
Line 23... | Line 26... | ||
23 | 26 | ||
24 | // Aenderungen von Peter Muehlenbrock ("Salvo") Stand 13.9.2007 |
27 | // Aenderungen von Peter Muehlenbrock ("Salvo") Stand 21.9.2007 |
25 | /* |
28 | /* |
26 | Driftkompensation fuer Gyros verbessert |
29 | Driftkompensation fuer Gyros verbessert |
27 | Linearsensor mit fixem neutralwert |
30 | Linearsensor mit fixem Neutralwert |
28 | Ersatzkompass abgeleitet aus magnetkompass und Giergyro fuer nahezu neigungsubhaengige Kompassfunktion |
31 | Ersatzkompass abgeleitet aus Magnetkompass und Giergyro fuer nahezu neigungsubhaengige Kompassfunktion |
29 | */ |
32 | */ |
30 | SIGNAL (SIG_OVERFLOW0) // 8kHz |
33 | SIGNAL (SIG_OVERFLOW0) // 8kHz |
31 | { |
34 | { |
32 | static unsigned char cnt_1ms = 1,cnt = 0; |
35 | static unsigned char cnt_1ms = 1,cnt = 0; |
Line 33... | Line 36... | ||
33 | // TCNT0 -= 250;//TIMER_RELOAD_VALUE; |
36 | // TCNT0 -= 250;//TIMER_RELOAD_VALUE; |
34 | 37 | ||
- | 38 | if(!cnt--) |
|
35 | if(!cnt--) |
39 | { |
36 | { |
40 | if (Kompass_present > 0) Kompass_present--; //Runterzaehlen. Wenn 0 ist der Kompass nicht vorhanden |
37 | cnt = 9; |
41 | cnt = 9; |
38 | cnt_1ms++; |
42 | cnt_1ms++; |
39 | cnt_1ms %= 2; |
43 | cnt_1ms %= 2; |
Line 58... | Line 62... | ||
58 | } |
62 | } |
59 | else |
63 | else |
60 | { |
64 | { |
61 | if((cntKompass) && (cntKompass < 4000)) |
65 | if((cntKompass) && (cntKompass < 4000)) |
62 | { |
66 | { |
63 | // Salvo Kompassoffset 30.8.2007 *********** |
67 | // Salvo Kompassoffset 30.8.2007 und 21.9.2007 *********** |
- | 68 | Kompass_present = 255; |
|
64 | Kompass_Value_Old = KompassValue; |
69 | Kompass_Value_Old = KompassValue; |
65 | KompassValue = cntKompass -KOMPASS_OFFSET; |
70 | KompassValue = cntKompass -KOMPASS_OFFSET; |
Line 66... | Line 71... | ||
66 | 71 | ||
67 | if (KompassValue < 0) |
72 | if (KompassValue < 0) |