LibDriver MFRC522  1.0.0
MFRC522 full-featured driver
driver_mfrc522.h File Reference

driver mfrc522 header file More...

#include <stdio.h>
#include <stdint.h>
#include <string.h>

Go to the source code of this file.

Data Structures

struct  mfrc522_handle_s
 mfrc522 handle structure definition More...
 
struct  mfrc522_info_s
 mfrc522 information structure definition More...
 

Macros

#define DRIVER_MFRC522_LINK_INIT(HANDLE, STRUCTURE)   memset(HANDLE, 0, sizeof(STRUCTURE))
 initialize mfrc522_handle_t structure More...
 
#define DRIVER_MFRC522_LINK_RESET_GPIO_INIT(HANDLE, FUC)   (HANDLE)->reset_gpio_init = FUC
 link reset_gpio_init function More...
 
#define DRIVER_MFRC522_LINK_RESET_GPIO_DEINIT(HANDLE, FUC)   (HANDLE)->reset_gpio_deinit = FUC
 link reset_gpio_deinit function More...
 
#define DRIVER_MFRC522_LINK_RESET_GPIO_WRITE(HANDLE, FUC)   (HANDLE)->reset_gpio_write = FUC
 link reset_gpio_write function More...
 
#define DRIVER_MFRC522_LINK_IIC_INIT(HANDLE, FUC)   (HANDLE)->iic_init = FUC
 link iic_init function More...
 
#define DRIVER_MFRC522_LINK_IIC_DEINIT(HANDLE, FUC)   (HANDLE)->iic_deinit = FUC
 link iic_deinit function More...
 
#define DRIVER_MFRC522_LINK_IIC_WRITE(HANDLE, FUC)   (HANDLE)->iic_write = FUC
 link iic_write function More...
 
#define DRIVER_MFRC522_LINK_IIC_READ(HANDLE, FUC)   (HANDLE)->iic_read = FUC
 link iic_read function More...
 
#define DRIVER_MFRC522_LINK_UART_INIT(HANDLE, FUC)   (HANDLE)->uart_init = FUC
 link uart_init function More...
 
#define DRIVER_MFRC522_LINK_UART_DEINIT(HANDLE, FUC)   (HANDLE)->uart_deinit = FUC
 link uart_deinit function More...
 
#define DRIVER_MFRC522_LINK_UART_READ(HANDLE, FUC)   (HANDLE)->uart_read = FUC
 link uart_read function More...
 
#define DRIVER_MFRC522_LINK_UART_WRITE(HANDLE, FUC)   (HANDLE)->uart_write = FUC
 link uart_write function More...
 
#define DRIVER_MFRC522_LINK_UART_FLUSH(HANDLE, FUC)   (HANDLE)->uart_flush = FUC
 link uart_flush function More...
 
#define DRIVER_MFRC522_LINK_SPI_INIT(HANDLE, FUC)   (HANDLE)->spi_init = FUC
 link spi_init function More...
 
#define DRIVER_MFRC522_LINK_SPI_DEINIT(HANDLE, FUC)   (HANDLE)->spi_deinit = FUC
 link spi_deinit function More...
 
#define DRIVER_MFRC522_LINK_SPI_READ(HANDLE, FUC)   (HANDLE)->spi_read = FUC
 link spi_read function More...
 
#define DRIVER_MFRC522_LINK_SPI_WRITE(HANDLE, FUC)   (HANDLE)->spi_write = FUC
 link spi_write function More...
 
#define DRIVER_MFRC522_LINK_DELAY_MS(HANDLE, FUC)   (HANDLE)->delay_ms = FUC
 link delay_ms function More...
 
#define DRIVER_MFRC522_LINK_DEBUG_PRINT(HANDLE, FUC)   (HANDLE)->debug_print = FUC
 link debug_print function More...
 
#define DRIVER_MFRC522_LINK_RECEIVE_CALLBACK(HANDLE, FUC)   (HANDLE)->receive_callback = FUC
 link receive_callback function More...
 

Typedefs

typedef struct mfrc522_handle_s mfrc522_handle_t
 mfrc522 handle structure definition More...
 
typedef struct mfrc522_info_s mfrc522_info_t
 mfrc522 information structure definition More...
 

Enumerations

enum  mfrc522_interface_t { MFRC522_INTERFACE_IIC = 0x00 , MFRC522_INTERFACE_SPI = 0x01 , MFRC522_INTERFACE_UART = 0x02 }
 mfrc522 interface enumeration definition More...
 
enum  mfrc522_bool_t { MFRC522_BOOL_FALSE = 0x00 , MFRC522_BOOL_TRUE = 0x01 }
 mfrc522 bool enumeration definition More...
 
