Subversion Repositories FlightCtrl

Rev

Rev 108 | Blame | Last modification | View Log | RSS feed

// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Peter Muehlenbrock
// Definitionen fuer Modul GPS

// ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
extern signed int GPS_Nick;
extern signed int GPS_Roll;
extern void GPS_Neutral(void);

extern void Get_Ublox_Msg(uint8_t  rx) ;
extern void Get_GPS_data(void);

typedef struct {
        unsigned long   utm_itow;       // time of week
        long                    utm_east;       // UTM Ost in cm  
        long                    utm_north;  // UTM Nord in cm    
        long                    utm_alt;        // hoehe in cm
        uint8_t                 utm_zone;       //
        uint8_t                 utm_hem;        // Hemisphere Indicator
        uint8_t                 status;         // 0: kein gueltiges Paket 1: alles ok
} NAV_POSUTM_t;

typedef struct {
        unsigned long   itow;   // time of week
        uint8_t                 gpsfix_type;// 3=3D Fix  
        uint8_t                 nav_status_flag;
        uint8_t                 nav_diff_status;
        uint8_t                 nav_resevd;
        long                    nav_tff;  // Time to First Fix in ms    
        long                    nav_msss;       // ms since startup
        uint8_t                 status;         // 0: kein gueltiges Paket 1: alles ok
} NAV_STATUS_t;

typedef struct {
        unsigned long   itow;            
        long                    speed_n;                // in cm/s  
        long                    speed_e;                // in cm/s  
        long                    speed_alt;              // in cm/s  
        unsigned long   speed_3d;       // in cm/s  
        unsigned long   speed_gnd;      // V ueber Grund in cm/s  
        long                    heading;        // Richtung in deg/10000
        unsigned long   sacc;           // Speed Genauigkeit in cm/s  
        unsigned long   cacc;           // Richtungsgenauigkeit in deg
        uint8_t                 status;         // 0: kein gueltiges Paket 1: alles ok  
} NAV_VELNED_t;


typedef struct {
        long                    utm_east;       // UTM Ost in 10 cm  
        long                    utm_north;  // UTM Nord in 10 cm    
        long                    utm_alt;        // hoehe in 10 cm
        unsigned long   speed_gnd;      // V ueber Grund in 10cm/s  
        unsigned                heading;        // Richtung in Grad  
        uint8_t                 status;         // 0: keine gueltigen Daten 1: alles ok

} GPS_POSITION_t;



/*
extern NAV_VELNED_t actual_speed;
extern NAV_STATUS_t actual_status;
extern NAV_POSUTM_t actual_position;
*/

extern GPS_POSITION_t gps_act_position;
extern unsigned int cnt0,cnt1,cnt2;