Subversion Repositories FlightCtrl

Rev

Rev 153 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
143 salvo 1
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2
// Peter Muehlenbrock 
3
// Definitionen fuer Modul GPS
4
 
5
// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 ingob 6
extern signed int GPS_Nick;
7
extern signed int GPS_Roll;
8
extern void GPS_Neutral(void);
143 salvo 9
 
10
extern void Get_Ublox_Msg(uint8_t  rx) ;
156 salvo 11
//extern short int Get_GPS_data(void);
12
extern short int Get_Rel_Position(void);
13
extern void GPS_Save_Home(void);
143 salvo 14
 
15
typedef struct {
16
        unsigned long   utm_itow;       // time of week
17
        long                    utm_east;       // UTM Ost in cm  
18
        long                    utm_north;  // UTM Nord in cm    
19
        long                    utm_alt;        // hoehe in cm
20
        uint8_t                 utm_zone;       // 
21
        uint8_t                 utm_hem;        // Hemisphere Indicator 
22
        uint8_t                 status;         // 0: kein gueltiges Paket 1: alles ok
23
} NAV_POSUTM_t;
24
 
25
typedef struct {
26
        unsigned long   itow;   // time of week
27
        uint8_t                 gpsfix_type;// 3=3D Fix  
28
        uint8_t                 nav_status_flag;
29
        uint8_t                 nav_diff_status;
30
        uint8_t                 nav_resevd;
31
        long                    nav_tff;  // Time to First Fix in ms    
32
        long                    nav_msss;       // ms since startup
33
        uint8_t                 status;         // 0: kein gueltiges Paket 1: alles ok
34
} NAV_STATUS_t;
35
 
36
typedef struct {
37
        unsigned long   itow;            
38
        long                    speed_n;                // in cm/s  
39
        long                    speed_e;                // in cm/s  
40
        long                    speed_alt;              // in cm/s   
41
        unsigned long   speed_3d;       // in cm/s   
42
        unsigned long   speed_gnd;      // V ueber Grund in cm/s   
43
        long                    heading;        // Richtung in deg/10000 
44
        unsigned long   sacc;           // Speed Genauigkeit in cm/s  
45
        unsigned long   cacc;           // Richtungsgenauigkeit in deg 
46
        uint8_t                 status;         // 0: kein gueltiges Paket 1: alles ok  
47
} NAV_VELNED_t;
48
 
49
 
50
typedef struct {
51
        long                    utm_east;       // UTM Ost in 10 cm  
52
        long                    utm_north;  // UTM Nord in 10 cm    
53
        long                    utm_alt;        // hoehe in 10 cm
54
        unsigned long   speed_gnd;      // V ueber Grund in 10cm/s  
55
        unsigned                heading;        // Richtung in Grad   
56
        uint8_t                 status;         // 0: keine gueltigen Daten 1: alles ok
57
 
156 salvo 58
} GPS_ABS_POSITION_t;
143 salvo 59
 
60
 
156 salvo 61
typedef struct { // Struktur fuer Relative GPS Daten (bezogen z.B. auf Home Position)
62
        int                             utm_east;       // UTM Ost in m  
63
        int                             utm_north;  // UTM Nord in m    
64
        uint8_t                 status;         // 0: keine gueltigen Daten 1: alles ok
143 salvo 65
 
156 salvo 66
} GPS_REL_POSITION_t;
67
 
68
 
69
extern GPS_ABS_POSITION_t gps_act_position;
70
extern GPS_ABS_POSITION_t gps_home_position;
71
extern GPS_REL_POSITION_t gps_rel_act_position;
143 salvo 72
extern unsigned int cnt0,cnt1,cnt2;