Paparazzi UAS  v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
gps_furuno.c File Reference

GPS furuno based NMEA parser. More...

#include "modules/gps/gps.h"
#include "gps_nmea.h"
#include <stdio.h>
#include <string.h>
+ Include dependency graph for gps_furuno.c:

Go to the source code of this file.

Macros

#define GPS_FURUNO_SETTINGS_NB   18
 
#define GpsLinkDevice   (&(NMEA_GPS_LINK).device)
 

Functions

static bool nmea_parse_perdcrv (void)
 
void nmea_configure (void)
 Configure furuno GPS. More...
 
void nmea_parse_prop_init (void)
 
bool nmea_parse_prop_msg (void)
 

Variables

static const char * gps_furuno_settings [GPS_FURUNO_SETTINGS_NB]
 
static uint8_t furuno_cfg_cnt = 0
 

Detailed Description

GPS furuno based NMEA parser.

Definition in file gps_furuno.c.

Macro Definition Documentation

◆ GPS_FURUNO_SETTINGS_NB

#define GPS_FURUNO_SETTINGS_NB   18

Definition at line 34 of file gps_furuno.c.

◆ GpsLinkDevice

#define GpsLinkDevice   (&(NMEA_GPS_LINK).device)

Definition at line 60 of file gps_furuno.c.

Function Documentation

◆ nmea_configure()

void nmea_configure ( void  )

Configure furuno GPS.

The function to be called when a characted from the device is available.

Sets gps_nmea.is_configured to TRUE if all config msgs are sent.

Definition at line 66 of file gps_furuno.c.

References logger_uart_parse::crc, fd, furuno_cfg_cnt, gps_furuno_settings, GPS_FURUNO_SETTINGS_NB, gps_nmea, GpsLinkDevice, GpsNmea::is_configured, and nmea_calc_crc().

+ Here is the call graph for this function:

◆ nmea_parse_perdcrv()

bool nmea_parse_perdcrv ( void  )
static

Definition at line 104 of file gps_furuno.c.

References ecef_of_ned_vect_i(), GpsState::ecef_pos, GpsState::ecef_vel, gps_nmea, ltp_def_from_ecef_i(), GpsNmea::msg_buf, GpsState::ned_vel, nmea_read_until(), GpsNmea::state, NedCoor_i::x, and NedCoor_i::y.

Referenced by nmea_parse_prop_msg().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ nmea_parse_prop_init()

void nmea_parse_prop_init ( void  )

Definition at line 90 of file gps_furuno.c.

References furuno_cfg_cnt.

◆ nmea_parse_prop_msg()

bool nmea_parse_prop_msg ( void  )

Definition at line 96 of file gps_furuno.c.

References gps_nmea, GpsNmea::msg_buf, GpsNmea::msg_len, and nmea_parse_perdcrv().

+ Here is the call graph for this function:

Variable Documentation

◆ furuno_cfg_cnt

uint8_t furuno_cfg_cnt = 0
static

Definition at line 56 of file gps_furuno.c.

Referenced by nmea_configure(), and nmea_parse_prop_init().

◆ gps_furuno_settings

const char* gps_furuno_settings[GPS_FURUNO_SETTINGS_NB]
static
Initial value:
= {
"PERDAPI,FIRSTFIXFILTER,STRONG",
"PERDAPI,FIXPERSEC,5",
"PERDAPI,FIXMASK,SENSITIVITY",
"PERDAPI,STATIC,0,0",
"PERDAPI,LATPROP,-1",
"PERDAPI,OUTPROP,0",
"PERDAPI,PIN,OFF",
"PERDAPI,GNSS,AUTO,2,2,0,-1,-1",
"PERDSYS,ANTSEL,FORCE1L",
"PERDAPI,CROUT,ALLOFF",
"PERDAPI,CROUT,V",
"PERDCFG,NMEAOUT,GGA,1",
"PERDCFG,NMEAOUT,RMC,1",
"PERDCFG,NMEAOUT,GSA,1",
"PERDCFG,NMEAOUT,GNS,0",
"PERDCFG,NMEAOUT,ZDA,0",
"PERDCFG,NMEAOUT,GSV,1",
"PERDCFG,NMEAOUT,GST,0"
}

Definition at line 35 of file gps_furuno.c.

Referenced by nmea_configure().