Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 50 → Rev 51

/branches/V0.60_GPS_BETA_martosi/gps_ubx.h
0,0 → 1,71
//------------------------------------------------------------------------------
// _ _
// | | | |
// ___ _ __ ___ ___ _ _ ___| |_ ___ ___| |__
// / _ \ '_ ` _ \/ __| | | / __| __/ _ \/ __| '_ \.
// | __/ | | | | \__ \ |_| \__ \ || __/ (__| | | |
// \___|_| |_| |_|___/\__, |___/\__\___|\___|_| |_|
// __/ |
// |___/ Engineering
//
// Filename: gps_ubx.h
// Description:
//
// Author: Martin Steppuhn
// History: 08.06.2007 Initial version
//
//------------------------------------------------------------------------------
 
#ifndef GPS_UBX_H
#define GPS_UBX_H
 
/**** Includes ****************************************************************/
 
#include "std_c.h"
 
/**** Preprocessing directives (#define) **************************************/
 
/**** Type definitions (typedef) **********************************************/
 
typedef struct ubx_struct
{
bool update;
 
uint8 msg_class;
uint8 msg_id;
uint8 length;
uint8 data[256];
};
 
typedef struct nav_sol_struct
{
uint8 update;
 
uint32 itow; // Time
uint8 gpsfix; // GPSfix
int32 ecef_x; // cm ECEF X coordinate
int32 ecef_y; // cm ECEF Y coordinate
int32 ecef_z; // cm ECEF Z coordinate
uint32 pacc; // cm 3D Position Accuracy Estimate
int32 ecefvx; // cm/s ECEF X velocity
int32 ecefvy; // cm/s ECEF Y velocity
int32 ecefvz; // cm/s ECEF Z velocity
uint32 sacc; // cm/s Speed Accuracy Estimate
uint16 pdop; // Position DOP
 
uint8 numsv; // Number of SVs used in Nav Solution
};
 
/**** Global constants (extern) ***********************************************/
 
/**** Global variables (extern) ***********************************************/
 
struct ubx_struct ubx;
struct nav_sol_struct nav_sol;
 
/**** Global function prototypes **********************************************/
 
extern void ubx_push(uint8 c);
extern void ubx_decode(struct ubx_struct *ubx);
 
#endif