BSP430  20141115
Board Support Package for MSP430 microcontrollers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Data Structures | Macros | Typedefs | Enumerations
skytraq.h File Reference

Sensor-specific interface for SkyTraq Venus 6 GPS sensors. More...

#include <bsp430/core.h>

Go to the source code of this file.

Data Structures

struct  sSkyTraqMsg_GENERIC
 
struct  sSkyTraqMsgIn_RESTART
 
struct  sSkyTraqMsgIn_SW_VERSION
 
struct  sSkyTraqMsgIn_SW_CRC
 
struct  sSkyTraqMsgIn_FACTORY_DEFAULTS
 
struct  sSkyTraqMsgIn_CFG_SERIAL
 
struct  sSkyTraqMsgIn_CFG_NMEA
 
struct  sSkyTraqMsgIn_CFG_FORMAT
 
struct  sSkyTraqMsgOut_SW_VERSION
 
struct  sSkyTraqMsgOut_ACK
 
struct  sSkyTraqMsgOut_NAV_DATA
 
union  uSkyTraqMsgIn
 
union  uSkyTraqMsgOut
 
union  uSkyTraqMsg
 

Macros

#define SKYTRAQ_NMEA_RX_POOL_SIZE   100
 
#define SKYTRAQ_NMEA_RX_POOL_FRAGMENTS   4
 

Typedefs

typedef enum eSkyTraqMessageID eSkyTraqMessageID
 
typedef union uSkyTraqMsgIn uSkyTraqMsgIn
 
typedef union uSkyTraqMsgOut uSkyTraqMsgOut
 
typedef union uSkyTraqMsg uSkyTraqMsg
 

Enumerations

enum  eSkyTraqMessageID {
  eSkyTraqMID_NMEA = 71, eSkyTraqMIDin_RESTART = 1, eSkyTraqMIDin_QRY_SW_VERSION = 2, eSkyTraqMIDin_QRY_SW_CRC = 3,
  eSkyTraqMIDin_SET_FACTORY_DEFAULTS = 4, eSkyTraqMIDin_CFG_SERIAL = 7, eSkyTraqMIDin_CFG_NMEA = 8, eSkyTraqMIDin_CFG_FORMAT = 9,
  eSkyTraqMIDin_CFG_POWER = 12, eSkyTraqMIDin_CFG_PUR = 14, eSkyTraqMIDin_QRY_PUR = 16, eSkyTraqMIDin_CFG_DATUM = 41,
  eSkyTraqMIDin_QRY_DATUM = 45, eSkyTraqMIDin_GET_EPHEMERIS = 48, eSkyTraqMIDin_SET_EPHEMERIS = 49, eSkyTraqMIDin_CFG_WAAS = 55,
  eSkyTraqMIDin_QRY_WAAS = 56, eSkyTraqMIDin_CFG_PPIN = 57, eSkyTraqMIDin_QRY_PPIN = 58, eSkyTraqMIDin_CFG_PPIN_PARAM = 59,
  eSkyTraqMIDin_CFG_NAV_MODE = 60, eSkyTraqMIDin_QRY_NAV_MODE = 61, eSkyTraqMIDin_CFG_1PPS = 62, eSkyTraqMIDin_QRY_1PPS = 63,
  eSkyTraqMIDout_SW_VERSION = 128, eSkyTraqMIDout_SW_CRC = 129, eSkyTraqMIDout_ACK = 131, eSkyTraqMIDout_NACK = 132,
  eSkyTraqMIDout_PUR = 134, eSkyTraqMIDout_NAV_DATA = 168, eSkyTraqMIDout_DATUM = 174, eSkyTraqMIDout_WAAS = 179,
  eSkyTraqMIDout_PPIN = 180, eSkyTraqMIDout_NAV_MODE = 181, eSkyTraqMIDout_1PPS = 182
}
 

Detailed Description

Sensor-specific interface for SkyTraq Venus 6 GPS sensors.

This module implements the BSP430 GPS interface for SkyTraq Venus 6 GPS sensors. See Sensors: SkyTraq Venus 638FLPx as Time Source for an example application.

The implementation is the BSP430 src/sensors/skytraq.c file.

