lr9  2.1.0.0
Data Structures | Macros | Enumerations | Functions
lr9.h File Reference

This file contains API for LR 9 Click Driver. More...

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

Go to the source code of this file.

Data Structures

struct  lr9_t
 LR 9 Click context object. More...
 
struct  lr9_cfg_t
 LR 9 Click configuration object. More...
 

Macros

#define LR9_CMD_AT   "AT"
 LR 9 AT Command. More...
 
#define LR9_CMD_CGMI   "CGMI"
 LR 9 LoRaWAN General Command Sets commands. More...
 
#define LR9_CMD_CGMM   "CGMM"
 
#define LR9_CMD_CGMR   "CGMR"
 
#define LR9_CMD_CGSN   "CGSN"
 
#define LR9_CMD_CGBR   "CGBR"
 
#define LR9_CMD_CJOINMODE   "CJOINMODE"
 LR 9 LoRaWAN Network Related Parameter Setup Command Sets commands. More...
 
#define LR9_CMD_CDEVEUI   "CDEVEUI"
 
#define LR9_CMD_CAPPEUI   "CAPPEUI"
 
#define LR9_CMD_CAPPKEY   "CAPPKEY"
 
#define LR9_CMD_CDEVADDR   "CDEVADDR"
 
#define LR9_CMD_CAPPSKEY   "CAPPSKEY"
 
#define LR9_CMD_CNWKSKEY   "CNWKSKEY"
 
#define LR9_CMD_CFREQBANDMASK   "CFREQBANDMASK"
 
#define LR9_CMD_CULDLMODE   "CULDLMODE"
 
#define LR9_CMD_CADDMUTICAST   "CADDMUTICAST"
 
#define LR9_CMD_CDELMUTICAST   "CDELMUTICAST"
 
#define LR9_CMD_CNUMMUTICAST   "CNUMMUTICAST"
 
#define LR9_CMD_CWORKMODE   "CWORKMODE"
 
#define LR9_CMD_CCLASS   "CCLASS"
 
#define LR9_CMD_CBL   "CBL"
 
#define LR9_CMD_CSTATUS   "CSTATUS"
 
#define LR9_CMD_CJOIN   "CJOIN"
 
#define LR9_CMD_CPINGSLOTINFOREQ   "CPINGSLOTINFOREQ"
 
#define LR9_CMD_DTRX   "DTRX"
 
#define LR9_CMD_DRX   "DRX"
 
#define LR9_CMD_CCONFIRM   "CCONFIRM"
 LR 9 LoRaWAN MAC Setup Command Sets. More...
 
#define LR9_CMD_CAPPPORT   "CAPPPORT"
 
#define LR9_CMD_CDATARATE   "CDATARATE"
 
#define LR9_CMD_CRSSI   "CRSSI"
 
#define LR9_CMD_CNBTRIALS   "CNBTRIALS"
 
#define LR9_CMD_CRM   "CRM"
 
#define LR9_CMD_CTXP   "CTXP"
 
#define LR9_CMD_CLINKCHECK   "CLINKCHECK"
 
#define LR9_CMD_CADR   "CADR"
 
#define LR9_CMD_CRXP   "CRXP"
 
#define LR9_CMD_CRX1DELAY   "CRX1DELAY"
 
#define LR9_CMD_CSAVE   "CSAVE"
 
#define LR9_CMD_CRESTORE   "CRESTORE"
 
#define LR9_CMD_IREBOOT   "IREBOOT"
 LR 9 Other Command Sets. More...
 
#define LR9_CMD_ILOGLVL   "ILOGLVL"
 
#define LR9_CMD_CKEYSPROTECT   "CKEYSPROTECT"
 LR 9 Private Command Sets. More...
 
#define LR9_CMD_CTXADDRSET   "CTXADDRSET"
 LR 9 LoRa Test Commands. More...
 
#define LR9_CMD_CADDRSET   "CADDRSET"
 
#define LR9_CMD_CTX   "CTX"
 
#define LR9_CMD_CRX   "CRX"
 
#define LR9_CMD_CRXS   "CRXS"
 
#define LR9_DTRX_CONFIG   "0"
 LR 9 Data Receive Configuration Commands. More...
 
#define LR9_DTRX_UNCONFIG   "1"
 
#define LR9_DTRX_CONFIG_DATA   0
 LR 9 configuration and limits data values. More...
 
#define LR9_DTRX_UNCONFIG_DATA   1
 
#define LR9_NB_TRIALS_MIN   1
 
#define LR9_NB_TRIALS_2   2
 
#define LR9_NB_TRIALS_MAX   15
 
#define LR9_DATA_FRAME_MAX   10
 
#define LR9_MSG_START_POS   16
 
#define LR9_SYMBOL_END_CMD   "\r\n"
 LR 9 control symbols. More...
 
#define LR9_SYMBOL_QUERY   "?"
 
#define LR9_SYMBOL_SET_VAL_CMD   "="
 
#define LR9_SYMBOL_PREFIX_CMD   "+"
 
#define LR9_SYMBOL_SEPARATOR   ","
 
#define LR9_SYMBOL_SPACE   " "
 
#define LR9_SYMBOL_NULL   ""
 
#define LR9_SYMBOL_QUOTE   "\""
 
#define LR9_ASCII_SPACE   0x20
 
#define LR9_ASCII_QUOTE   0x22
 
#define LR9_TX_DRV_BUFFER_SIZE   100
 LR 9 driver buffer size. More...
 
#define LR9_RX_DRV_BUFFER_SIZE   300
 
#define LR9_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping. More...
 

Enumerations

enum  lr9_return_value_t { LR9_OK = 0, LR9_ERROR = -1 }
 LR 9 Click return value data. More...
 
enum  lr9_en_set_t { LR9_EQUAL_DISABLE = 0, LR9_EQUAL_ENABLE }
 LR 9 Click enable equal to data symbol. More...
 

Functions

void lr9_cfg_setup (lr9_cfg_t *cfg)
 LR 9 configuration object setup function. More...
 
err_t lr9_init (lr9_t *ctx, lr9_cfg_t *cfg)
 LR 9 initialization function. More...
 
void lr9_hw_reset (lr9_t *ctx)
 LR 9 HW reset function. More...
 
void lr9_set_boot_pin (lr9_t *ctx, uint8_t state)
 LR 9 set BOOT pin state function. More...
 
err_t lr9_generic_write (lr9_t *ctx, uint8_t *data_in, uint16_t len)
 LR 9 data writing function. More...
 
err_t lr9_generic_read (lr9_t *ctx, uint8_t *data_out, uint16_t len)
 LR 9 data reading function. More...
 
err_t lr9_write_command (lr9_t *ctx, uint8_t *command, uint8_t *param)
 LR 9 command writing function. More...
 
err_t lr9_inquire_command (lr9_t *ctx, uint8_t *command, lr9_en_set_t en_set)
 LR 9 inquire writing function. More...
 
err_t lr9_send_data_frame (lr9_t *ctx, uint8_t confirm, uint8_t nbtrials, uint8_t *data_frame)
 LR 9 send data frame function. More...
 

Detailed Description

This file contains API for LR 9 Click Driver.

Enumeration Type Documentation

◆ lr9_en_set_t

LR 9 Click enable equal to data symbol.

Predefined enum values for driver enable equal to data symbol.

Enumerator
LR9_EQUAL_DISABLE 
LR9_EQUAL_ENABLE 

◆ lr9_return_value_t

LR 9 Click return value data.

Predefined enum values for driver return values.

Enumerator
LR9_OK 
LR9_ERROR