Module: Domotics::Arduino::DigitalPin

Included in:
DigitalSensor, NCSensor, NOSensor
Defined in:
lib/domotics/arduino/digital_pin.rb

Instance Method Summary collapse

Instance Method Details

#initialize(args = {}) ⇒ Object



4
5
6
7
8
# File 'lib/domotics/arduino/digital_pin.rb', line 4

def initialize(args = {})
  @pin = args[:pin]
  @device.register_pin self, @pin
  super
end

#set_state(value) ⇒ Object



14
15
16
17
# File 'lib/domotics/arduino/digital_pin.rb', line 14

def set_state(value)
  @device.set_digital @pin, to_lls(value)
  super
end

#state!Object



10
11
12
# File 'lib/domotics/arduino/digital_pin.rb', line 10

def state!
  to_hls @device.get_digital(@pin)
end

#to_hls(value) ⇒ Object

Convert to High Level State



20
21
22
# File 'lib/domotics/arduino/digital_pin.rb', line 20

def to_hls(value)
  value == ArduinoBase::HIGH ? :on : :off
end

#to_lls(value) ⇒ Object

Convert to Low Level State



25
26
27
# File 'lib/domotics/arduino/digital_pin.rb', line 25

def to_lls(value)
  value == :on ? ArduinoBase::HIGH : ArduinoBase::LOW
end