enum  mfrc522_command_t {
  MFRC522_COMMAND_IDLE = 0x00 , MFRC522_COMMAND_MEM = 0x01 , MFRC522_COMMAND_RANDOM_ID = 0x02 , MFRC522_COMMAND_CALC_CRC = 0x03 ,
  MFRC522_COMMAND_TRANSMIT = 0x04 , MFRC522_COMMAND_NO_CHANGE = 0x07 , MFRC522_COMMAND_RECEIVE = 0x08 , MFRC522_COMMAND_TRANSCEIVE = 0x0C ,
  MFRC522_COMMAND_MF_AUTHENT = 0x0E , MFRC522_COMMAND_SOFT_RESET = 0x0F
}
 mfrc522 command enumeration definition More...
 
enum  mfrc522_interrupt1_t {
  MFRC522_INTERRUPT1_TX = 6 , MFRC522_INTERRUPT1_RX = 5 , MFRC522_INTERRUPT1_IDLE = 4 , MFRC522_INTERRUPT1_HI_ALERT = 3 ,
  MFRC522_INTERRUPT1_LO_ALERT = 2 , MFRC522_INTERRUPT1_ERR = 1 , MFRC522_INTERRUPT1_TIMER = 0
}
 mfrc522 interrupt1 enumeration definition More...
 
enum  mfrc522_interrupt2_t { MFRC522_INTERRUPT2_MFIN_ACT = 4 , MFRC522_INTERRUPT2_CRC = 2 }
 mfrc522 interrupt2 enumeration definition More...
 
enum  mfrc522_interrupt_t {
  MFRC522_INTERRUPT_MFIN_ACT = MFRC522_INTERRUPT2_MFIN_ACT + 8 , MFRC522_INTERRUPT_CRC = MFRC522_INTERRUPT2_CRC + 8 , MFRC522_INTERRUPT_TX = MFRC522_INTERRUPT1_TX , MFRC522_INTERRUPT_RX = MFRC522_INTERRUPT1_RX ,
  MFRC522_INTERRUPT_IDLE = MFRC522_INTERRUPT1_IDLE , MFRC522_INTERRUPT_HI_ALERT = MFRC522_INTERRUPT1_HI_ALERT , MFRC522_INTERRUPT_LO_ALERT = MFRC522_INTERRUPT1_LO_ALERT , MFRC522_INTERRUPT_ERR = MFRC522_INTERRUPT1_ERR ,
  MFRC522_INTERRUPT_TIMER = MFRC522_INTERRUPT1_TIMER
}
 mfrc522 interrupt1 enumeration definition More...
 
enum  mfrc522_interrupt_pin_type_t { MFRC522_INTERRUPT_PIN_TYPE_STANDARD_CMOS = 1 , MFRC522_INTERRUPT_PIN_TYPE_OPEN_DRAIN = 0 }
 mfrc522 interrupt pin type enumeration definition More...
 
enum  mfrc522_interrupt_mark_t { MFRC522_INTERRUPT_MARK_SET = 1 , MFRC522_INTERRUPT_MARK_CLEARED = 0 }
 mfrc522 interrupt mark enumeration definition More...
 
enum  mfrc522_error_t {
  MFRC522_ERROR_WR = (1 << 7) , MFRC522_ERROR_TEMP = (1 << 6) , MFRC522_ERROR_BUFFER_OVER_FLOW = (1 << 4) , MFRC522_ERROR_COLL = (1 << 3) ,
  MFRC522_ERROR_CRC = (1 << 2) , MFRC522_ERROR_PARITY = (1 << 1) , MFRC522_ERROR_PROTOCOL = (1 << 0)
}
 mfrc522 error enumeration definition More...
 
enum  mfrc522_status1_t {
  MFRC522_STATUS1_CRC_OK = (1 << 6) , MFRC522_STATUS1_CRC_READY = (1 << 5) , MFRC522_STATUS1_IRQ = (1 << 4) , MFRC522_STATUS1_TRUNNING = (1 << 3) ,
  MFRC522_STATUS1_HI_ALERT = (1 << 1) , MFRC522_STATUS1_LO_ALERT = (1 << 0)
}
 mfrc522 status1 enumeration definition More...
 
enum  mfrc522_status2_t { MFRC522_STATUS2_MFCRYPTO1_ON = (1 << 3) }
 mfrc522 status2 enumeration definition More...
 
enum  mfrc522_modem_state_t {
  MFRC522_MODEM_STATE_IDLE = 0x00 , MFRC522_MODEM_STATE_WAIT_BIT_FRAMING = 0x01 , MFRC522_MODEM_STATE_TX_WAIT = 0x02 , MFRC522_MODEM_STATE_TRANSMITTING = 0x03 ,
  MFRC522_MODEM_STATE_RX_WAIT = 0x04 , MFRC522_MODEM_STATE_WAIT_DATA = 0x05 , MFRC522_MODEM_STATE_RECEIVING = 0x06
}
 mfrc522 modem state enumeration definition More...
 
