1.简介
(1)MFRC522
MFRC522是高度集成的非接触式读写卡芯片,是一款低电压、低成本、体积小的非接触式读写卡芯片,是智能仪表和便携式手持设备研发的较好选择。可以识别日常生活中常见的门禁卡、电梯卡以及手机nfcf复制的RFID卡,这里我们使用S50卡完成实验测试,S50卡是采用NXP MF1 IC S50制作的非接触智能卡,通常简称S50卡或Mifare 1K,符合ISO14443A标准,4或7字节UID。具有1K数据存储区,数据有密钥保护。
(2)引脚说明
引脚 | 说明 |
---|---|
3.3V | 电源输入引脚,允许电压范围2.5v到3.3v |
RST | 复位和断点输入引脚。低频时RC522关闭,包括振荡器,输入引脚,串口外围接口的关闭 |
GND | 接地 |
IRQ | 中断警告引脚,当RFID标签靠近该设备时,通过此引脚进行触发 |
MISO/SCL/Tx | 此接口为(Master In Slave Out)当SPI(串口外围接口)开启时有效。当使用I2C协议接口时此引脚为串口时钟,当为UART协议接口时,此引脚为串口数据输出口 |
MOSI | Master Out Slave In,该引脚为此模块的SPI(串口外围接口) |
SCK | 接收SPI提供的脉冲信号 |
SS/SDA/Rx | 当SPI启动时,该引脚为输入信号,当为I2C协议接口时为串口数据口,当为UART时为串口输入口 |
2. 下载例程
Gitee下载: STM32ExampleCode-07-RFID-RC522
3. SPI驱动
在目录“.\HARDWARE\SPI”中有SPI驱动文件,我们将下面的C文件和H文件或者SPI文件夹拷贝到自己的驱动库中,使用时注意SPI引脚.
4. RC522驱动
在目录“.\HARDWARE\RC522”中有RC522驱动文件:
使用时导入RC522.h,然后添加初始化等步骤。
RC522_IO_Init();//RC522端口初始化 PcdReset(); //复位RC522 PcdAntennaOff(); //关闭天线 delay_ms(100); //等待天线关闭 PcdAntennaOn(); //开启天线 Card_Type1[0]=0x04; Card_Type1[1]=0x00;
5. 编译烧录运行
打开目录“.\USER”中有RC522的 keil工程启动文件,编译烧录运行,并刷卡测试: