我想建立一个项目,通过橙色pi零读取Mifare卡。我有MFRC522
模块,连接类似
SDA ------> PIN 24
SCK ------> PIN 22
MOSI -----> PIN 19
MISO -----> PIN 21
IRQ ------> **NONE**
GND ------> PIN 6
RST ------> PIN 22
3.3V -----> PIN 1
到现在为止,我没有一个问题。我google了一下,找出了一些建议。之后我在我的orangepi零点上做了这些步骤。
顺便说一句,我正在使用 ARMBIAN 5.31 稳定的Ubuntu 16.04.3 LTS 3.4.113-sun8i
sudo apt-get update
sudo apt-get install python-dev
sudo git clone https:/github.com/duxingkei33/orangepi_PC_gpio_pyH3.git
cd orangepi_PC_gpio_pyH3
sudo python setup.py install
cd ..
sudo git clone https://github.com/lthiery/SPI-Py.git
cd SPI-Py
sudo python setup.py install
cd ..
sudo git clone https://github.com/mxgxw/MFRC522-python.git
cd MFRC522-python
直到这里,仍然没有一个问题。现在,我们走了。
现在是编辑MFRC522.py的时候了。我正在提供原始的差异。
import RPi.GPIO as GPIO
110c110
< def init(self, dev='/dev/spidev1.0', spd=1000000):
def init(self, dev='/dev/spidev0.0', spd=1000000):
112,114c112,114
<# GPIO.setmode(GPIO.BOARD)
< # GPIO.setup(22, GPIO.OUT)
< # GPIO.output(self.NRSTPD, 1)
GPIO.setmode(GPIO.BOARD)
GPIO.setup(22, GPIO.OUT)
GPIO.output(self.NRSTPD, 1)
7)读取id数据:
cd MFRC522-python
edit MFRC522.py and comment out line 108.109.110 and 356( as shown below)
# GPIO.setmode(GPIO.BOARD)
#GPIO.setup(22, GPIO.OUT)
#GPIO.output(self.NRSTPD, 1)
#GPIO.output(self.NRSTPD, 1)
python read.py
root@orangepione:~/MFRC522-python# python read.py
无论我做什么,我仍然有错误。第二个说“不是这样的文件”,第一个我甚至不明白该怎么做。任何人都可以帮助我吗?
答案 0 :(得分:1)
我也有同样的问题。我发现由于某种原因,无法加载spi的驱动器。即使使用armbian-config。
使用以下方法验证该设备是否存在:
ls /dev/spi*
就我而言,它不存在。
我必须手动进行以下更改: 在/boot/armbianEnv.txt文件中,添加(或编辑)行(使用sudo nano /boot/armbianEnv.txt):
overlay_prefix = sun8i-h3
overlays = spi-spidev cir i2c0 uart1 w1-gpio
param_spidev_spi_bus = 0
param_spidev_max_freq = 100000000
然后将行添加到/ etc / modules文件中(使用sudo nano / etc / modules): spi-dev
重新启动系统。
就我而言,python需要root访问权限才能在SPI总线上读取/写入数据。因此,例如,我必须使用sudo python Dump.py运行该程序。
答案 1 :(得分:0)
也许这有点晚了......
diff
是一个Linux程序,用于计算两个文件之间的差异:
https://en.wikipedia.org/wiki/Diff_utility
当你看到两个版本之间的区别时,就像在维基百科中一样
在MFRC522.py
中,您必须在第112,113,114和384行中注释掉(在代码中添加#
标记注释以便不编译)
(01.10.2017版本)
您无法在OrangePi上使用RPi.GPIO
,可能会看到http://opi-gpio.readthedocs.io/en/latest/install.html和http://www.instructables.com/id/Orange-Pi-One-Python-GPIO-basic/