enum  mfrc522_rx_align_t { MFRC522_RX_ALIGN_0 = 0 , MFRC522_RX_ALIGN_1 = 1 , MFRC522_RX_ALIGN_7 = 7 }
 mfrc522 rx align enumeration definition More...
 
enum  mfrc522_mfin_polarity_t { MFRC522_MFIN_POLARITY_LOW = 0 , MFRC522_MFIN_POLARITY_HIGH = 1 }
 mfrc522 mfin polarity enumeration definition More...
 
enum  mfrc522_crc_preset_t { MFRC522_CRC_PRESET_0000 = 0 , MFRC522_CRC_PRESET_6363 = 1 , MFRC522_CRC_PRESET_A671 = 2 , MFRC522_CRC_PRESET_FFFF = 3 }
 mfrc522 crc preset enumeration definition More...
 
enum  mfrc522_speed_t { MFRC522_SPEED_106_KBD = 0 , MFRC522_SPEED_212_KBD = 1 , MFRC522_SPEED_424_KBD = 2 , MFRC522_SPEED_848_KBD = 3 }
 mfrc522 speed enumeration definition More...
 
enum  mfrc522_antenna_driver_t {
  MFRC522_ANTENNA_DRIVER_INV_TX2_RF_ON = 7 , MFRC522_ANTENNA_DRIVER_INV_TX1_RF_ON = 6 , MFRC522_ANTENNA_DRIVER_INV_TX2_RF_OFF = 5 , MFRC522_ANTENNA_DRIVER_INV_TX1_RF_OFF = 4 ,
  MFRC522_ANTENNA_DRIVER_TX2_CW = 3 , MFRC522_ANTENNA_DRIVER_TX2_RF = 1 , MFRC522_ANTENNA_DRIVER_TX1_RF = 0
}
 mfrc522 antenna driver enumeration definition More...
 
enum  mfrc522_tx_input_t { MFRC522_TX_INPUT_3_STATE = 0 , MFRC522_TX_INPUT_INTERNAL_ENCODER = 1 , MFRC522_TX_INPUT_MFIN_PIN = 2 , MFRC522_TX_INPUT_CONTROL = 3 }
 mfrc522 tx input enumeration definition More...
 
enum  mfrc522_mfout_input_t {
  MFRC522_MFOUT_INPUT_3_STATE = 0 , MFRC522_MFOUT_INPUT_LOW = 1 , MFRC522_MFOUT_INPUT_HIGH = 2 , MFRC522_MFOUT_INPUT_TEST = 3 ,
  MFRC522_MFOUT_INPUT_INTERNAL_ENCODER = 4 , MFRC522_MFOUT_INPUT_TRANSMITTED = 5 , MFRC522_MFOUT_INPUT_RECEIVED = 7
}
 mfrc522 mfout input enumeration definition More...
 
enum  mfrc522_contactless_uart_input_t { MFRC522_CONTACTLESS_UART_INPUT_CONSTANT_LOW = 0 , MFRC522_CONTACTLESS_UART_MFIN_PIN = 1 , MFRC522_CONTACTLESS_UART_INTERNAL_ANALOG_MODULE = 2 , MFRC522_CONTACTLESS_UART_NRZ = 3 }
 mfrc522 contactless uart input enumeration definition More...
 
enum  mfrc522_channel_reception_t { MFRC522_CHANNEL_RECEPTION_STRONGER = 0 , MFRC522_CHANNEL_RECEPTION_STRONGER_FREEZE_SELECTED = 1 }
 mfrc522 channel reception enumeration definition More...
 
enum  mfrc522_rx_gain_t {
  MFRC522_RX_GAIN_18_DB = 2 , MFRC522_RX_GAIN_23_DB = 3 , MFRC522_RX_GAIN_33_DB = 4 , MFRC522_RX_GAIN_38_DB = 5 ,
  MFRC522_RX_GAIN_43_DB = 6 , MFRC522_RX_GAIN_48_DB = 7
}
 mfrc522 rx gain enumeration definition More...
 
enum  mfrc522_timer_gated_mode_t { MFRC522_TIMER_GATED_MODE_NONE = 0 , MFRC522_TIMER_GATED_MODE_MFIN = 1 , MFRC522_TIMER_GATED_MODE_AUX1 = 2 }
 mfrc522 timer gated mode enumeration definition More...
 
