Subversion Repositories FlightCtrl

Rev

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)