Raspberry Pi 中的 GPIO 无法关闭

GPIO in Rapberry Pi no Turn Off

用python3写这段代码。但是不要工作。只有继电器点亮不熄灭

我需要打开并在 3 秒后关闭。

这是我的代码:

import RPi.GPIO as GPIO
import time

channel = 23

# GPIO setup
GPIO.setmode(GPIO.BCM)
GPIO.setup(channel, GPIO.OUT)


def motor_on(pin): 
    GPIO.output(pin, GPIO.HIGH)  # Turn motor on


def motor_off(pin):
    GPIO.output(pin, GPIO.LOW)  # Turn motor off


if __name__ == '__main__':
    try:
        motor_on(channel)
        time.sleep(2)
        motor_off(channel)
        time.sleep(2)

        GPIO.cleanup()

        motor_on(channel)
        time.sleep(2)
        motor_off(channel)
        time.sleep(2)

    GPIO.cleanup()
    except KeyboardInterrupt:
    GPIO.cleanup()

您的代码通常有几个问题 -- 最后的缩进应该是这样的

    try:
        motor_on(channel)
        time.sleep(2)
        motor_off(channel)
        time.sleep(2)

        GPIO.cleanup()

        motor_on(channel)
        time.sleep(2)
        motor_off(channel)
        time.sleep(2)

        GPIO.cleanup()
    except KeyboardInterrupt:
        GPIO.cleanup()

和上面一样,运行在 GPIO.cleanup() 之后 motor_on()motor_off() 如果你不 运行 GPIO.setmode()GPIO.setup() 再一次——但是在修复了这些问题后,您的代码可以很好地打开和关闭 LED,因此您的电路可能有问题。