⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 garmin_api.h

📁 It is a software to decode information received by a normal GPS like GARMIN, UBLOX if it sends NMEA
💻 H
📖 第 1 页 / 共 2 页
字号:
	char n_15[50];	char n_16[50];	char n_17[50];	char n_18[50];	char n_19[50];		struct GPGSV_STC *prox;}GPGSV_TYP;typedef struct GPRMC_STC{	/*      Recommended Minimum Specific GPS/TRANSIT Data (RMC)	$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh<CR><LF>    <1>   UTC time of position fix, hhmmss format for GPS 18 PC/LVC;          hhmmss.s format for GPS 18-5Hz    <2>   Status, A = Valid position, V = NAV receiver warning    <3>   Latitude, ddmm.mmm format for GPS 18 PC/LVC; ddmm.mmmmm format for GPS 18-5Hz          (leading zeros must be transmitted)    <4>   Latitude hemisphere, N or S    <5>   Longitude, ddmm.mmm format for GPS 18 PC/LVC; ddmm.mmmmm format for GPS 18-5Hz          (leading zeros must be transmitted)    <6>   Longitude hemisphere, E or W    <7>   Speed over ground, GPS 18 PC and LVC: 000.0 to 999.9 knots, GPS 18-5Hz: 000.00 to 999.99          knots (leading zeros will be transmitted)    <8>   Course over ground, 000.0 to 359.9 degrees, true (leading zeros will be transmitted)    <9>   UTC date of position fix, ddmmyy format    <10>  Magnetic variation, 000.0 to 180.0 degrees (leading zeros will be transmitted)    <11>  Magnetic variation direction, E or W (westerly variation adds to true course)    <12>  Mode indicator (only output if NMEA 0183 version 2.30 active), A = Autonomous,          D = Differential, E = Estimated, N = Data not valid	 */	char n_1[100];	char n_2[100];	char n_3[100];	char n_4[100];	char n_5[100];	char n_6[100];	char n_7[100];	char n_8[100];	char n_9[100];	char n_10[100];	char n_11[100];	char n_12[100];}GPRMC;typedef struct GPVTG_STC{	/*      Track Made Good and Ground Speed (VTG)	$GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh<CR><LF>    <1>    True course over ground, GPS 18 PC and LVC: 000 to 359 degrees, GPS 18-5Hz: 000.0 to           359.0 degrees(leading zeros will be transmitted)    <2>    Magnetic course over ground, 000 to 359 degrees, GPS 18-5Hz: 000.0 to 359.0 degrees(leading           zeros will be transmitted)    <3>    Speed over ground, GPS 18 PC and LVC: 000.0 to 999.9 knots, GPS 18-5Hz: 000.00 to 999.99           knots (leading zeros will be transmitted)    <4>    Speed over ground, GPS 18 PC and LVC: 0000.0 to 1851.8 kilometers per hour, GPS 18-5Hz:           0000.00 to 1851.89 (leading zeros will be transmitted)    <5>    Mode indicator (only output if NMEA 0183 version 2.30 active), A = Autonomous,           D = Differential, E = Estimated, N = Data not valid	 */	char n_1[50];	char n_2[50];	char n_3[50];	char n_4[50];	char n_5[50];}GPVTG;typedef struct GPGLL_STC{	/*      Geographic Position (GLL)	$GPGLL,<1>,<2>,<3>,<4>,<5>,<6>,<7>*hh<CR><LF>    <1>    Latitude, ddmm.mmm format for GPS 18 PC/LVC; ddmm.mmmmm format for GPS 18-5Hz           (leading zeros must be transmitted)    <2>    Latitude hemisphere, N or S    <3>    Longitude, ddmm.mmm format for GPS 18 PC/LVC; ddmm.mmmmm format for GPS 18-5Hz           (leading zeros must be transmitted)    <4>    Longitude hemisphere, E or W    <5>    UTC time of position fix, hhmmss format for GPS 18 PC/LVC; hhmmss.s format for GPS 18-           5Hz    <6>    Status, A = Valid position, V = NAV receiver warning    <7>    Mode indicator (only output if NMEA 0183 version 2.30 active), A = Autonomous,           D = Differential (WAAS), E = Estimated, N = Data not valid	 */	char n_1[50];	char n_2[50];	char n_3[50];	char n_4[50];	char n_5[50];	char n_6[50];	char n_7[50];}GPGLL;typedef struct PGRME_STC{	/*     Estimated Error Information (PGRME)	$PGRME,<1>,M,<2>,M,<3>,M*hh<CR><LF>    <1>   Estimated horizontal position error (HPE), 0.0 to 999.9 meters    <2>   Estimated vertical position error (VPE), 0.0 to 999.9 meters    <3>   Estimated position error (EPE), 0.0 to 999.9 meters	 */	char n_1[50];	char n_2[50];	char n_3[50];}PGRME;typedef struct PGRMF_STC{	/*      GPS Fix Data Sentence (PGRMF)	$PGRMF,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>,<13>,<14>,<15>*hh<CR><LF>    <1>    GPS week number (0 to 1023)    <2>    GPS seconds (0 to 604799)    <3>    UTC date of position fix, ddmmyy format    <4>    UTC time of position fix, hhmmss format for GPS 18 PC/LVC; hhmmss.s format for GPS 18-           5Hz    <5>    GPS leap second count    <6>    Latitude, ddmm.mmm format for GPS 18 PC/LVC; ddmm.mmmmm format for GPS 18-5Hz           (leading zeros must be transmitted)    <7>    Latitude hemisphere, N or S    <8>    Longitude, ddmm.mmm format for GPS 18 PC/LVC; ddmm.mmmmm format for GPS 18-5Hz           (leading zeros must be transmitted)    <9>    Longitude hemisphere, E or W    <10>   Mode, M = manual, A = automatic    <11>   Fix type, 0 = no fix, 1 = 2D fix, 2 = 3D fix    <12>   Speed over ground, 0 to 1851 kilometers/hour    <13>   Course over ground, 0 to 359 degrees, true    <14>   Position dilution of precision, 0 to 9 (rounded to nearest integer value)    <15>   Time dilution of precision, 0 to 9 (rounded to nearest integer value)	 */	char n_1[50];	char n_2[50];	char n_3[50];	char n_4[50];	char n_5[50];	char n_6[50];	char n_7[50];	char n_8[50];	char n_9[50];	char n_10[50];	char n_11[50];	char n_12[50];	char n_13[50];	char n_14[50];	char n_15[50];}PGRMF;typedef struct PGRMT_STC{	/*         Sensor Status Information (PGRMT)	The Garmin Proprietary sentence $PGRMT gives information concerning the status of the GPS sensor.	This sentence is transmitted once per minute regardless of the selected baud rate.	$PGRMT,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>*hh<CR><LF>       <1>     Product, model and software version (variable length field, for example, “GPS 18 VER 2.05”)       <2>     ROM checksum test, P = pass, F = fail       <3>     Receiver failure discrete, P = pass, F = fail       <4>     Stored data lost, R = retained, L = lost       <5>     Real time clock lost, R = retained, L = lost       <6>     Oscillator drift discrete, P = pass, F = excessive drift detected       <7>     Data collection discrete, C = collecting, null if not collecting       <8>     GPS sensor temperature in degrees C       <9>     GPS sensor configuration data, R = retained, L = lost	 */	char n_1[50];	char n_2[50];	char n_3[50];	char n_4[50];	char n_5[50];	char n_6[50];	char n_7[50];	char n_8[50];	char n_9[50];}PGRMT;typedef struct PGRMV_STC{	/*     3D Velocity Information (PGRMV)	$PGRMV,<1>,<2>,<3>*hh<CR><LF>    <1>   True east velocity, -514.4 to 514.4 meters/second for GPS 18 PC/LVC; -514.44 to 514.44 for          GPS 18-5Hz    <2>   True north velocity, -514.4 to 514.4 meters/second for GPS 18 PC/LVC; -514.44 to 514.44 for          GPS 18-5Hz    <3>   Up velocity, -999.9 to 999.9 meters/second for GPS 18 PC/LVC; -999.99 to 999.99 for GPS 18-          5Hz	 */	char n_1[50];	char n_2[50];	char n_3[50];}PGRMV;typedef struct PGRMB_STC{	/*      DGPS Beacon Information (PGRMB)	NOTE: The GPS 18 products do not support PGRMB at this time.	$PGRMB,<1>,<2>,<3>,<4>,<5>,K,<6>,<7>,<8>*hh<CR><LF>    <1>    Beacon tune frequency, 0.0, 283.5 to 325.0 kHz in 0.5 kHz steps    <2>    Beacon bit rate, 0, 25, 50, 100, or 200 bps    <3>    Beacon SNR, 0 to 31    <4>    Beacon data quality, 0 to 100    <5>    Distance to beacon reference station in kilometers    <6>    Beacon receiver communication status (0 = Check Wiring, 1 = No Signal, 2 = Tuning, 3 =           Receiving, 4= Scanning)    <7>    DGPS fix source (R = RTCM, W = WAAS, N = Non-DGPS Fix)    <8>    DGPS mode, A = Automatic, W = WAAS Only, R = RTCM Only, N = None (DGPS disabled)	 */	char n_1[50];	char n_2[50];	char n_3[50];	char n_4[50];	char n_5[50];	char n_6[50];	char n_7[50];	char n_8[50];}PGRMB;typedef struct satel{	int sat[35][3];	}sat_info;typedef struct pos_ver{	char time[15];	char date[15];		char lati[15];	char lati_emi[30];	char longi[15];	char longi_emi[15];		char speed[15];	char course[15];} pos_info;		//definir como variável um ponteiro para uma estruturatypedef GPALM_TYP *GPALM;typedef GPGSV_TYP *GPGSV;int nmea_in(char *message);void inic_GPALM(GPALM *fila);void inic_GPGSV(GPGSV *fila);void inserir_GPALM(GPALM *fila, int argc,char *argv[]);			//filavoid inserir_PGRMI(PGRMI *estrutura, int argc,char *argv[]);void inserir_PGRMC(PGRMC *estrutura, int argc,char *argv[]);void inserir_PGRMC1(PGRMC1 *estrutura, int argc,char *argv[]);void inserir_PGRMO(PGRMO *estrutura, int argc,char *argv[]);void inserir_GPGGA(GPGGA *estrutura, int argc,char *argv[]);void inserir_GPGSA(GPGSA *estrutura, int argc,char *argv[]);void inserir_GPGSV(GPGSV *fila, int argc,char *argv[]);			//filavoid inserir_GPRMC(GPRMC *estrutura, int argc,char *argv[]);void inserir_GPVTG(GPVTG *estrutura, int argc,char *argv[]);void inserir_GPGLL(GPGLL *estrutura, int argc,char *argv[]);void inserir_PGRME(PGRME *estrutura, int argc,char *argv[]);void inserir_PGRMF(PGRMF *estrutura, int argc,char *argv[]);void inserir_PGRMT(PGRMT *estrutura, int argc,char *argv[]);void inserir_PGRMV(PGRMV *estrutura, int argc,char *argv[]);void inserir_PGRMB(PGRMB *estrutura, int argc,char *argv[]);void insert_sat_info(int argc,char *argv[]);void print_pos_info();void print_sat_info();void limpa_sat_info();void print(int op);//int correct_stc(char *message);void listar_GPALM(GPALM fila);void listar_GPGSV(GPGSV fila);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -