magicrfid 2.0.0.0
magicrfid.h File Reference

This file contains API for Magic RFID Click Driver. More...

#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  magicrfid_t
 Magic RFID Click context object. More...
 
struct  magicrfid_cfg_t
 Magic RFID Click configuration object. More...
 
struct  magicrfid_command_t
 Magic RFID Click command object. More...
 
struct  magicrfid_response_t
 Magic RFID Click response object. More...
 
struct  magicrfid_epc_t
 Magic RFID Click EPC data object. More...
 

Macros

#define MAGICRFID_OPCODE_VERSION   0x03
 Magic RFID control commands.
 
#define MAGICRFID_OPCODE_SET_BAUD_RATE   0x06
 
#define MAGICRFID_OPCODE_READ_TAG_ID_SINGLE   0x21
 
#define MAGICRFID_OPCODE_READ_TAG_ID_MULTIPLE   0x22
 
#define MAGICRFID_OPCODE_WRITE_TAG_ID   0x23
 
#define MAGICRFID_OPCODE_WRITE_TAG_DATA   0x24
 
#define MAGICRFID_OPCODE_KILL_TAG   0x26
 
#define MAGICRFID_OPCODE_READ_TAG_DATA   0x28
 
#define MAGICRFID_OPCODE_CLEAR_TAG_ID_BUFFER   0x2A
 
#define MAGICRFID_OPCODE_MULTI_PROTOCOL_TAG_OP   0x2F
 
#define MAGICRFID_OPCODE_GET_READ_TX_POWER   0x62
 
#define MAGICRFID_OPCODE_GET_WRITE_TX_POWER   0x64
 
#define MAGICRFID_OPCODE_GET_POWER_MODE   0x68
 
#define MAGICRFID_OPCODE_GET_READER_OPTIONAL_PARAMS   0x6A
 
#define MAGICRFID_OPCODE_GET_PROTOCOL_PARAM   0x6B
 
#define MAGICRFID_OPCODE_SET_ANTENNA_PORT   0x91
 
#define MAGICRFID_OPCODE_SET_TAG_PROTOCOL   0x93
 
#define MAGICRFID_OPCODE_SET_READ_TX_POWER   0x92
 
#define MAGICRFID_OPCODE_SET_WRITE_TX_POWER   0x94
 
#define MAGICRFID_OPCODE_SET_REGION   0x97
 
#define MAGICRFID_OPCODE_SET_READER_OPTIONAL_PARAMS   0x9A
 
#define MAGICRFID_OPCODE_SET_PROTOCOL_PARAM   0x9B
 
#define MAGICRFID_REGION_INDIA   0x04
 Magic RFID region commands.
 
#define MAGICRFID_REGION_JAPAN   0x05
 
#define MAGICRFID_REGION_CHINA   0x06
 
#define MAGICRFID_REGION_EUROPE   0x08
 
#define MAGICRFID_REGION_KOREA   0x09
 
#define MAGICRFID_REGION_AUSTRALIA   0x0B
 
#define MAGICRFID_REGION_NEWZEALAND   0x0C
 
#define MAGICRFID_REGION_NORTHAMERICA   0x0D
 
#define MAGICRFID_REGION_OPEN   0xFF
 
#define MAGICRFID_TAG_PROTOCOL_NONE   0x00
 Magic RFID tag protocol commands.
 
#define MAGICRFID_TAG_PROTOCOL_ISO180006B   0x03
 
#define MAGICRFID_TAG_PROTOCOL_GEN2   0x05
 
#define MAGICRFID_TAG_PROTOCOL_ISO180006B_UCODE   0x06
 
#define MAGICRFID_TAG_PROTOCOL_IPX64   0x07
 
#define MAGICRFID_TAG_PROTOCOL_IPX256   0x08
 
#define MAGICRFID_TAG_PROTOCOL_ATA   0x1D
 
#define MAGICRFID_NORMAL_DELAY_TIME   50
 Magic RFID timeout and delays.
 
#define MAGICRFID_LONG_DELAY_TIME   100
 
#define MAGICRFID_TIMEOUT_MS   3000
 
#define MAGICRFID_HEADER   0xFF
 Magic RFID command and response settings.
 
#define MAGICRFID_COMMAND_MAX_DATA_LEN   250
 
#define MAGICRFID_RESPONSE_MAX_DATA_LEN   248
 
#define MAGICRFID_EPC_MAX_DATA_LEN   16
 
#define MAGICRFID_TX_DRV_BUFFER_SIZE   255
 Magic RFID driver buffer size.
 
#define MAGICRFID_RX_DRV_BUFFER_SIZE   255
 
#define MAGICRFID_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.
 

Enumerations

enum  magicrfid_return_value_t { MAGICRFID_OK = 0 , MAGICRFID_ERROR = -1 }
 Magic RFID Click return value data. More...
 

Functions

void magicrfid_cfg_setup (magicrfid_cfg_t *cfg)
 Magic RFID configuration object setup function.
 
err_t magicrfid_init (magicrfid_t *ctx, magicrfid_cfg_t *cfg)
 Magic RFID initialization function.
 
void magicrfid_default_cfg (magicrfid_t *ctx)
 Magic RFID default configuration function.
 
err_t magicrfid_generic_write (magicrfid_t *ctx, uint8_t *data_buf, uint16_t len)
 Magic RFID data writing function.
 
err_t magicrfid_generic_read (magicrfid_t *ctx, uint8_t *data_buf, uint16_t max_len)
 Magic RFID data reading function.
 
void magicrfid_device_reset (magicrfid_t *ctx)
 Magic RFID device reset function.
 
void magicrfid_send_command (magicrfid_t *ctx, magicrfid_command_t cmd)
 Magic RFID send command function.
 
err_t magicrfid_get_response (magicrfid_t *ctx, magicrfid_response_t *rsp)
 Magic RFID get response function.
 
int8_t magicrfid_parse_tag_rssi (magicrfid_response_t rsp)
 Parse Tag RSSI value.
 
uint32_t magicrfid_parse_tag_freq (magicrfid_response_t rsp)
 Parse Tag Freq value.
 
void magicrfid_parse_tag_epc (magicrfid_response_t rsp, magicrfid_epc_t *epc)
 Parse Tag EPC bytes.
 
void magicrfid_set_tag_protocol (magicrfid_t *ctx, uint8_t protocol)
 Magic RFID set protocol function.
 
void magicrfid_set_region (magicrfid_t *ctx, uint8_t region)
 Magic RFID set region function.
 
void magicrfid_set_antenna_port (magicrfid_t *ctx)
 Magic RFID turn on antenna port function.
 
void magicrfid_set_baud_rate (magicrfid_t *ctx, uint32_t baud_rate)
 Magic RFID set baud rate function.
 
void magicrfid_set_read_power (magicrfid_t *ctx, uint16_t power_setting)
 Magic RFID set read function power.
 
void magicrfid_set_write_power (magicrfid_t *ctx, uint16_t power_setting)
 Magic RFID set write function power.
 
void magicrfid_set_reader_config (magicrfid_t *ctx, uint8_t option1, uint8_t option2)
 Magic RFID set reader configuration function.
 
void magicrfid_start_reading (magicrfid_t *ctx)
 Magic RFID enable reading function.
 
void magicrfid_clear_buffers (magicrfid_t *ctx)
 Magic RFID clear buffers function.
 

Detailed Description

This file contains API for Magic RFID Click Driver.

Enumeration Type Documentation

◆ magicrfid_return_value_t

Magic RFID Click return value data.

Predefined enum values for driver return values.

Enumerator
MAGICRFID_OK 
MAGICRFID_ERROR