enum  mfrc522_test_analog_control_t {
  MFRC522_TEST_ANALOG_CONTROL_3_STATE = 0x0 , MFRC522_TEST_ANALOG_CONTROL_OUTPUT = 0x1 , MFRC522_TEST_ANALOG_CONTROL_TEST_SIGNAL_CORR1 = 0x2 , MFRC522_TEST_ANALOG_CONTROL_DAC_TEST_SIGNAL_MIN_LEVEL = 0x4 ,
  MFRC522_TEST_ANALOG_CONTROL_DAC_TEST_SIGNAL_ADC_I = 0x5 , MFRC522_TEST_ANALOG_CONTROL_DAC_TEST_SIGNAL_ADC_Q = 0x6 , MFRC522_TEST_ANALOG_CONTROL_SIGNAL_FOR_PRODUCTION = 0x8 , MFRC522_TEST_ANALOG_CONTROL_HIGH = 0xA ,
  MFRC522_TEST_ANALOG_CONTROL_LOW = 0xB , MFRC522_TEST_ANALOG_CONTROL_TX_ACTIVE = 0xC , MFRC522_TEST_ANALOG_CONTROL_RX_ACTIVE = 0xD , MFRC522_TEST_ANALOG_CONTROL_SUBCARRIER_DETECTED = 0xE ,
  MFRC522_TEST_ANALOG_CONTROL_DEFINED_BIT = 0xF
}
 mfrc522 test analog control enumeration definition More...
 

Functions

uint8_t mfrc522_info (mfrc522_info_t *info)
 get chip information More...
 
uint8_t mfrc522_set_interface (mfrc522_handle_t *handle, mfrc522_interface_t interface)
 set the chip interface More...
 
uint8_t mfrc522_get_interface (mfrc522_handle_t *handle, mfrc522_interface_t *interface)
 get the chip interface More...
 
uint8_t mfrc522_set_addr_pin (mfrc522_handle_t *handle, uint8_t addr_pin)
 set the iic address pin More...
 
uint8_t mfrc522_get_addr_pin (mfrc522_handle_t *handle, uint8_t *addr_pin)
 get the iic address pin More...
 
uint8_t mfrc522_irq_handler (mfrc522_handle_t *handle)
 irq handler More...
 
uint8_t mfrc522_init (mfrc522_handle_t *handle)
 initialize the chip More...
 
uint8_t mfrc522_deinit (mfrc522_handle_t *handle)
 close the chip More...
 
uint8_t mfrc522_transceiver (mfrc522_handle_t *handle, mfrc522_command_t command, uint8_t *in_buf, uint8_t in_len, uint8_t *out_buf, uint8_t *out_len, uint8_t *err, uint32_t ms)
 mfrc522 transceiver More...
 
