'SpiDev'对象没有属性'GPIO'

时间:2014-11-04 07:15:02

标签: python raspberry-pi

我正在尝试使用raspberry pi的GPIO引脚。所以为此我安装了SpiDev python模块。但是当我试图运行我的程序时,我收到的错误如'module' object has no attribute 'GPIO' 那么我应该怎么做才能摆脱这个问题。我的代码如下:

from PyQt4 import QtCore, QtGui
import Rpi.GPIO as GPIO
import time
import spidev
spi = spidev.Spidev()  # for creating spi object
GPIO.setmode(GPIO.BOARD)

out_1 = 7  # GPIO pin no 7
out_2 = 11 # GPIO pin no 11
class Ui_MainWindow(object):
    ...
    ...
    ...
    def abc(self, parameter1):
        spi.GPIO.setup(out_1, GPIO.OUT)
        spi.GPIO.output(out_1, 1)
        ....
        ....
        spi.GPIO.setup(out_2, GPIO.OUT)
        spi.GPIO.output(out_2, 1)
    ....
    ...
...

...

运行此代码后,我收到如下错误 ' SpiDev'对象没有属性' GPIO'

2 个答案:

答案 0 :(得分:0)

尝试通过执行RPI.gpio来安装sudo easy_install RPi.gpio包 如果这样做,请尝试以下方法。

sudo apt-get update  
sudo apt-get dist-upgrade  
sudo apt-get install python-rpi.gpio python3-rpi.gpio  

我已经遇到过这种情况,第一个命令修复了它。

答案 1 :(得分:0)

GPIO上面没有spi对象,所以更改此部分:

spi.GPIO.setup(out_1, GPIO.OUT)
spi.GPIO.output(out_1, 1)
....
....
spi.GPIO.setup(out_2, GPIO.OUT)
spi.GPIO.output(out_2, 1)

......进入这个:

GPIO.setup(out_1, GPIO.OUT)
GPIO.output(out_1, 1)
....
....
GPIO.setup(out_2, GPIO.OUT)
GPIO.output(out_2, 1)

您的操作所需的一切都在Rpi.GPIO模块中,因此导入spidev并创建spi对象并不是必需的。