wxPython PWM使用滑块

时间:2014-04-23 13:00:09

标签: python python-2.7 slider wxpython pwm

我有基本的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:需要一个浮动"我认为这意味着它需要一个浮点。

但是我不确定代码是否接近正确。

1 个答案:

答案 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)