768 if ((in_len == 1) && (in_buf[0] == 0x26))
794 else if ((in_len == 1) && (in_buf[0] == 0x52))
820 else if ((in_len == 2) && (in_buf[0] == 0x93) && (in_buf[1] == 0x20))
860 else if ((in_len == 2) && (in_buf[0] == 0x95) && (in_buf[1] == 0x20))
900 else if ((in_len == 9) && (in_buf[0] == 0x93) && (in_buf[1] == 0x70))
919 else if ((in_len == 9) && (in_buf[0] == 0x95) && (in_buf[1] == 0x70))
938 else if ((in_len == 12) && ((in_buf[0] == 0x60) || (in_buf[0] == 0x61)))
957 if ((status & 0x08) == 0)
driver mfrc522 basic header file
mfrc522_interface_t
mfrc522 interface enumeration definition
uint8_t mfrc522_set_interrupt2(mfrc522_handle_t *handle, mfrc522_interrupt2_t type, mfrc522_bool_t enable)
enable or disable the interrupt2
uint8_t mfrc522_set_fix_iq(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable fix iq
uint8_t mfrc522_init(mfrc522_handle_t *handle)
initialize the chip
uint8_t mfrc522_set_mifare_crypto1_on(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable mifare crypto1 on
uint8_t mfrc522_set_rx_multiple(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable rx multiple
uint8_t mfrc522_set_timer_constant_sync(mfrc522_handle_t *handle, uint8_t t)
set the timer constant sync
uint8_t mfrc522_set_interface(mfrc522_handle_t *handle, mfrc522_interface_t interface)
set the chip interface
uint8_t mfrc522_set_interrupt_pin_type(mfrc522_handle_t *handle, mfrc522_interrupt_pin_type_t type)
set the interrupt pin type
uint8_t mfrc522_set_force_iic_high_speed(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable force iic high speed
uint8_t mfrc522_set_channel_reception(mfrc522_handle_t *handle, mfrc522_channel_reception_t reception)
set the channel reception
uint8_t mfrc522_set_rx_wait(mfrc522_handle_t *handle, uint8_t t)
set the rx wait
uint8_t mfrc522_irq_handler(mfrc522_handle_t *handle)
irq handler
uint8_t mfrc522_set_force_100_ask(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable force 100 ask
uint8_t mfrc522_get_status2(mfrc522_handle_t *handle, uint8_t *status)
get the status2
uint8_t mfrc522_set_interrupt1(mfrc522_handle_t *handle, mfrc522_interrupt1_t type, mfrc522_bool_t enable)
enable or disable the interrupt1
uint8_t mfrc522_set_rx_speed(mfrc522_handle_t *handle, mfrc522_speed_t speed)
set the rx speed
uint8_t mfrc522_set_parity_disable(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable parity disable
uint8_t mfrc522_set_crc_preset(mfrc522_handle_t *handle, mfrc522_crc_preset_t preset)
set the crc preset
uint8_t mfrc522_get_crc(mfrc522_handle_t *handle, uint16_t *crc)
get the crc
uint8_t mfrc522_set_water_level(mfrc522_handle_t *handle, uint8_t level)
set the water level
uint8_t mfrc522_set_tx_last_bits(mfrc522_handle_t *handle, uint8_t bits)
set the tx last bits
uint8_t mfrc522_set_interrupt1_pin_invert(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable interrupt1 pin invert
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
uint8_t mfrc522_set_rx_align(mfrc522_handle_t *handle, mfrc522_rx_align_t align)
set the rx align
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
uint8_t mfrc522_set_modgsp(mfrc522_handle_t *handle, uint8_t n)
set the modgsp
uint8_t mfrc522_set_mfin_polarity(mfrc522_handle_t *handle, mfrc522_mfin_polarity_t polarity)
set the mfin polarity
uint8_t mfrc522_set_timer_auto_restart(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable timer auto restart
uint8_t mfrc522_set_clear_temperature_error(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable clear temperature error
uint8_t mfrc522_set_modulation_invert(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable the modulation invert
uint8_t mfrc522_set_modulation_width(mfrc522_handle_t *handle, uint8_t width)
set the modulation width
uint8_t mfrc522_set_value_clear_after_coll(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable value clear after coll
uint8_t mfrc522_set_tx_input(mfrc522_handle_t *handle, mfrc522_tx_input_t input)
set the tx input
uint8_t mfrc522_set_rx_crc_generation(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable the rx crc generation
uint8_t mfrc522_set_tx_wait(mfrc522_handle_t *handle, uint8_t t)
set the tx wait
uint8_t mfrc522_stop_timer(mfrc522_handle_t *handle)
stop the timer
uint8_t mfrc522_set_cwgsn(mfrc522_handle_t *handle, uint8_t n)
set the cwgsn
uint8_t mfrc522_set_cwgsp(mfrc522_handle_t *handle, uint8_t n)
set the cwgsp
uint8_t mfrc522_set_timer_gated_mode(mfrc522_handle_t *handle, mfrc522_timer_gated_mode_t mode)
set the timer gated mode
uint8_t mfrc522_set_tx_speed(mfrc522_handle_t *handle, mfrc522_speed_t speed)
set the tx speed
uint8_t mfrc522_set_addr_pin(mfrc522_handle_t *handle, uint8_t addr_pin)
set the iic address pin
uint8_t mfrc522_set_tx_crc_generation(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable tx crc generation
uint8_t mfrc522_set_rx_gain(mfrc522_handle_t *handle, mfrc522_rx_gain_t gain)
set the rx gain
uint8_t mfrc522_set_timer_auto(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable timer auto
uint8_t mfrc522_set_timer_reload(mfrc522_handle_t *handle, uint16_t reload)
set the timer reload
uint8_t mfrc522_set_tx_wait_rf(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable the rf tx wait
uint8_t mfrc522_set_serial_speed(mfrc522_handle_t *handle, uint8_t t0, uint8_t t1)
set the serial speed
uint8_t mfrc522_set_receiver_analog(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable the analog part of the receiver
uint8_t mfrc522_set_crc_msb_first(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable the crc msb first
uint8_t mfrc522_set_rx_no_error(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable rx no error
uint8_t mfrc522_set_collision_level(mfrc522_handle_t *handle, uint8_t level)
set the collision level
uint8_t mfrc522_set_min_level(mfrc522_handle_t *handle, uint8_t level)
set the min level
uint8_t mfrc522_deinit(mfrc522_handle_t *handle)
close the chip
uint8_t mfrc522_set_modgsn(mfrc522_handle_t *handle, uint8_t n)
set the modgsn
uint8_t mfrc522_set_timer_prescaler(mfrc522_handle_t *handle, uint16_t t)
set the timer prescaler
uint8_t mfrc522_set_timer_constant_reception(mfrc522_handle_t *handle, uint8_t t)
set the timer constant reception
uint8_t mfrc522_stop_send(mfrc522_handle_t *handle)
stop the transmission of data
uint8_t mfrc522_set_contactless_uart_input(mfrc522_handle_t *handle, mfrc522_contactless_uart_input_t input)
set the contactless uart input
uint8_t mfrc522_set_timer_prescal_even(mfrc522_handle_t *handle, mfrc522_bool_t enable)
enable or disable timer prescal even
uint8_t mfrc522_set_mfout_input(mfrc522_handle_t *handle, mfrc522_mfout_input_t input)
set the mfout input
@ MFRC522_COMMAND_MF_AUTHENT
@ MFRC522_COMMAND_TRANSCEIVE
@ MFRC522_COMMAND_RANDOM_ID
@ MFRC522_COMMAND_CALC_CRC
@ MFRC522_ANTENNA_DRIVER_TX2_RF
@ MFRC522_ANTENNA_DRIVER_TX1_RF
@ MFRC522_INTERRUPT2_MFIN_ACT
@ MFRC522_INTERRUPT1_LO_ALERT
@ MFRC522_INTERRUPT1_IDLE
@ MFRC522_INTERRUPT1_TIMER
@ MFRC522_INTERRUPT1_HI_ALERT
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_IDLE
#define MFRC522_BASIC_DEFAULT_RX_SPEED
uint8_t mfrc522_interrupt_irq_handler(void)
interrupt irq
#define MFRC522_BASIC_DEFAULT_TX_CRC_GENERATION
#define MFRC522_BASIC_DEFAULT_FIX_IQ
#define MFRC522_BASIC_DEFAULT_TIMER_PRESCALER
#define MFRC522_BASIC_DEFAULT_COLLISION_LEVEL
#define MFRC522_BASIC_DEFAULT_RX_MULTIPLE
#define MFRC522_BASIC_DEFAULT_MODULATION_WIDTH
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_TIMER
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_RX
#define MFRC522_BASIC_DEFAULT_TIMER_RELOAD
uint8_t mfrc522_basic_deinit(void)
basic example deinit
#define MFRC522_BASIC_DEFAULT_RX_ALIGN
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_ERR
#define MFRC522_BASIC_DEFAULT_PARITY_DISABLE
#define MFRC522_BASIC_DEFAULT_CRC_MSB_FIRST
#define MFRC522_BASIC_DEFAULT_MODGSN
#define MFRC522_BASIC_DEFAULT_CWGSP
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_PIN_INVERT
mfrc522 basic example default definition
#define MFRC522_BASIC_DEFAULT_TIMER_AUTO_RESTART
uint8_t mfrc522_basic_calculate_crc(uint8_t *buf, uint8_t len, uint16_t *crc)
basic example calculate the crc
#define MFRC522_BASIC_DEFAULT_TIMER_PRESCAL_EVEN
#define MFRC522_BASIC_DEFAULT_RX_GAIN
#define MFRC522_BASIC_DEFAULT_CWGSN
#define MFRC522_BASIC_DEFAULT_RX_NO_ERROR
#define MFRC522_BASIC_DEFAULT_WATER_LEVEL
uint8_t mfrc522_basic_init(mfrc522_interface_t interface, uint8_t addr, void(*callback)(uint16_t type))
basic example init
#define MFRC522_BASIC_DEFAULT_INTERRUPT_PIN_TYPE
#define MFRC522_BASIC_DEFAULT_SERIAL_SPEED_T0
#define MFRC522_BASIC_DEFAULT_MINI_LEVEL
#define MFRC522_BASIC_DEFAULT_MFIN_POLARITY
#define MFRC522_BASIC_DEFAULT_TIMER_GATED_MODE
#define MFRC522_BASIC_DEFAULT_SERIAL_SPEED_T1
#define MFRC522_BASIC_DEFAULT_FORCE_IIC_HIGH_SPEED
#define MFRC522_BASIC_DEFAULT_TIMER_CONSTANT_SYNC
#define MFRC522_BASIC_DEFAULT_RX_WAIT
#define MFRC522_BASIC_DEFAULT_MODULATION_INVERT
#define MFRC522_BASIC_DEFAULT_CRC_PRESET
#define MFRC522_BASIC_DEFAULT_CONTACTLESS_UART_INPUT
#define MFRC522_BASIC_DEFAULT_TX_WAIT_RF
#define MFRC522_BASIC_DEFAULT_MODGSP
#define MFRC522_BASIC_DEFAULT_TIMER_AUTO
#define MFRC522_BASIC_DEFAULT_TX_SPEED
#define MFRC522_BASIC_DEFAULT_MFOUT_INPUT
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_HI_ALERT
uint8_t mfrc522_basic_transceiver(uint8_t *in_buf, uint8_t in_len, uint8_t *out_buf, uint8_t *out_len)
basic example transceiver
#define MFRC522_BASIC_DEFAULT_CHANNEL_RECEPTION
#define MFRC522_BASIC_DEFAULT_INTERRUPT2_CRC
#define MFRC522_BASIC_DEFAULT_TX_INPUT
#define MFRC522_BASIC_DEFAULT_FORCE_100_ASK
#define MFRC522_BASIC_DEFAULT_TX_WAIT
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_LO_ALERT
#define MFRC522_BASIC_DEFAULT_INTERRUPT2_MFIN_ACT
#define MFRC522_BASIC_DEFAULT_CLEAR_TEMPERATURE_ERROR
uint8_t mfrc522_basic_generate_random(uint8_t buf[25])
basic example generate the random
#define MFRC522_BASIC_DEFAULT_RX_CRC_GENERATION
#define MFRC522_BASIC_DEFAULT_TIMER_CONSTANT_RECEPTION
#define MFRC522_BASIC_DEFAULT_INTERRUPT1_TX
uint8_t mfrc522_interface_uart_deinit(void)
interface uart deinit
uint8_t mfrc522_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read
uint8_t mfrc522_interface_reset_gpio_deinit(void)
interface reset gpio deinit
uint8_t mfrc522_interface_spi_read(uint8_t reg, uint8_t *buf, uint16_t len)
interface spi bus read
uint8_t mfrc522_interface_spi_write(uint8_t reg, uint8_t *buf, uint16_t len)
interface spi bus write
void mfrc522_interface_delay_ms(uint32_t ms)
interface delay ms
uint16_t mfrc522_interface_uart_read(uint8_t *buf, uint16_t len)
interface uart read
uint8_t mfrc522_interface_reset_gpio_init(void)
interface reset gpio init
uint8_t mfrc522_interface_spi_deinit(void)
interface spi bus deinit
uint8_t mfrc522_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write
uint8_t mfrc522_interface_spi_init(void)
interface spi bus init
uint8_t mfrc522_interface_uart_flush(void)
interface uart flush
uint8_t mfrc522_interface_reset_gpio_write(uint8_t value)
interface reset gpio write
uint8_t mfrc522_interface_iic_deinit(void)
interface iic bus deinit
uint8_t mfrc522_interface_iic_init(void)
interface iic bus init
void mfrc522_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t mfrc522_interface_uart_init(void)
interface uart init
uint8_t mfrc522_interface_uart_write(uint8_t *buf, uint16_t len)
interface uart write
#define DRIVER_MFRC522_LINK_RESET_GPIO_WRITE(HANDLE, FUC)
link reset_gpio_write function
#define DRIVER_MFRC522_LINK_IIC_DEINIT(HANDLE, FUC)
link iic_deinit function
#define DRIVER_MFRC522_LINK_UART_WRITE(HANDLE, FUC)
link uart_write function
#define DRIVER_MFRC522_LINK_IIC_WRITE(HANDLE, FUC)
link iic_write function
#define DRIVER_MFRC522_LINK_IIC_INIT(HANDLE, FUC)
link iic_init function
#define DRIVER_MFRC522_LINK_SPI_WRITE(HANDLE, FUC)
link spi_write function
#define DRIVER_MFRC522_LINK_UART_READ(HANDLE, FUC)
link uart_read function
#define DRIVER_MFRC522_LINK_DEBUG_PRINT(HANDLE, FUC)
link debug_print function
#define DRIVER_MFRC522_LINK_RESET_GPIO_INIT(HANDLE, FUC)
link reset_gpio_init function
#define DRIVER_MFRC522_LINK_SPI_READ(HANDLE, FUC)
link spi_read function
#define DRIVER_MFRC522_LINK_RESET_GPIO_DEINIT(HANDLE, FUC)
link reset_gpio_deinit function
#define DRIVER_MFRC522_LINK_IIC_READ(HANDLE, FUC)
link iic_read function
#define DRIVER_MFRC522_LINK_SPI_INIT(HANDLE, FUC)
link spi_init function
#define DRIVER_MFRC522_LINK_INIT(HANDLE, STRUCTURE)
initialize mfrc522_handle_t structure
#define DRIVER_MFRC522_LINK_UART_INIT(HANDLE, FUC)
link uart_init function
#define DRIVER_MFRC522_LINK_SPI_DEINIT(HANDLE, FUC)
link spi_deinit function
#define DRIVER_MFRC522_LINK_RECEIVE_CALLBACK(HANDLE, FUC)
link receive_callback function
#define DRIVER_MFRC522_LINK_DELAY_MS(HANDLE, FUC)
link delay_ms function
#define DRIVER_MFRC522_LINK_UART_DEINIT(HANDLE, FUC)
link uart_deinit function
#define DRIVER_MFRC522_LINK_UART_FLUSH(HANDLE, FUC)
link uart_flush function
mfrc522 handle structure definition