uint8_t mfrc522_set_receiver_analog (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable the analog part of the receiver More...
 
uint8_t mfrc522_get_receiver_analog (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the analog part of the receiver status More...
 
uint8_t mfrc522_set_power_down (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable power down More...
 
uint8_t mfrc522_get_power_down (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get power down status More...
 
uint8_t mfrc522_set_command (mfrc522_handle_t *handle, mfrc522_command_t command)
 set the command More...
 
uint8_t mfrc522_get_command (mfrc522_handle_t *handle, mfrc522_command_t *command)
 get the command More...
 
uint8_t mfrc522_set_interrupt1 (mfrc522_handle_t *handle, mfrc522_interrupt1_t type, mfrc522_bool_t enable)
 enable or disable the interrupt1 More...
 
uint8_t mfrc522_get_interrupt1 (mfrc522_handle_t *handle, mfrc522_interrupt1_t type, mfrc522_bool_t *enable)
 get the interrupt1 status More...
 
uint8_t mfrc522_set_interrupt1_pin_invert (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable interrupt1 pin invert More...
 
uint8_t mfrc522_get_interrupt1_pin_invert (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the interrupt1 pin invert status More...
 
uint8_t mfrc522_set_interrupt1_mark (mfrc522_handle_t *handle, mfrc522_interrupt_mark_t mark)
 set the interrupt1 mark More...
 
uint8_t mfrc522_set_interrupt2 (mfrc522_handle_t *handle, mfrc522_interrupt2_t type, mfrc522_bool_t enable)
 enable or disable the interrupt2 More...
 
uint8_t mfrc522_get_interrupt2 (mfrc522_handle_t *handle, mfrc522_interrupt2_t type, mfrc522_bool_t *enable)
 get the interrupt2 status More...
 
uint8_t mfrc522_set_interrupt_pin_type (mfrc522_handle_t *handle, mfrc522_interrupt_pin_type_t type)
 set the interrupt pin type More...
 
uint8_t mfrc522_get_interrupt_pin_type (mfrc522_handle_t *handle, mfrc522_interrupt_pin_type_t *type)
 get the interrupt pin type More...
 
uint8_t mfrc522_set_interrupt2_mark (mfrc522_handle_t *handle, mfrc522_interrupt_mark_t mark)
 set the interrupt2 mark More...
 
uint8_t mfrc522_get_interrupt1_status (mfrc522_handle_t *handle, uint8_t *status)
 get the interrupt1 status More...
 
uint8_t mfrc522_get_interrupt2_status (mfrc522_handle_t *handle, uint8_t *status)
 get the interrupt2 status More...
 
uint8_t mfrc522_get_error (mfrc522_handle_t *handle, uint8_t *err)
 get the error More...
 
uint8_t mfrc522_get_status1 (mfrc522_handle_t *handle, uint8_t *status)
 get the status1 More...
 
uint8_t mfrc522_get_status2 (mfrc522_handle_t *handle, uint8_t *status)
 get the status2 More...
 
uint8_t mfrc522_get_modem_state (mfrc522_handle_t *handle, mfrc522_modem_state_t *state)
 get the modem state More...
 
uint8_t mfrc522_set_mifare_crypto1_on (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable mifare crypto1 on More...
 
uint8_t mfrc522_set_force_iic_high_speed (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable force iic high speed More...
 
uint8_t mfrc522_get_force_iic_high_speed (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the iic high speed status More...
 
uint8_t mfrc522_set_clear_temperature_error (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable clear temperature error More...
 
uint8_t mfrc522_get_clear_temperature_error (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the clear temperature error status More...
 
uint8_t mfrc522_set_fifo_data (mfrc522_handle_t *handle, uint8_t *data, uint8_t len)
 set the fifo data More...
 
uint8_t mfrc522_get_fifo_data (mfrc522_handle_t *handle, uint8_t *data, uint8_t len)
 get the fifo data More...
 
uint8_t mfrc522_get_fifo_level (mfrc522_handle_t *handle, uint8_t *level)
 get the fifo level More...
 
uint8_t mfrc522_flush_fifo (mfrc522_handle_t *handle)
 flush the fifo More...
 
uint8_t mfrc522_set_water_level (mfrc522_handle_t *handle, uint8_t level)
 set the water level More...
 
uint8_t mfrc522_get_water_level (mfrc522_handle_t *handle, uint8_t *level)
 get the water level More...
 
uint8_t mfrc522_stop_timer (mfrc522_handle_t *handle)
 stop the timer More...
 
uint8_t mfrc522_start_timer (mfrc522_handle_t *handle)
 start the timer More...
 
uint8_t mfrc522_get_rx_last_bits (mfrc522_handle_t *handle, uint8_t *bits)
 get the rx last bits More...
 
uint8_t mfrc522_start_send (mfrc522_handle_t *handle)
 start the transmission of data More...
 
uint8_t mfrc522_stop_send (mfrc522_handle_t *handle)
 stop the transmission of data More...
 
uint8_t mfrc522_set_tx_last_bits (mfrc522_handle_t *handle, uint8_t bits)
 set the tx last bits More...
 
uint8_t mfrc522_get_tx_last_bits (mfrc522_handle_t *handle, uint8_t *bits)
 get the tx last bits More...
 
uint8_t mfrc522_set_rx_align (mfrc522_handle_t *handle, mfrc522_rx_align_t align)
 set the rx align More...
 
uint8_t mfrc522_get_rx_align (mfrc522_handle_t *handle, mfrc522_rx_align_t *align)
 get the rx align More...
 
uint8_t mfrc522_set_value_clear_after_coll (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable value clear after coll More...
 
uint8_t mfrc522_get_value_clear_after_coll (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the value clear after coll status More...
 
uint8_t mfrc522_get_collision_position_not_valid (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the collision position not valid bit status More...
 
uint8_t mfrc522_get_collision_position (mfrc522_handle_t *handle, uint8_t *pos)
 get the collision position More...
 
uint8_t mfrc522_set_crc_msb_first (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable the crc msb first More...
 
uint8_t mfrc522_get_crc_msb_first (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the crc msb first More...
 
uint8_t mfrc522_set_tx_wait_rf (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable the rf tx wait More...
 
uint8_t mfrc522_get_tx_wait_rf (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the rf tx wait status More...
 
uint8_t mfrc522_set_mfin_polarity (mfrc522_handle_t *handle, mfrc522_mfin_polarity_t polarity)
 set the mfin polarity More...
 
uint8_t mfrc522_get_mfin_polarity (mfrc522_handle_t *handle, mfrc522_mfin_polarity_t *polarity)
 get the mfin polarity More...
 
uint8_t mfrc522_set_crc_preset (mfrc522_handle_t *handle, mfrc522_crc_preset_t preset)
 set the crc preset More...
 
uint8_t mfrc522_get_crc_preset (mfrc522_handle_t *handle, mfrc522_crc_preset_t *preset)
 get the crc preset More...
 
uint8_t mfrc522_set_tx_crc_generation (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable tx crc generation More...
 
uint8_t mfrc522_get_tx_crc_generation (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the tx crc generation status More...
 
uint8_t mfrc522_set_tx_speed (mfrc522_handle_t *handle, mfrc522_speed_t speed)
 set the tx speed More...
 
uint8_t mfrc522_get_tx_speed (mfrc522_handle_t *handle, mfrc522_speed_t *speed)
 get the tx speed More...
 
uint8_t mfrc522_set_modulation_invert (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable the modulation invert More...
 
uint8_t mfrc522_get_modulation_invert (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the modulation invert status More...
 
uint8_t mfrc522_set_rx_crc_generation (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable the rx crc generation More...
 
uint8_t mfrc522_get_rx_crc_generation (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the rx crc generation status More...
 
uint8_t mfrc522_set_rx_speed (mfrc522_handle_t *handle, mfrc522_speed_t speed)
 set the rx speed More...
 
uint8_t mfrc522_get_rx_speed (mfrc522_handle_t *handle, mfrc522_speed_t *speed)
 get the rx speed More...
 
uint8_t mfrc522_set_rx_no_error (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable rx no error More...
 
uint8_t mfrc522_get_rx_no_error (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the rx no error status More...
 
uint8_t mfrc522_set_rx_multiple (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable rx multiple More...
 
uint8_t mfrc522_get_rx_multiple (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the rx multiple status More...
 
uint8_t mfrc522_set_antenna_driver (mfrc522_handle_t *handle, mfrc522_antenna_driver_t driver, mfrc522_bool_t enable)
 enable or disable the antenna driver More...
 
uint8_t mfrc522_get_antenna_driver (mfrc522_handle_t *handle, mfrc522_antenna_driver_t driver, mfrc522_bool_t *enable)
 get the antenna driver status More...
 
uint8_t mfrc522_set_force_100_ask (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable force 100 ask More...
 
uint8_t mfrc522_get_force_100_ask (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the force 100 ask status More...
 
uint8_t mfrc522_set_tx_input (mfrc522_handle_t *handle, mfrc522_tx_input_t input)
 set the tx input More...
 
uint8_t mfrc522_get_tx_input (mfrc522_handle_t *handle, mfrc522_tx_input_t *input)
 get the tx input More...
 
uint8_t mfrc522_set_mfout_input (mfrc522_handle_t *handle, mfrc522_mfout_input_t input)
 set the mfout input More...
 
uint8_t mfrc522_get_mfout_input (mfrc522_handle_t *handle, mfrc522_mfout_input_t *input)
 get the mfout input More...
 
uint8_t mfrc522_set_contactless_uart_input (mfrc522_handle_t *handle, mfrc522_contactless_uart_input_t input)
 set the contactless uart input More...
 
uint8_t mfrc522_get_contactless_uart_input (mfrc522_handle_t *handle, mfrc522_contactless_uart_input_t *input)
 get the contactless uart input More...
 
uint8_t mfrc522_set_rx_wait (mfrc522_handle_t *handle, uint8_t t)
 set the rx wait More...
 
uint8_t mfrc522_get_rx_wait (mfrc522_handle_t *handle, uint8_t *t)
 get the rx wait More...
 
uint8_t mfrc522_set_min_level (mfrc522_handle_t *handle, uint8_t level)
 set the min level More...
 
uint8_t mfrc522_get_min_level (mfrc522_handle_t *handle, uint8_t *level)
 get the min level More...
 
uint8_t mfrc522_set_collision_level (mfrc522_handle_t *handle, uint8_t level)
 set the collision level More...
 
uint8_t mfrc522_get_collision_level (mfrc522_handle_t *handle, uint8_t *level)
 get the collision level More...
 
uint8_t mfrc522_set_channel_reception (mfrc522_handle_t *handle, mfrc522_channel_reception_t reception)
 set the channel reception More...
 
uint8_t mfrc522_get_channel_reception (mfrc522_handle_t *handle, mfrc522_channel_reception_t *reception)
 get the channel reception More...
 
uint8_t mfrc522_set_fix_iq (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable fix iq More...
 
uint8_t mfrc522_get_fix_iq (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the fix iq status More...
 
uint8_t mfrc522_set_timer_prescal_even (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable timer prescal even More...
 
uint8_t mfrc522_get_timer_prescal_even (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the timer prescal even status More...
 
uint8_t mfrc522_set_timer_constant_reception (mfrc522_handle_t *handle, uint8_t t)
 set the timer constant reception More...
 
uint8_t mfrc522_get_timer_constant_reception (mfrc522_handle_t *handle, uint8_t *t)
 get the timer constant reception More...
 
uint8_t mfrc522_set_timer_constant_sync (mfrc522_handle_t *handle, uint8_t t)
 set the timer constant sync More...
 
uint8_t mfrc522_get_timer_constant_sync (mfrc522_handle_t *handle, uint8_t *t)
 get the timer constant sync More...
 
uint8_t mfrc522_set_tx_wait (mfrc522_handle_t *handle, uint8_t t)
 set the tx wait More...
 
uint8_t mfrc522_get_tx_wait (mfrc522_handle_t *handle, uint8_t *t)
 get the tx wait More...
 
uint8_t mfrc522_set_parity_disable (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable parity disable More...
 
uint8_t mfrc522_get_parity_disable (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the parity disable status More...
 
uint8_t mfrc522_set_serial_speed (mfrc522_handle_t *handle, uint8_t t0, uint8_t t1)
 set the serial speed More...
 
uint8_t mfrc522_get_serial_speed (mfrc522_handle_t *handle, uint8_t *t0, uint8_t *t1)
 get the serial speed More...
 
uint8_t mfrc522_get_crc (mfrc522_handle_t *handle, uint16_t *crc)
 get the crc More...
 
uint8_t mfrc522_set_modulation_width (mfrc522_handle_t *handle, uint8_t width)
 set the modulation width More...
 
uint8_t mfrc522_get_modulation_width (mfrc522_handle_t *handle, uint8_t *width)
 get the modulation width More...
 
uint8_t mfrc522_set_rx_gain (mfrc522_handle_t *handle, mfrc522_rx_gain_t gain)
 set the rx gain More...
 
uint8_t mfrc522_get_rx_gain (mfrc522_handle_t *handle, mfrc522_rx_gain_t *gain)
 get the rx gain More...
 
uint8_t mfrc522_set_cwgsn (mfrc522_handle_t *handle, uint8_t n)
 set the cwgsn More...
 
uint8_t mfrc522_get_cwgsn (mfrc522_handle_t *handle, uint8_t *n)
 get the cwgsn More...
 
uint8_t mfrc522_set_modgsn (mfrc522_handle_t *handle, uint8_t n)
 set the modgsn More...
 
uint8_t mfrc522_get_modgsn (mfrc522_handle_t *handle, uint8_t *n)
 get the modgsn More...
 
uint8_t mfrc522_set_cwgsp (mfrc522_handle_t *handle, uint8_t n)
 set the cwgsp More...
 
uint8_t mfrc522_get_cwgsp (mfrc522_handle_t *handle, uint8_t *n)
 get the cwgsp More...
 
uint8_t mfrc522_set_modgsp (mfrc522_handle_t *handle, uint8_t n)
 set the modgsp More...
 
uint8_t mfrc522_get_modgsp (mfrc522_handle_t *handle, uint8_t *n)
 get the modgsp More...
 
uint8_t mfrc522_set_timer_auto (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable timer auto More...
 
uint8_t mfrc522_get_timer_auto (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the timer auto status More...
 
uint8_t mfrc522_set_timer_gated_mode (mfrc522_handle_t *handle, mfrc522_timer_gated_mode_t mode)
 set the timer gated mode More...
 
uint8_t mfrc522_get_timer_gated_mode (mfrc522_handle_t *handle, mfrc522_timer_gated_mode_t *mode)
 get the timer gated mode More...
 
uint8_t mfrc522_set_timer_auto_restart (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable timer auto restart More...
 
uint8_t mfrc522_get_timer_auto_restart (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the timer auto restart status More...
 
uint8_t mfrc522_set_timer_prescaler (mfrc522_handle_t *handle, uint16_t t)
 set the timer prescaler More...
 
uint8_t mfrc522_get_timer_prescaler (mfrc522_handle_t *handle, uint16_t *t)
 get the timer prescaler More...
 
uint8_t mfrc522_set_timer_reload (mfrc522_handle_t *handle, uint16_t reload)
 set the timer reload More...
 
uint8_t mfrc522_get_timer_reload (mfrc522_handle_t *handle, uint16_t *reload)
 get the timer reload More...
 
uint8_t mfrc522_get_timer_counter (mfrc522_handle_t *handle, uint16_t *cnt)
 get the timer counter More...
 
uint8_t mfrc522_set_test_bus_signal_1 (mfrc522_handle_t *handle, uint8_t s)
 set the test bus signal 1 More...
 
uint8_t mfrc522_get_test_bus_signal_1 (mfrc522_handle_t *handle, uint8_t *s)
 get the test bus signal 1 More...
 
uint8_t mfrc522_set_test_bus_signal_2 (mfrc522_handle_t *handle, uint8_t s)
 set the test bus signal 2 More...
 
uint8_t mfrc522_get_test_bus_signal_2 (mfrc522_handle_t *handle, uint8_t *s)
 get the test bus signal 2 More...
 
uint8_t mfrc522_set_test_bus_flip (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable test bus flip More...
 
uint8_t mfrc522_get_test_bus_flip (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the test bus flip status More...
 
uint8_t mfrc522_set_test_prbs9 (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable test prbs9 More...
 
uint8_t mfrc522_get_test_prbs9 (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the test prbs9 status More...
 
uint8_t mfrc522_set_test_prbs15 (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable test prbs15 More...
 
uint8_t mfrc522_get_test_prbs15 (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the test prbs15 status More...
 
uint8_t mfrc522_set_test_rs232_line (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable test rs232 line More...
 
uint8_t mfrc522_get_test_rs232_line (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the test rs232 line status More...
 
uint8_t mfrc522_set_test_pin_enable (mfrc522_handle_t *handle, uint8_t pin)
 set the test pin enable More...
 
uint8_t mfrc522_get_test_pin_enable (mfrc522_handle_t *handle, uint8_t *pin)
 get the test pin enable More...
 
uint8_t mfrc522_set_test_port_io (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable test port io More...
 
uint8_t mfrc522_get_test_port_io (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the test port io status More...
 
uint8_t mfrc522_set_test_pin_value (mfrc522_handle_t *handle, uint8_t value)
 set the test pin value More...
 
uint8_t mfrc522_get_test_pin_value (mfrc522_handle_t *handle, uint8_t *value)
 get the test pin value More...
 
uint8_t mfrc522_get_test_bus (mfrc522_handle_t *handle, uint8_t *bus)
 get the test bus More...
 
uint8_t mfrc522_set_test_amp_rcv (mfrc522_handle_t *handle, mfrc522_bool_t enable)
 enable or disable test amp rcv More...
 
uint8_t mfrc522_get_test_amp_rcv (mfrc522_handle_t *handle, mfrc522_bool_t *enable)
 get the test amp rcv status More...
 
uint8_t mfrc522_set_self_test (mfrc522_handle_t *handle, uint8_t test)
 set the self test More...
 
uint8_t mfrc522_get_self_test (mfrc522_handle_t *handle, uint8_t *test)
 get the self test More...
 
uint8_t mfrc522_get_version (mfrc522_handle_t *handle, uint8_t *id, uint8_t *version)
 get the version More...
 
uint8_t mfrc522_set_test_analog_control_aux_1 (mfrc522_handle_t *handle, mfrc522_test_analog_control_t control)
 set the test analog control aux 1 More...
 
uint8_t mfrc522_get_test_analog_control_aux_1 (mfrc522_handle_t *handle, mfrc522_test_analog_control_t *control)
 get the test analog control aux 1 More...
 
uint8_t mfrc522_set_test_analog_control_aux_2 (mfrc522_handle_t *handle, mfrc522_test_analog_control_t control)
 set the test analog control aux 2 More...
 
uint8_t mfrc522_get_test_analog_control_aux_2 (mfrc522_handle_t *handle, mfrc522_test_analog_control_t *control)
 get the test analog control aux 2 More...
 
uint8_t mfrc522_set_test_dac_1 (mfrc522_handle_t *handle, uint8_t dac)
 set the test dac 1 More...
 
uint8_t mfrc522_get_test_dac_1 (mfrc522_handle_t *handle, uint8_t *dac)
 get the test dac 1 More...
 
uint8_t mfrc522_set_test_dac_2 (mfrc522_handle_t *handle, uint8_t dac)
 set the test dac 2 More...
 
uint8_t mfrc522_get_test_dac_2 (mfrc522_handle_t *handle, uint8_t *dac)
 get the test dac 2 More...
 
uint8_t mfrc522_get_test_adc (mfrc522_handle_t *handle, uint8_t *adc_i, uint8_t *adc_q)
 get the test adc More...
 
uint8_t mfrc522_set_reg (mfrc522_handle_t *handle, uint8_t reg, uint8_t *buf, uint16_t len)
 set the chip register More...
 
uint8_t mfrc522_get_reg (mfrc522_handle_t *handle, uint8_t reg, uint8_t *buf, uint16_t len)
 get the chip register More...
 

Detailed Description

driver mfrc522 header file

Copyright (c) 2015 - present LibDriver All rights reserved

The MIT License (MIT)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Version
1.0.0
Author
Shifeng Li
Date
2022-05-31

history

Date Version Author Description
2022/05/31 1.0 Shifeng Li first upload

Definition in file driver_mfrc522.h.