class Taopaipai::GPIO
Constants
- BASE_PATH
Public Class Methods
new()
click to toggle source
# File lib/taopaipai/gpio.rb, line 6 def initialize @io = IO.new(BASE_PATH) @registry = {} end
Public Instance Methods
pin(number, options={})
click to toggle source
# File lib/taopaipai/gpio.rb, line 11 def pin(number, options={}) pin = @registry[pin_key(number)] if pin [:direction, :value].each do |option| pin.send option, options[option] if options.has_key?(option) end pin else @registry[pin_key(number)] = Pin.new(@io, options.merge(number: number)).apply! end end
release()
click to toggle source
# File lib/taopaipai/gpio.rb, line 23 def release @registry.values.each do |pin| pin.unexport end @registry = {} self end
Private Instance Methods
pin_key(number)
click to toggle source
# File lib/taopaipai/gpio.rb, line 32 def pin_key(number) "gpio#{number}" end