我对编程很陌生,我正在尝试用树莓派控制直流电机。我正在尝试使用 guizero 滑块来更改全局变量,motorspeed
但是如果我运行代码,电机将仅在初始变量集上运行。
真的非常感谢你!
import RPi.GPIO as GPIO
from time import sleep
from guizero import App, Text, TextBox, PushButton, Slider
#GPIO SETUP
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
GPIO.setup(5, GPIO.OUT)
GPIO.setup(5, GPIO.LOW)
motorspeed = 50
def changemotorspeed(slider_value):
global motorspeed
slider_value = motorspeed
#MOTOR SETUP
def motorstart():
GPIO.setup(13, GPIO.OUT)
GPIO.setup(25, GPIO.OUT)
GPIO.setup(25, GPIO.HIGH)
pwm = GPIO.PWM(13, 100)
pwm.start(0)
pwm.ChangeDutyCycle(motorspeed)
sleep(1)
def motorstop():
GPIO.cleanup()
#GUI SETUP
app = App(title = "MOTOR CONTROL")
start_button = PushButton(app, text = "START", command = motorstart)
stop_button = PushButton(app, text = "STOP", command = motorstop)
text_size = Slider(app, command = changemotorspeed, start = 0, end = 100)
app.display()