WISP ERT (Client)  1.0.0
The WISP Extended Runtime (WISP side)
runtime.c File Reference
#include <stdbool.h>
#include <string.h>
#include <stdlib.h>
#include <wisp-base.h>
#include <ert/rpc.h>
#include <ert/runtime.h>

Functions

static void ert_read_callback (void)
 WISP RFID Read callback. More...
 
static void ert_blockwrite_callback (void)
 WISP RFID Blockwrite callback. More...
 
static WIO_CALLBACK (ert_enter_main)
 
static WIO_CALLBACK (ert_on_recv)
 
static WIO_CALLBACK (ert_on_connect)
 
void ert_user_suspend (ert_status_t *_status_var, uint16_t result_size, void *_result_var)
 Suspend execution of user context. More...
 
 WIO_CALLBACK (ert_user_resume)
 
void main (void)
 WISP program entry point. More...
 

Variables

uint16_t ert_wisp_id = 0x5101
 WISP ID. More...
 
wtp_tert_wtp_ep = WIO_INST_PTR(wtp_t)
 WTP endpoint. More...
 
urpc_t * ert_rpc_ep = WIO_INST_PTR(urpc_t)
 u-RPC endpoint More...
 
static uint8_t blockwrite_buffer [_ERT_BW_SIZE] = {0}
 Blockwrite data buffer. More...
 
static WISP_dataStructInterface_t wisp_data
 WISP data. More...
 
static bool read_flag = false
 RFID Read flag. More...
 
static bool blockwrite_flag = false
 RFID BlockWrite flag. More...
 
static ucontext_t runtime_ctx
 ERT runtime context. More...
 
static ucontext_t user_ctx
 ERT user context. More...
 
static ert_status_tuser_status_var
 User context status variable. More...
 
static void * user_result_var
 User context result variable. More...
 
static uint16_t user_result_size
 User context result size. More...
 
static uint8_t epc_update_counter = 0
 EPC update counter. More...
 

Function Documentation

◆ ert_blockwrite_callback()

static void ert_blockwrite_callback ( void  )
static

WISP RFID Blockwrite callback.

◆ ert_read_callback()

static void ert_read_callback ( void  )
static

WISP RFID Read callback.

◆ ert_user_suspend()

void ert_user_suspend ( ert_status_t _status_var,
uint16_t  result_size,
void *  _result_var 
)

Suspend execution of user context.

◆ main()

void main ( void  )

WISP program entry point.

◆ WIO_CALLBACK() [1/4]

static WIO_CALLBACK ( ert_enter_main  )
static

Function that starts ERT user main routine.

◆ WIO_CALLBACK() [2/4]

static WIO_CALLBACK ( ert_on_recv  )
static

ERT WTP data received callback.

◆ WIO_CALLBACK() [3/4]

static WIO_CALLBACK ( ert_on_connect  )
static

ERT WTP connected callback.

◆ WIO_CALLBACK() [4/4]

WIO_CALLBACK ( ert_user_resume  )

Variable Documentation

◆ blockwrite_buffer

uint8_t blockwrite_buffer[_ERT_BW_SIZE] = {0}
static

Blockwrite data buffer.

◆ blockwrite_flag

bool blockwrite_flag = false
static

RFID BlockWrite flag.

◆ epc_update_counter

uint8_t epc_update_counter = 0
static

EPC update counter.

◆ ert_rpc_ep

urpc_t* ert_rpc_ep = WIO_INST_PTR(urpc_t)

u-RPC endpoint

ERT u-RPC endpoint.

◆ ert_wisp_id

uint16_t ert_wisp_id = 0x5101

WISP ID.

◆ ert_wtp_ep

wtp_t* ert_wtp_ep = WIO_INST_PTR(wtp_t)

WTP endpoint.

ERT WTP endpoint.

◆ read_flag

bool read_flag = false
static

RFID Read flag.

◆ runtime_ctx

ucontext_t runtime_ctx
static

ERT runtime context.

◆ user_ctx

ucontext_t user_ctx
static

ERT user context.

◆ user_result_size

uint16_t user_result_size
static

User context result size.

◆ user_result_var

void* user_result_var
static

User context result variable.

◆ user_status_var

ert_status_t* user_status_var
static

User context status variable.

◆ wisp_data

WISP_dataStructInterface_t wisp_data
static

WISP data.