欢迎大家光临我的个人博客:http://www.chenjingjiu.cn,大家一起交流学习
准备工作:
将树莓派与MFRC522模块按下图连接。
树莓派的引脚图如下:
MFRC522引脚的连接如下:
具体实现:
1.Putty连接树莓派,然后输入raspi-config
2.选择interfacing Options
3.开启I2C和SPI
4. 安装树莓派3B+的SPI接口支持库
sudo apt-get install python-spidev
git clone https://github.com/lthiery/SPI-Py.git
cd SPI-Py.git
git checkout 8cce26b9ee6e69eb041e9d5665944b88688fca68
注意,这一步非常重要,因为新版本的SPI-PY.git中,spi.transfer需要两个参数而只给了一个,如果不做的话后面运行程序会报如下错误。
所以利用git checkout切换git分支,并将该分支指定为HEAD,此时再安装就不会出现上述错误。
sudo python setup.py install
5. 下载MFRC522 的Python库
先返回到跟SPI同级文件夹,然后再进行下载
cd ..
git clone https://github.com/mxgxw/MFRC522-python.git
cd MFRC522-python
sudo python Read.py
正常情况下这样就可以进行读数了。
还可以对Card进行写操作。
sudo python Write.py
还可以通过修改Write.py中的操作逻辑来实现自己想要的功能。
可能出现的问题:
1. can't open device: No such file or directory Aborted
这种问题是因为没有开SPI和I2C,重新做一遍最开始的操作就行。
2. TypeError: function takes exactly 2 arguments (1 given)
上面提到过该错误,使用老版本的SPI库文件即可。