📄 nmea_types.h
字号:
#ifndef _NMEATYPES_H_#define _NMEATYPES_H_struct NMEAObject_t /*lint !e753 local union not referenced*/{ CHAR TypeStr[5]; BOOL (*parseFunc)(CHAR * sentence, struct NMEAObject_t * no, UINT32 * flags);#if (NMEA_INCLUDE_AAM == 1) struct AAMObject_t { BOOL ArrivalCircleEntered; BOOL PerpendicularPassedAtWaypoint; POINT ArrivalCircleRadius; UINT8 UnitsOfRadius; WPID WaypointID; }AAMObject;#endif#if (NMEA_INCLUDE_ALM == 1) struct ALMObject_t { POINT TotalNumberOfMessages; POINT MessageNumber; UINT8 SatellitePRNNumber; POINT GPSWeekNumber; UINT8 SVHealth; UINT16 Eccentricity; UINT8 AlmanacReferenceTime; UINT16 InclinationAngle; UINT16 RateOfRightAscension; UINT16 RootOfSemiMajorAxis; UINT16 ArgumentOfPerigee; UINT16 LongitudeOfAscensionNode; UINT16 MeanAnomaly; UINT16 F0ClockParameter; UINT16 F1ClockParameter; }ALMObject;#endif#if (NMEA_INCLUDE_APA == 1) struct APAObject_t { CHAR StatusBlink; CHAR StatusCycleLockWarning; POINT CrossTrackErrorMagnitude; CHAR DirectionToSteer; CHAR CrossTrackUnits; CHAR StatusArrivalCircleEntered; CHAR StatusPerpendicularPassedAtWaypoint; UINT16 BearingOriginToDestination; CHAR MagneticOrTrue; WPID DestinationWaypointID; }APAObject;#endif#if (NMEA_INCLUDE_APB == 1) struct APBObject_t { CHAR StatusBlink; CHAR StatusCycleLockWarning; POINT CrossTrackErrorMagnitude; CHAR DirectionToSteer; CHAR CrossTrackUnits; CHAR StatusArrivalCircleEntered; CHAR StatusPerpendicularPassedAtWaypoint; POINT BearingOriginToDestination; CHAR BODDeclination; WPID DestinationWaypointID; POINT BearingPresentPositionToDestination; CHAR Declination; POINT HeadingToSteerToDestinationWaypoint; CHAR HTSDWDeclination; }APBObject;#endif#if (NMEA_INCLUDE_ASD == 1) struct ASDObject_t { CHAR checksum; }ASDObject;#endif#if (NMEA_INCLUDE_BEC == 1) struct BECObject_t { UTC UTCTime; POINT WaypointLatitude; CHAR NorthOrSouth; POINT WaypointLongitude; CHAR EastOrWest; POINT Bearing; CHAR True; POINT BearingMagnetic; CHAR Magnetic; POINT NauticalMiles; CHAR MilesNautical; WPID WaypointID; }BECObject;#endif#if (NMEA_INCLUDE_BOD == 1) struct BODObject_t { POINT BearingDegreesTrue; CHAR True; POINT BearingDegreesMagnetic; CHAR Magnetic; WPID ToWaypoint; WPID FromWaypoint; }BODObject;#endif#if (NMEA_INCLUDE_BWC == 1) struct BWCObject_t { UTC UTCTime; POINT WaypointLatitude; CHAR NorthOrSouth; POINT WaypointLongitude; CHAR EastOrWest; POINT BearingTrue; CHAR True; POINT BearingMagnetic; CHAR Magnetic; POINT NauticalMiles; CHAR NauticalMile; WPID WaypointID; }BWCObject;#endif#if (NMEA_INCLUDE_BWR == 1) struct BWRObject_t { UTC UTCTime; POINT WaypointLatitude; CHAR NorthSouth; POINT WaypointLongitude; CHAR EastWest; POINT BearingTrue; CHAR True; POINT BearingMagnetic; CHAR Magnetic; POINT NauticalMiles; CHAR NauticalMile; WPID WaypointID; }BWRObject;#endif#if (NMEA_INCLUDE_BWW == 1) struct BWWObject_t { POINT BearingDegrees; CHAR True; POINT BearingDegreesMagnetic; CHAR Magnetic; WPID ToWaypoint; WPID FromWaypoint; }BWWObject;#endif#if (NMEA_INCLUDE_DBK == 1) struct DBKObject_t { POINT DepthFeet; CHAR Feet; POINT DepthMeters; CHAR Meters; POINT DepthFathoms; CHAR Fathoms; }DBKObject;#endif#if (NMEA_INCLUDE_DBS == 1) struct DBSObject_t { POINT DepthFeet; CHAR Feet; POINT DepthMeters; CHAR Meters; POINT DepthFathoms; CHAR Fathoms; }DBSObject;#endif#if (NMEA_INCLUDE_DBT == 1) struct DBTObject_t { POINT DepthFeet; CHAR Feet; POINT DepthMeters; CHAR Meters; POINT DepthFathoms; CHAR Fathoms; }DBTObject;#endif#if (NMEA_INCLUDE_DCN == 1) struct DCNObject_t { CHAR DeccaChainIdentifier; CHAR RedZoneIdentifier; POINT RedLineOfPosition; CHAR RedMasterLineStatus; CHAR GreenZoneIdentifier; POINT GreenLineOfPosition; CHAR GreenMasterLineStatus; CHAR PurpleZoneIdentifier; POINT PurpleLineOfPosition; CHAR PurpleMasterLineStatus; CHAR RedLineNavigationUse; CHAR GreenLineNavigationUse; CHAR PurpleLineNavigationUse; POINT PositionUncertainity; CHAR NauticalMiles; CHAR FixDataBasis; }DCNObject;#endif#if (NMEA_INCLUDE_DPT == 1) struct DPTObject_t { POINT DepthMeters; POINT OffsetFromTransducer; }DPTObject;#endif#if (NMEA_INCLUDE_FSI == 1) struct FSIObject_t { UINT32 TransmittingFrequency; UINT32 ReceivingFrequency; CHAR CommunicationsMode; CHAR PowerLevel; }FSIObject;#endif#if (NMEA_INCLUDE_GGA == 1) struct GGAObject_t { UTC UniversalTimeCoordinated; POINT Latitude; CHAR NorthOrSouth; POINT Longitude; CHAR EastOrWest; CHAR GPSQualityIndicator; UINT8 NumberOfSatellitesInView; POINT HorizontalDilutionOfPrecision; POINT AntennaAltitudeAboveBelowMeansealevel; CHAR UnitsOfAntennaAltitude; POINT GeoidalSeparation; CHAR UnitsOfGeoidalSeparation; POINT AgeOfDifferentialGPSData; UINT32 DifferentialReferenceStationID; }GGAObject;#endif#if (NMEA_INCLUDE_GLC == 1) struct GLCObject_t { UINT32 GRIMicrosecondsPer10; POINT MasterTOAMicroseconds; CHAR MasterTOASignalStatus; POINT TimeDifference1Microseconds; CHAR TimeDifference1SignalStatus; POINT TimeDifference2Microseconds; CHAR TimeDifference2SignalStatus; POINT TimeDifference3Microseconds; CHAR TimeDifference3SignalStatus; POINT TimeDifference4Microseconds; CHAR TimeDifference4SignalStatus; POINT TimeDifference5Microseconds; CHAR TimeDifference5SignalStatus; }GLCObject;#endif#if (NMEA_INCLUDE_GLL == 1) struct GLLObject_t { POINT Latitude; CHAR NorthOrSouth; POINT Longitude; CHAR EastOrWest; UTC UniversalTimeCoordinated; CHAR StatusA; }GLLObject;#endif#if (NMEA_INCLUDE_GSA == 1) struct GSAObject_t { CHAR SelectionMode; CHAR Mode; CHAR IDofSatelliteUsedForFix1; CHAR IDofSatelliteUsedForFix2; CHAR IDofSatelliteUsedForFix3; CHAR IDofSatelliteUsedForFix4; CHAR IDofSatelliteUsedForFix5; CHAR IDofSatelliteUsedForFix6; CHAR IDofSatelliteUsedForFix7; CHAR IDofSatelliteUsedForFix8; CHAR IDofSatelliteUsedForFix9; CHAR IDofSatelliteUsedForFix10; CHAR IDofSatelliteUsedForFix11; CHAR IDofSatelliteUsedForFix12; POINT PDOP; POINT HDOP; POINT VDOP; }GSAObject;#endif#if (NMEA_INCLUDE_GSV == 1) struct GSVObject_t { UINT8 TotalNumberOfMessages; UINT8 MessageNumber; UINT8 SatellitesInView; UINT8 SatelliteNumber; UINT8 ElevationInDegrees; UINT8 AzimuthInDegreesToTrue; UINT8 SNRindB; }GSVObject;#endif#if (NMEA_INCLUDE_GTD == 1) struct GTDObject_t { POINT TimeDifference1; POINT TimeDifference2; POINT TimeDifference3; POINT TimeDifference4; POINT TimeDifference5; }GTDObject;#endif#if (NMEA_INCLUDE_GXA == 1) struct GXAObject_t { UTC UTCofPositionFix; POINT Latitude; CHAR NorthOrSouth; POINT Longitude; CHAR EastOrWest; WPID WaypointID; UINT8 SateliteNumber; }GXAObject;#endif#if (NMEA_INCLUDE_HDG == 1) struct HDGObject_t { POINT MagneticSensorHeading; POINT MagneticDeviationDegrees; CHAR MagneticDeviationDirection; POINT MagneticVariationDegrees; CHAR MagneticVariationDirection; }HDGObject;#endif#if (NMEA_INCLUDE_HDM == 1) struct HDMObject_t { POINT HeadingDegrees; CHAR Magnetic; }HDMObject;#endif#if (NMEA_INCLUDE_HDT == 1) struct HDTObject_t { POINT HeadingDegrees; CHAR True; }HDTObject;#endif#if (NMEA_INCLUDE_HSC == 1) struct HSCObject_t { POINT HeadingDegrees; CHAR True; POINT HeadingDegreesMagnetic; CHAR Magnetic; }HSCObject;#endif#if (NMEA_INCLUDE_LCD == 1) struct LCDObject_t { UINT16 GRIMicroseconds10; UINT16 MasterRelativeSNR; UINT16 MasterRelativeECD; UINT16 TimeDifference1Microseconds; UINT16 TimeDifference1SignalStatus; UINT16 TimeDifference2Microseconds; UINT16 TimeDifference2SignalStatus; UINT16 TimeDifference3Microseconds; UINT16 TimeDifference3SignalStatus; UINT16 TimeDifference4Microseconds; UINT16 TimeDifference4SignalStatus; UINT16 TimeDifference5Microseconds; UINT16 TimeDifference5SignalStatus; }LCDObject;#endif#if (NMEA_INCLUDE_MTW == 1) struct MTWObject_t { POINT Degrees; CHAR UnitOfMeasurement; }MTWObject;#endif#if (NMEA_INCLUDE_MWV == 1) struct MWVObject_t { POINT WindAngle; CHAR Reference; POINT WindSpeed; CHAR WindSpeedUnits; CHAR Status; }MWVObject;#endif#if (NMEA_INCLUDE_OLN == 1) struct OLNObject_t { UINT8 OmegaPair1A; UINT16 OmegaPair1B; UINT8 OmegaPair2A; UINT16 OmegaPair2B; UINT8 OmegaPair3A; UINT16 OmegaPair3B; }OLNObject;#endif#if (NMEA_INCLUDE_OSD == 1) struct OSDObject_t { POINT HeadingDegrees; CHAR Status; POINT VesselCourse; CHAR CourseReference; POINT VesselSpeed; CHAR SpeedReference; POINT VesselSet; POINT VesselDrift; CHAR SpeedUnits; }OSDObject;#endif#if (NMEA_INCLUDE_R00 == 1)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -