我有基本的wxPython知识。
我正在尝试获取滑块值并将其设置为LED的脉冲宽度调制值。
这是我到目前为止的代码:
滑块
slider = wx.Slider (panel, 100, 25, 1, 100, pos=(200,70), size=(250, -1), style= wx.SL_HORIZONTAL | wx.SL_AUTOTICKS | wx.SL_LABELS )
slider.SetTickFreq(5, 1)
slider.SetBackgroundColour("light blue")
self.Bind(wx.EVT_SCROLL_CHANGED, self.OnSlide1)
功能
def OnSlide1(self,event):
PWM_VALUE = event.GetEventObject()
p = GPIO.PWM(11, PWM_VALUE)
p.start(0)
这将返回" TypeError:需要一个浮动"我认为这意味着它需要一个浮点。
但是我不确定代码是否接近正确。
答案 0 :(得分:0)
您似乎正在通过滑块的窗口句柄。你想传递一个数字。
试试这个:
self.slider = wx.Slider(...)
# UNTESTED
def OnSlide1(self, event):
freq = self.slider.GetValue()
p = GPIO.PWM(11, freq)
duty_cycle = 0
p.start(duty_cycle)