LibDriver MFRC522  1.0.0
MFRC522 full-featured driver
driver_mfrc522_basic.h
Go to the documentation of this file.
1 
37 #ifndef DRIVER_MFRC522_BASIC_H
38 #define DRIVER_MFRC522_BASIC_H
39 
41 
42 #ifdef __cplusplus
43 extern "C"{
44 #endif
45 
56 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_PIN_INVERT MFRC522_BOOL_TRUE
57 #define MFRC522_BASIC_DEFAULT_INTERRUPT_PIN_TYPE MFRC522_INTERRUPT_PIN_TYPE_STANDARD_CMOS
58 #define MFRC522_BASIC_DEFAULT_FORCE_IIC_HIGH_SPEED MFRC522_BOOL_FALSE
59 #define MFRC522_BASIC_DEFAULT_CLEAR_TEMPERATURE_ERROR MFRC522_BOOL_FALSE
60 #define MFRC522_BASIC_DEFAULT_WATER_LEVEL 8
61 #define MFRC522_BASIC_DEFAULT_RX_ALIGN MFRC522_RX_ALIGN_0
62 #define MFRC522_BASIC_DEFAULT_TX_CRC_GENERATION MFRC522_BOOL_FALSE
63 #define MFRC522_BASIC_DEFAULT_TX_SPEED MFRC522_SPEED_106_KBD
64 #define MFRC522_BASIC_DEFAULT_MODULATION_INVERT MFRC522_BOOL_FALSE
65 #define MFRC522_BASIC_DEFAULT_RX_CRC_GENERATION MFRC522_BOOL_FALSE
66 #define MFRC522_BASIC_DEFAULT_RX_SPEED MFRC522_SPEED_106_KBD
67 #define MFRC522_BASIC_DEFAULT_RX_NO_ERROR MFRC522_BOOL_TRUE
68 #define MFRC522_BASIC_DEFAULT_RX_MULTIPLE MFRC522_BOOL_FALSE
69 #define MFRC522_BASIC_DEFAULT_TX_INPUT MFRC522_TX_INPUT_INTERNAL_ENCODER
70 #define MFRC522_BASIC_DEFAULT_MFOUT_INPUT MFRC522_MFOUT_INPUT_3_STATE
71 #define MFRC522_BASIC_DEFAULT_MINI_LEVEL 0x8
72 #define MFRC522_BASIC_DEFAULT_COLLISION_LEVEL 0x4
73 #define MFRC522_BASIC_DEFAULT_CHANNEL_RECEPTION MFRC522_CHANNEL_RECEPTION_STRONGER_FREEZE_SELECTED
76 #define MFRC522_BASIC_DEFAULT_FIX_IQ MFRC522_BOOL_FALSE
77 #define MFRC522_BASIC_DEFAULT_TIMER_PRESCAL_EVEN MFRC522_BOOL_FALSE
78 #define MFRC522_BASIC_DEFAULT_TIMER_CONSTANT_RECEPTION 0x3
79 #define MFRC522_BASIC_DEFAULT_TIMER_CONSTANT_SYNC 0x1
80 #define MFRC522_BASIC_DEFAULT_TX_WAIT 0x2
81 #define MFRC522_BASIC_DEFAULT_PARITY_DISABLE MFRC522_BOOL_FALSE
82 #define MFRC522_BASIC_DEFAULT_SERIAL_SPEED_T0 0x07
83 #define MFRC522_BASIC_DEFAULT_SERIAL_SPEED_T1 0x0B
84 #define MFRC522_BASIC_DEFAULT_MODULATION_WIDTH 0x26
85 #define MFRC522_BASIC_DEFAULT_CWGSN 0x8
86 #define MFRC522_BASIC_DEFAULT_MODGSN 0x8
87 #define MFRC522_BASIC_DEFAULT_CWGSP 0x20
88 #define MFRC522_BASIC_DEFAULT_MODGSP 0x20
89 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_TX MFRC522_BOOL_FALSE
90 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_RX MFRC522_BOOL_TRUE
91 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_IDLE MFRC522_BOOL_TRUE
92 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_HI_ALERT MFRC522_BOOL_FALSE
93 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_LO_ALERT MFRC522_BOOL_FALSE
94 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_ERR MFRC522_BOOL_TRUE
95 #define MFRC522_BASIC_DEFAULT_INTERRUPT1_TIMER MFRC522_BOOL_TRUE
96 #define MFRC522_BASIC_DEFAULT_INTERRUPT2_MFIN_ACT MFRC522_BOOL_FALSE
97 #define MFRC522_BASIC_DEFAULT_INTERRUPT2_CRC MFRC522_BOOL_TRUE
98 #define MFRC522_BASIC_DEFAULT_CRC_MSB_FIRST MFRC522_BOOL_FALSE
99 #define MFRC522_BASIC_DEFAULT_TX_WAIT_RF MFRC522_BOOL_TRUE
100 #define MFRC522_BASIC_DEFAULT_MFIN_POLARITY MFRC522_MFIN_POLARITY_HIGH
101 #define MFRC522_BASIC_DEFAULT_CRC_PRESET MFRC522_CRC_PRESET_6363
102 #define MFRC522_BASIC_DEFAULT_FORCE_100_ASK MFRC522_BOOL_TRUE
103 #define MFRC522_BASIC_DEFAULT_CONTACTLESS_UART_INPUT MFRC522_CONTACTLESS_UART_INTERNAL_ANALOG_MODULE
104 #define MFRC522_BASIC_DEFAULT_RX_WAIT 0x6
105 #define MFRC522_BASIC_DEFAULT_RX_GAIN MFRC522_RX_GAIN_48_DB
106 #define MFRC522_BASIC_DEFAULT_TIMER_AUTO MFRC522_BOOL_TRUE
107 #define MFRC522_BASIC_DEFAULT_TIMER_GATED_MODE MFRC522_TIMER_GATED_MODE_NONE
108 #define MFRC522_BASIC_DEFAULT_TIMER_AUTO_RESTART MFRC522_BOOL_FALSE
109 #define MFRC522_BASIC_DEFAULT_TIMER_PRESCALER 0xD3E
110 #define MFRC522_BASIC_DEFAULT_TIMER_RELOAD 0x001E
119 uint8_t mfrc522_interrupt_irq_handler(void);
120 
131 uint8_t mfrc522_basic_init(mfrc522_interface_t interface, uint8_t addr, void (*callback)(uint16_t type));
132 
140 uint8_t mfrc522_basic_deinit(void);
141 
153 uint8_t mfrc522_basic_transceiver(uint8_t *in_buf, uint8_t in_len, uint8_t *out_buf, uint8_t *out_len);
154 
165 uint8_t mfrc522_basic_calculate_crc(uint8_t *buf, uint8_t len, uint16_t *crc);
166 
175 uint8_t mfrc522_basic_generate_random(uint8_t buf[25]);
176 
181 #ifdef __cplusplus
182 }
183 #endif
184 
185 #endif
driver mfrc522 interface header file
mfrc522_interface_t
mfrc522 interface enumeration definition
uint8_t mfrc522_interrupt_irq_handler(void)
interrupt irq
uint8_t mfrc522_basic_deinit(void)
basic example deinit
uint8_t mfrc522_basic_calculate_crc(uint8_t *buf, uint8_t len, uint16_t *crc)
basic example calculate the crc
uint8_t mfrc522_basic_init(mfrc522_interface_t interface, uint8_t addr, void(*callback)(uint16_t type))
basic example init
uint8_t mfrc522_basic_transceiver(uint8_t *in_buf, uint8_t in_len, uint8_t *out_buf, uint8_t *out_len)
basic example transceiver
uint8_t mfrc522_basic_generate_random(uint8_t buf[25])
basic example generate the random