Note
The implementation for this sensor makes use of Fragpool, a library for managing packetized data in embedded communications stacks.
All multi-byte data in binary packets is stored in big-endian form, and this is highlighted through the _be suffix on such fields. The MSP430 is a little-endian architecture; use BSP430_CORE_SWAP_16 and BSP430_CORE_SWAP_32 as necessary to convert between packet and internal representations.
Only a subset of available commands have structures defined.

Resources

Homepage
http://github.com/pabigot/bsp430

Macro Definition Documentation

#define SKYTRAQ_NMEA_RX_POOL_FRAGMENTS   4

The number of distinct messages that can be allocated from the incoming message pool.

Four supports one message being processed by the application, a null ACK plus a valid ACK from an application command, plus one message being actively received.

Defaulted:
The value here is superseded by previously encountered definitions.
#define SKYTRAQ_NMEA_RX_POOL_SIZE   100

Recommended number of octets in the pool for incoming messages.

The driver will receive messages into blocks allocated from this pool. This should be large enough to hold the message being processed by the application along with a new incoming message and any ACK/NACK messages from application commands. Take into account the effect of fragmentation due to held messages.

Defaulted:
The value here is superseded by previously encountered definitions.

Typedef Documentation

Message identifiers

typedef union uSkyTraqMsg uSkyTraqMsg

A union for access to specific SkyTraq Venus 6 binary messages content from a generic buffer. Acccess generic.mid to identify the contents, then access the specific union field.

A union for access to SkyTraq Venus 6 binary messages sent from application to sensor (the "in" direction).

A union for access to SkyTraq Venus 6 binary messages sent from sensor to the application (the "out" direction).

Enumeration Type Documentation

Message identifiers

Enumerator
eSkyTraqMID_NMEA 

'G' for GP* NMEA messages

eSkyTraqMIDin_RESTART 

System Restart

eSkyTraqMIDin_QRY_SW_VERSION 

Query Software Version

eSkyTraqMIDin_QRY_SW_CRC 

Query Software CRC

eSkyTraqMIDin_SET_FACTORY_DEFAULTS 

Set Factory Defaults

eSkyTraqMIDin_CFG_SERIAL 

Configure Serial Port

eSkyTraqMIDin_CFG_NMEA 

Configure NMEA

eSkyTraqMIDin_CFG_FORMAT 

Configure Output Message Format

eSkyTraqMIDin_CFG_POWER 

Configure Power Mode

eSkyTraqMIDin_CFG_PUR 

Configure Position Update Rate

eSkyTraqMIDin_QRY_PUR 

Query Position Update Rate

eSkyTraqMIDin_CFG_DATUM 

Configure Datum

eSkyTraqMIDin_QRY_DATUM 

Query Datum

eSkyTraqMIDin_GET_EPHEMERIS 

Get Ephemeris

eSkyTraqMIDin_SET_EPHEMERIS 

Set Ephemeris

eSkyTraqMIDin_CFG_WAAS 

Configure WAAS

eSkyTraqMIDin_QRY_WAAS 

Query WAAS Status

eSkyTraqMIDin_CFG_PPIN 

Configure Position Pinning

eSkyTraqMIDin_QRY_PPIN 

Query Position Pinning

eSkyTraqMIDin_CFG_PPIN_PARAM 

Configure Position Pinning Parameters

eSkyTraqMIDin_CFG_NAV_MODE 

Configure Navigation Mode

eSkyTraqMIDin_QRY_NAV_MODE 

Query Navigation Mode

eSkyTraqMIDin_CFG_1PPS 

Configure 1PPS Mode

eSkyTraqMIDin_QRY_1PPS 

Query 1PPS Mode

eSkyTraqMIDout_SW_VERSION 

Software Version

eSkyTraqMIDout_SW_CRC 

Software CRC

eSkyTraqMIDout_ACK 

ACK

eSkyTraqMIDout_NACK 

NACK

eSkyTraqMIDout_PUR 

Position Update Rate

eSkyTraqMIDout_NAV_DATA 

Navigation Data

eSkyTraqMIDout_DATUM 

GPS Datum

eSkyTraqMIDout_WAAS 

GPS WAAS Status

eSkyTraqMIDout_PPIN 

GPS Position Pinning Status

eSkyTraqMIDout_NAV_MODE 

GPS Navigation Mode

eSkyTraqMIDout_1PPS 

GPS 1PPS Mode