class PwmPin
Constants
- PI_BLASTER_PATH
Attributes
pb_val[R]
pin_num[R]
pwm_file[R]
value[R]
Public Class Methods
new(pin_num)
click to toggle source
# File lib/pwm_pin.rb, line 7 def initialize(pin_num) @pin_num = pin_num @pwm_file = File.open("#{ PI_BLASTER_PATH }", "w") pwm_write(0) end
Public Instance Methods
pwm_write(value)
click to toggle source
Writes PWM value to the specified pin Param value should be integer from 0 to 255
# File lib/pwm_pin.rb, line 16 def pwm_write(value) @value = value # Calculates the pi-blaster required value between 0 and 1 inclusive @pb_val = pi_blaster_val(value) @pwm_file.write("#{ pin_num }=#{ @pb_val }\n") @pwm_file.flush end
release()
click to toggle source
# File lib/pwm_pin.rb, line 26 def release @pwm_file.write("release #{ pin_num }\n") @pwm_file.flush end
Private Instance Methods
pi_blaster_val(value)
click to toggle source
# File lib/pwm_pin.rb, line 33 def pi_blaster_val(value) calc = ((1.0/255.0) * value).round(2) calc = (calc > 1) ? 1 : calc calc = (calc < 0) ? 0 : calc calc end