class RPiPwm
Attributes
duty_cycle[RW]
freq[RW]
frequency[RW]
Public Class Methods
new(pin_num, duty_cycle: 100, freq: 100)
click to toggle source
Calls superclass method
# File lib/rpi_pwm.rb, line 15 def initialize(pin_num, duty_cycle: 100, freq: 100) super(pin_num) @id, @duty_cycle, @freq = pin_num, duty_cycle, freq RPi::GPIO.set_numbering :bcm RPi::GPIO.setup pin_num, :as => :output @pwm = RPi::GPIO::PWM.new(pin_num, freq) @pwm.start 0 at_exit { RPi::GPIO.clean_up pin_num} end
Public Instance Methods
duty_cycle=(val)
click to toggle source
# File lib/rpi_pwm.rb, line 32 def duty_cycle=(val) @duty_cycle = val @pwm.duty_cycle = val end
freq=(val)
click to toggle source
# File lib/rpi_pwm.rb, line 37 def freq=(val) @freq = val @pwm.frequency = val end
on(durationx=nil, duration: nil, duty_cycle: @duty_cycle, freq: @freq)
click to toggle source
Calls superclass method
# File lib/rpi_pwm.rb, line 42 def on(durationx=nil, duration: nil, duty_cycle: @duty_cycle, freq: @freq) self.duty_cycle = duty_cycle if duty_cycle self.freq = freq if freq super(durationx, duration: duration) end
Protected Instance Methods
set_pin(val)
click to toggle source
set val with 0 (off) or 1 (on)
Calls superclass method
# File lib/rpi_pwm.rb, line 56 def set_pin(val) @pwm.duty_cycle = val ? @duty_cycle : 0 super(val) end