class BeagleBoard::Linux::Gpio

Public Class Methods

new(bank, gpio) click to toggle source
Calls superclass method BeagleBoard::Base::Gpio::new
# File lib/beagleboard/linux/gpio.rb, line 6
def initialize(bank, gpio)
  @gpio_number = bank * 32 + gpio
  @gpio_directory = "/sys/class/gpio/gpio#{@gpio_number}"
  super
end

Public Instance Methods

close() click to toggle source
# File lib/beagleboard/linux/gpio.rb, line 16
def close
  File.write('/sys/class/gpio/unexport', @gpio_number.to_s)
end
direction() click to toggle source
# File lib/beagleboard/linux/gpio.rb, line 20
def direction
  File.read("#{@gpio_directory}/direction").to_sym
end
direction=(value) click to toggle source
# File lib/beagleboard/linux/gpio.rb, line 24
def direction=(value)
  raise StandardError, 'Invalid direction' unless %i[in out low high].include?(value)

  File.write("#{@gpio_directory}/direction", value.to_s)
end
open() click to toggle source
# File lib/beagleboard/linux/gpio.rb, line 12
def open
  File.write('/sys/class/gpio/export', @gpio_number.to_s)
end
value() click to toggle source
# File lib/beagleboard/linux/gpio.rb, line 30
def value
  File.read("#{@gpio_directory}/value").to_i
end
value=(value) click to toggle source
# File lib/beagleboard/linux/gpio.rb, line 34
def value=(value)
  File.write("#{@gpio_directory}/value", value.to_s)
end