0

基本的な 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: requires a float」を返します。これは、浮動小数点が必要であることを意味すると考えています。

ただし、とにかくコードが正しいに近いかどうかはわかりません。

4

1 に答える 1

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)
于 2014-04-23T15:57:41.750 に答える