用PCA9685和Raspberry Pi控制伺服器

问题描述 投票:1回答:2

我正在尝试从连接到树莓派的pca9685控制2个舵机。我已经编写了可以按需要使用按键输入的代码,但是我只能使用一个按键输入,因此在第一个按键输入之后我没有得到响应。关于如何解决此问题的任何想法?

import time
import adafruit_servokit import ServoKit

kit = ServoKit(channels=8)
key = input()
angle = 0

while angle <= 100:
    if key == "a":
        kit.servo[0].angle = 100
        time.sleep(1)
    elif key = "aa":
        kit.servo[0].angle = 0
        time.sleep(1)
python raspberry-pi pca servo thonny
2个回答
3
投票

我想问题在于键分配'a'和'aa',如果您可以用其他一些键输入来更改'aa',我想它会起作用,因为当使用input()流时,它会处理流逐个字符,因此“ aa”将等同于“ a” +“ a”,因此您面临此问题


0
投票

问题是我的键= input()在while循环之外。通过将其置于循环之外,它仅被调用一次。

import time
import adafruit_servokit import ServoKit

kit = ServoKit(channels=8)
angle = 0

while angle <= 100:
    key = input()
    if key == "a":
        kit.servo[0].angle = 100
        time.sleep(1)
    elif key = "aa":
        kit.servo[0].angle = 0
        time.sleep(1)
© www.soinside.com 2019 - 2024. All rights reserved.