本文使用的读卡器
1. 配置树莓派
首先需要运行raspi-config,开启树莓派的spi接口,因为RFID-RC522A读卡器与树莓派之间是通过spi协议进行通信的
https://www.raspberrypi.org/documentation/hardware/raspberrypi/spi/README.md
2. 软件安装
下载并安装SPI-Py
1 2 3 | $ git clone https://github.com/lthiery/SPI-Py.git $ cd SPI-Py $ sudo python setup.py install |
3. 连接树莓派与读卡器
读卡器输出端子 | 树莓派 PIN # | 树莓派 PIN NAME |
---|---|---|
SDA | 24 | GPIO8 |
SCK | 23 | GPIO11 |
MOSI | 19 | GPIO10 |
MISO | 21 | GPIO9 |
IRQ | None | None |
GND | Any | Any Ground |
RST | 22 | GPIO25 |
3.3V | 1 | 3V3 |
4. 运行测试程序
MFRC522-python 包含了几个对使用读卡器读写IC卡的例子。
1 2 3 4 5 6 | $ git clone https://github.com/mxgxw/MFRC522-python.git $ cd MFRC522-python $ sudo python Read.py # 运行之后,测试程序会一直监听是否有IC卡靠近读卡器,如果有就输出卡的UID,以及Sector 8的数据。输出完毕之后继续检测IC卡 $ sudo python Write.py # 运行之后,测试程序会一直监听是否有IC卡靠近读卡器,如果有就输出卡的UID,同时将IC卡Sector 8的数据显示置为全1,后改为全0 |
测试程序需要以root用户运行,否则权限不够
Read.py读取Sector 8,如果你修改测试程序,让它读取Sector 0的数据,会发现每个Sector是16字节的数据,并且Sector 0的前面四个字节就是这张卡的UID
参考资料:http://www.instructables.com/id/Attendance-system-using-Raspberry-Pi-and-NFC-Tag-r/?ALLSTEPS