1

我是编程世界的新手,我想用这段代码来移动一点伺服:

# Servo Control
# Servo Control
import time
import wiringpi

# use 'GPIO naming'
wiringpi.wiringPiSetupGpio()

# set #18 to be a PWM output
wiringpi.pinMode(18, wiringpi.GPIO.PWM_OUTPUT)

# set the PWM mode to milliseconds stype
wiringpi.pwmSetMode(wiringpi.GPIO.PWM_MODE_MS)

# divide down clock
wiringpi.pwmSetClock(192)
wiringpi.pwmSetRange(2000)

delay_period = 0.01

while True:
        for pulse in range(50, 250, 1):
                wiringpi.pwmWrite(18, pulse)
                time.sleep(delay_period)
        for pulse in range(250, 50, -1):
                wiringpi.pwmWrite(18, pulse)
                time.sleep(delay_period)

当我在空闲状态下运行这段代码时,出现以下错误:

Traceback (most recent call last):
  File "/home/pi/servo.py", line 3, in <module>
    import wiringpi
ImportError: No module named 'wiringpi'

我确实安装了wiringpi。我使用以下方法检查了它:

dpkg --get-selections

我在以下之间找到了它:

wireless-regdb
wireless-tools
wiringpi
wolfram-engine
wolframscript   

请帮助您可以感谢,

4

3 回答 3

4

只需更改为sudo pip3 install wirespi。这是因为 python 解释器是 V2.7

于 2018-11-13T04:30:42.160 回答
3

打开终端,然后

输入这个:

sudo apt-get python-dev python-pip

那么这个:

sudo pip install wiringpi

或者如果第二行代码不起作用,请输入:

sudo pip install wiringpi2

如果你安装wiringpi2,而不是“importwiringpi”,你必须输入“importwiringpi2”

这解决了我的问题!希望能帮助到你!

于 2017-04-10T10:24:56.760 回答
1

我相信接线 pi 不适用于更高版本的 python。Wiringpi 2 支持高于 2.7 的版本,但不适用于 3.4。根据您的版本,您有几个选项:

  1. 使用python 2.7
  2. 使用像 rpio 这样的替代方案

https://pythonhosted.org/RPIO/

于 2017-04-11T19:47:32.550 回答