Subversion Repositories svnkaklik

Rev

Details | Last modification | View Log

Rev Author Line No. Line
507 kaklik 1
/*! \file nmea.h \brief NMEA protocol function library. */
2
//*****************************************************************************
3
//
4
// File Name	: 'nmea.h'
5
// Title		: NMEA protocol function library
6
// Author		: Pascal Stang - Copyright (C) 2002
7
// Created		: 2002.08.27
8
// Revised		: 2002.08.27
9
// Version		: 0.1
10
// Target MCU	: Atmel AVR Series
11
// Editor Tabs	: 4
12
//
13
// NOTE: This code is currently below version 1.0, and therefore is considered
14
// to be lacking in some functionality or documentation, or may not be fully
15
// tested.  Nonetheless, you can expect most functions to work.
16
//
17
///	\ingroup driver_hw
18
/// \defgroup nmea NMEA Packet Interface for GPS Receivers (nmea.c)
19
/// \code #include "nmea.h" \endcode
20
/// \par Overview
21
///		This library parses and decodes the standard NMEA data stream from a
22
/// GPS and stores the position, velocity, and time solutions in the gps.c
23
/// library.
24
//
25
// This code is distributed under the GNU Public License
26
//		which can be found at http://www.gnu.org/licenses/gpl.txt
27
//
28
//*****************************************************************************
29
 
30
#ifndef NMEA_H
31
#define NMEA_H
32
 
33
#include "global.h"
34
#include "buffer.h"
35
 
36
// constants/macros/typdefs
37
#define NMEA_BUFFERSIZE		80
38
 
39
// Message Codes
40
#define NMEA_NODATA		0	// No data. Packet not available, bad, or not decoded
41
#define NMEA_GPGGA		1	// Global Positioning System Fix Data
42
#define NMEA_GPVTG		2	// Course over ground and ground speed
43
#define NMEA_GPGLL		3	// Geographic position - latitude/longitude
44
#define NMEA_GPGSV		4	// GPS satellites in view
45
#define NMEA_GPGSA		5	// GPS DOP and active satellites
46
#define NMEA_GPRMC		6	// Recommended minimum specific GPS data
47
#define NMEA_UNKNOWN	0xFF// Packet received but not known
48
 
49
// Debugging
50
//#define NMEA_DEBUG_PKT	///< define to enable debug of all NMEA messages
51
//#define NMEA_DEBUG_GGA	///< define to enable debug of GGA messages
52
//#define NMEA_DEBUG_VTG	///< define to enable debug of VTG messages
53
 
54
// functions
55
void nmeaInit(void);
56
u08* nmeaGetPacketBuffer(void);
57
u08 nmeaProcess(cBuffer* rxBuffer);
58
void nmeaProcessGPGGA(u08* packet);
59
void nmeaProcessGPVTG(u08* packet);
60
 
61
#endif