Class: Denko::DigitalIO::Output

Inherits:
Object
  • Object
show all
Includes:
Behaviors::Callbacks, Behaviors::Lifecycle, Behaviors::OutputPin, Behaviors::Threaded
Defined in:
lib/denko/digital_io/output.rb

Direct Known Subclasses

Relay, PulseIO::PWMOutput

Constant Summary

Constants included from Behaviors::Lifecycle

Behaviors::Lifecycle::CALLBACK_METHODS

Constants included from Behaviors::OutputPin

Behaviors::OutputPin::OUTPUT_MODES

Instance Attribute Summary

Attributes included from Behaviors::Threaded

#interrupts_enabled, #thread

Attributes included from Behaviors::State

#state

Attributes included from Behaviors::SinglePin

#mode, #pin

Attributes included from Behaviors::Component

#board, #params

Instance Method Summary collapse

Methods included from Behaviors::Lifecycle

included

Methods included from Behaviors::Threaded

#enable_interrupts, included, #mruby_thread_check, #stop, #stop_thread, #threaded, #threaded_loop

Methods included from Behaviors::Callbacks

#add_callback, #callbacks, #remove_callback, #update

Methods included from Behaviors::State

#update_state

Methods included from Behaviors::SinglePin

#convert_pins, #initialize_pins

Methods included from Behaviors::Component

#initialize, #micro_delay

Instance Method Details

#digital_write(value) ⇒ Object Also known as: write



21
22
23
24
# File 'lib/denko/digital_io/output.rb', line 21

def digital_write(value)
  @board.digital_write(@pin, value)
  @state = value
end

#highObject Also known as: on



38
39
40
# File 'lib/denko/digital_io/output.rb', line 38

def high
  digital_write(board.high)
end

#high?Boolean Also known as: on?

Returns:

  • (Boolean)


49
# File 'lib/denko/digital_io/output.rb', line 49

def high?; state == board.high end

#lowObject Also known as: off



34
35
36
# File 'lib/denko/digital_io/output.rb', line 34

def low
  digital_write(board.low)
end

#low?Boolean Also known as: off?

Returns:

  • (Boolean)


50
# File 'lib/denko/digital_io/output.rb', line 50

def low?;  state == board.low  end

#pre_callback_filter(board_state) ⇒ Object



15
16
17
# File 'lib/denko/digital_io/output.rb', line 15

def pre_callback_filter(board_state)
  board_state.to_i
end

#toggleObject



42
43
44
# File 'lib/denko/digital_io/output.rb', line 42

def toggle
  state == board.low ? high : low
end