Go to the documentation of this file.
35 #include "drv_digital_out.h"
36 #include "drv_digital_in.h"
59 #define LR2_CMD_SYS_GET_VER "sys get ver"
60 #define LR2_CMD_MAC_PAUSE "mac pause"
61 #define LR2_CMD_RADIO_SET_WDT "radio set wdt 0"
68 #define LR2_JM_OTAA "otaa"
69 #define LR2_JM_ABP "abp"
75 #define LR2_PL_CNF "cnf "
76 #define LR2_PL_UNCNF "uncnf "
82 #define LR2_MAX_DATA_SIZE 256
83 #define LR2_MAX_TRANSFER_SIZE 384
85 #define LR2_MAX_CMD_SIZE 64
91 #define LR2_MAX_RSP_SIZE 20
97 #define LR2_RESP_COUNT 100
103 #define LR2_TIMER_EXPIRED 50000
109 #define LR2_MAC_TX "mac tx "
110 #define LR2_JOIN "mac join "
111 #define LR2_RADIO_TX "radio tx "
112 #define LR2_RADIO_RX "radio rx "
119 #define DRV_RX_BUFFER_SIZE 300
137 #define LR2_MAP_MIKROBUS( cfg, mikrobus ) \
138 cfg.tx_pin = MIKROBUS( mikrobus, MIKROBUS_TX ); \
139 cfg.rx_pin = MIKROBUS( mikrobus, MIKROBUS_RX ); \
140 cfg.rst = MIKROBUS( mikrobus, MIKROBUS_RST ); \
141 cfg.rts = MIKROBUS( mikrobus, MIKROBUS_CS ); \
142 cfg.cts = MIKROBUS( mikrobus, MIKROBUS_INT )
155 uint16_t rx_buffer_len;
192 bool callback_default;
193 void ( *callback_resp )(
char *response );
256 uart_data_bits_t data_bit;
257 uart_parity_t parity_bit;
258 uart_stop_bits_t stop_bit;
384 uint8_t
lr2_join (
lr2_t *ctx,
char *join_mode,
char *response );
396 uint8_t
lr2_rx (
lr2_t *ctx,
char *window_size,
char *response );
void lr2_isr_process(lr2_t *ctx)
Main Process.
void lr2_tick_isr(lr2_t *ctx)
Timer.
uint8_t lr2_join(lr2_t *ctx, char *join_mode, char *response)
Function for setting join mode.
int32_t lr2_generic_read(lr2_t *ctx, char *data_buf, uint16_t max_len)
LR 2 data reading function.
void lr2_default_cfg(lr2_t *ctx, bool cb_default, void(*response_p)(char *response))
LR 2 default configuration function.
err_t lr2_init(lr2_t *ctx, lr2_cfg_t *cfg)
LR 2 initialization function.
Timer Flags and Counter object definition.
Definition: lr2.h:162
uint8_t lr2_mac_tx(lr2_t *ctx, lr2_mac_t *mac)
Function for writing mac parameters.
Process Flags object definition.
Definition: lr2.h:176
void lr2_cmd(lr2_t *ctx, char *cmd, char *response)
Send command function.
void lr2_generic_write(lr2_t *ctx, char *data_buf, uint16_t len)
LR 2 data writing function.
void lr2_cfg_setup(lr2_cfg_t *cfg)
LR2 configuration object setup function.
lr2_return_value_t
LR 2 Click return value data.
Definition: lr2.h:265
void lr2_tick_conf(lr2_t *ctx, uint32_t timer_limit)
Timer Configuration.
void lr2_put_char(lr2_t *ctx, char data_in)
Function for write char.
Mac object definition.
Definition: lr2.h:200
#define LR2_MAX_TRANSFER_SIZE
Definition: lr2.h:82
Response object definition.
Definition: lr2.h:187
Click buffers object definition.
Definition: lr2.h:150
#define DRV_RX_BUFFER_SIZE
LR 2 driver buffer size.
Definition: lr2.h:118
void lr2_rx_isr(lr2_t *ctx, char rx_input)
Receiver.
LR 2 Click configuration object.
Definition: lr2.h:241
uint8_t lr2_rx(lr2_t *ctx, char *window_size, char *response)
Main receiver function
uint8_t lr2_tx(lr2_t *ctx, char *buffer)
Main tnanceiver function.
LR 2 Click context object.
Definition: lr2.h:213