44 lines
998 B
C
44 lines
998 B
C
//
|
|
// Created by villuton on 25.03.25.
|
|
//
|
|
|
|
#ifndef NMEA_GSV_H
|
|
#define NMEA_GSV_H
|
|
|
|
#include "Nmea_Config.h"
|
|
|
|
#define GSV_MSG_ID "GSV"
|
|
#define GSV_MSG_ID_LEN (3)
|
|
|
|
/**
|
|
* Information about satellite
|
|
* @see nmeaSATINFO
|
|
* @see nmeaGPGSV
|
|
*/
|
|
typedef struct
|
|
{
|
|
int id; /**< Satellite PRN number */
|
|
int in_use; /**< Used in position fix */
|
|
int elv; /**< Elevation in degrees, 90 maximum */
|
|
int azimuth; /**< Azimuth, degrees from true north, 000 to 359 */
|
|
int sig; /**< Signal, 00-99 dB */
|
|
|
|
} tNmeaSATELLITE;
|
|
|
|
|
|
/**
|
|
* GSV packet information structure (Satellites in view)
|
|
*/
|
|
typedef struct
|
|
{
|
|
int pack_count; /**< Total number of messages of this type in this cycle */
|
|
int pack_index; /**< Message number */
|
|
int sat_count; /**< Total number of satellites in view */
|
|
tNmeaSATELLITE sat_data[NMEA_SATINPACK];
|
|
|
|
} tNmeaGSV;
|
|
|
|
bool NmeaGsv_Parse(char *str, size_t len, tNmeaGSV *result);
|
|
|
|
#endif //NMEA_GSV_H
|