2014-11-04 29 views
0

我正在尝试使用覆盆子pi的GPIO引脚。所以为此我安装了SpiDev python模块。但是,当我试图运行我的程序时,我得到像'module' object has no attribute 'GPIO'错误。
那么我该怎么做才能摆脱这个问题。我的代码如下如下:'SpiDev'对象没有属性'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”

+1

我假设你从你的Pi运行这段代码。看起来你没有安装gpio。尝试在命令行输入以下代码并重新运行代码:'sudo apt-get update' then 'sudo apt-get install python-dev' then 'sudo apt-get install python-rpi.gpio' – Ryan 2014-11-04 07:19:19

回答

0

尝试安装后RPI.gpio封装做sudo easy_install RPi.gpio
如果这does'nt工作尝试以下。

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

我已经有这种情况,第一个命令修复它。

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对象并不是必需的。