gnss18 2.1.0.0
Data Structures | Macros | Typedefs | Enumerations | Functions
gnss18.h File Reference

This file contains API for GNSS 18 Click Driver. More...

#include "mikrosdk_version.h"
#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_i2c_master.h"
#include "drv_uart.h"

Go to the source code of this file.

Data Structures

struct  gnss18_s
 GNSS 18 Click context object. More...
 
struct  gnss18_cfg_t
 GNSS 18 Click configuration object. More...
 

Macros

#define GNSS18_RSP_START   "$"
 GNSS 18 response buffer commands. More...
 
#define GNSS18_RSP_DELIMITER   ","
 
#define GNSS18_RSP_END_SEQ   "\r\n"
 
#define GNSS18_RSP_GPGGA   "$GNGGA"
 
#define GNSS18_RSP_NO_FIX   ""
 
#define GNSS18_GPGGA_ELEMENT_SIZE   15
 GNSS 18 GPGGA command elements. More...
 
#define GNSS18_GPGGA_TIME   1
 
#define GNSS18_GPGGA_LATITUDE   2
 
#define GNSS18_GPGGA_LATITUDE_SIDE   3
 
#define GNSS18_GPGGA_LONGITUDE   4
 
#define GNSS18_GPGGA_LONGITUDE_SIDE   5
 
#define GNSS18_GPGGA_QUALITY_INDICATOR   6
 
#define GNSS18_GPGGA_NUMBER_OF_SATELLITES   7
 
#define GNSS18_GPGGA_H_DILUTION_OF_POS   8
 
#define GNSS18_GPGGA_ALTITUDE   9
 
#define GNSS18_GPGGA_ALTITUDE_UNIT   10
 
#define GNSS18_GPGGA_GEOIDAL_SEPARATION   11
 
#define GNSS18_GPGGA_GEOIDAL_SEPARATION_UNIT   12
 
#define GNSS18_GPGGA_TIME_SINCE_LAST_DGPS   13
 
#define GNSS18_GPGGA_DGPS_REFERENCE_STATION_ID   14
 
#define GNSS18_DUMMY   0xFF
 GNSS 18 dummy data. More...
 
#define GNSS18_DEVICE_ADDRESS   0x42
 GNSS 18 device address setting. More...
 
#define GNSS18_DRV_TX_BUFFER_SIZE   100
 GNSS 18 driver buffer size. More...
 
#define GNSS18_DRV_RX_BUFFER_SIZE   500
 
#define GNSS18_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping. More...
 

Typedefs

typedef err_t(* gnss18_master_io_t) (struct gnss18_s *, uint8_t *, uint8_t)
 GNSS 18 Click driver interface. More...
 
typedef struct gnss18_s gnss18_t
 GNSS 18 Click context object. More...
 

Enumerations

enum  gnss18_drv_t { GNSS18_DRV_SEL_UART , GNSS18_DRV_SEL_I2C }
 GNSS 18 Click driver selector. More...
 
enum  gnss18_return_value_t { GNSS18_OK = 0 , GNSS18_ERROR = -1 }
 GNSS 18 Click return value data. More...
 

Functions

void gnss18_cfg_setup (gnss18_cfg_t *cfg)
 GNSS 18 configuration object setup function. More...
 
void gnss18_drv_interface_selection (gnss18_cfg_t *cfg, gnss18_drv_t drv_sel)
 GNSS 18 driver interface setup function. More...
 
err_t gnss18_init (gnss18_t *ctx, gnss18_cfg_t *cfg)
 GNSS 18 initialization function. More...
 
err_t gnss18_generic_write (gnss18_t *ctx, uint8_t *data_in, uint8_t len)
 GNSS 18 data writing function. More...
 
err_t gnss18_generic_read (gnss18_t *ctx, uint8_t *data_out, uint8_t len)
 GNSS 18 data reading function. More...
 
void gnss18_set_rst_pin (gnss18_t *ctx, uint8_t state)
 GNSS 18 set RST pin function. More...
 
uint8_t gnss18_get_int_pin (gnss18_t *ctx)
 GNSS 18 get INT pin function. More...
 
void gnss18_reset_device (gnss18_t *ctx)
 GNSS 18 reset device function. More...
 
err_t gnss18_parse_gpgga (uint8_t *rsp_buf, uint8_t gpgga_element, uint8_t *element_data)
 GNSS 18 parse GPGGA function. More...
 

Detailed Description

This file contains API for GNSS 18 Click Driver.

Typedef Documentation

◆ gnss18_master_io_t

typedef err_t(* gnss18_master_io_t) (struct gnss18_s *, uint8_t *, uint8_t)

GNSS 18 Click driver interface.

Definition of driver interface of GNSS 18 Click driver. Driver serial interface.

◆ gnss18_t

typedef struct gnss18_s gnss18_t

GNSS 18 Click context object.

Context object definition of GNSS 18 Click driver.

Enumeration Type Documentation

◆ gnss18_drv_t

GNSS 18 Click driver selector.

Selects target driver interface of GNSS 18 Click driver.

Enumerator
GNSS18_DRV_SEL_UART 

UART driver descriptor.

GNSS18_DRV_SEL_I2C 

I2C driver descriptor.

◆ gnss18_return_value_t

GNSS 18 Click return value data.

Predefined enum values for driver return values.

Enumerator
GNSS18_OK 
GNSS18_ERROR