Paparazzi UAS  v5.8.2_stable-0-g6260b7c
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
gps_ubx.c File Reference
#include "subsystems/gps.h"
#include "subsystems/abi.h"
#include "led.h"
#include "ubx_protocol.h"
+ Include dependency graph for gps_ubx.c:

Go to the source code of this file.

Macros

#define UNINIT   0
 Includes macros generated from ubx.xml. More...
 
#define GOT_SYNC1   1
 
#define GOT_SYNC2   2
 
#define GOT_CLASS   3
 
#define GOT_ID   4
 
#define GOT_LEN1   5
 
#define GOT_LEN2   6
 
#define GOT_PAYLOAD   7
 
#define GOT_CHECKSUM1   8
 
#define GPS_UBX_ERR_NONE   0
 
#define GPS_UBX_ERR_OVERRUN   1
 
#define GPS_UBX_ERR_MSG_TOO_LONG   2
 
#define GPS_UBX_ERR_CHECKSUM   3
 
#define GPS_UBX_ERR_UNEXPECTED   4
 
#define GPS_UBX_ERR_OUT_OF_SYNC   5
 
#define UTM_HEM_NORTH   0
 
#define UTM_HEM_SOUTH   1
 
#define gps_ubx_ucenter_event()   {}
 

Functions

void gps_impl_init (void)
 GPS initialization. More...
 
void gps_ubx_read_message (void)
 
void gps_ubx_parse (uint8_t c)
 
static void ubx_send_1byte (struct link_device *dev, uint8_t byte)
 
void ubx_header (struct link_device *dev, uint8_t nav_id, uint8_t msg_id, uint16_t len)
 
void ubx_trailer (struct link_device *dev)
 
void ubx_send_bytes (struct link_device *dev, uint8_t len, uint8_t *bytes)
 
void ubx_send_cfg_rst (struct link_device *dev, uint16_t bbr, uint8_t reset_mode)
 
void gps_ubx_msg (void)
 

Variables

struct GpsUbx gps_ubx
 

Macro Definition Documentation

#define GOT_CHECKSUM1   8

Definition at line 45 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GOT_CLASS   3

Definition at line 40 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GOT_ID   4

Definition at line 41 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GOT_LEN1   5

Definition at line 42 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GOT_LEN2   6

Definition at line 43 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GOT_PAYLOAD   7

Definition at line 44 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GOT_SYNC1   1

Definition at line 38 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GOT_SYNC2   2

Definition at line 39 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GPS_UBX_ERR_CHECKSUM   3

Definition at line 51 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GPS_UBX_ERR_MSG_TOO_LONG   2

Definition at line 50 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GPS_UBX_ERR_NONE   0

Definition at line 48 of file gps_ubx.c.

Referenced by gps_impl_init().

#define GPS_UBX_ERR_OUT_OF_SYNC   5

Definition at line 53 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GPS_UBX_ERR_OVERRUN   1

Definition at line 49 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define GPS_UBX_ERR_UNEXPECTED   4

Definition at line 52 of file gps_ubx.c.

Referenced by gps_ubx_parse().

#define gps_ubx_ucenter_event (   void)    {}

Definition at line 318 of file gps_ubx.c.

Referenced by gps_ubx_msg().

#define UNINIT   0

Includes macros generated from ubx.xml.

Definition at line 37 of file gps_ubx.c.

Referenced by gps_impl_init(), and gps_ubx_parse().

#define UTM_HEM_NORTH   0

Definition at line 55 of file gps_ubx.c.

#define UTM_HEM_SOUTH   1

Definition at line 56 of file gps_ubx.c.

Referenced by gps_ubx_read_message().

Function Documentation

void gps_impl_init ( void  )

GPS initialization.

GPS model specific init implementation.

Definition at line 64 of file gps_ubx.c.

References GpsUbx::error_cnt, GpsUbx::error_last, FALSE, gps_ubx, GPS_UBX_ERR_NONE, GpsUbx::have_velned, GpsUbx::msg_available, GpsUbx::status, and UNINIT.

void ubx_header ( struct link_device dev,
uint8_t  nav_id,
uint8_t  msg_id,
uint16_t  len 
)

Definition at line 283 of file gps_ubx.c.

References gps_ubx, link_device::periph, link_device::put_byte, GpsUbx::send_ck_a, GpsUbx::send_ck_b, and ubx_send_1byte().

+ Here is the call graph for this function:

static void ubx_send_1byte ( struct link_device dev,
uint8_t  byte 
)
static

Definition at line 276 of file gps_ubx.c.

References gps_ubx, link_device::periph, link_device::put_byte, GpsUbx::send_ck_a, and GpsUbx::send_ck_b.

Referenced by ubx_header(), and ubx_send_bytes().

+ Here is the caller graph for this function:

void ubx_send_bytes ( struct link_device dev,
uint8_t  len,
uint8_t bytes 
)

Definition at line 302 of file gps_ubx.c.

References ubx_send_1byte().

+ Here is the call graph for this function:

void ubx_send_cfg_rst ( struct link_device dev,
uint16_t  bbr,
uint8_t  reset_mode 
)

Definition at line 310 of file gps_ubx.c.

void ubx_trailer ( struct link_device dev)

Variable Documentation