Sha256: ab51dd896f2436407eef0a7a9ee522e8421846ff154b133e023d22a92435df65
Contents?: true
Size: 695 Bytes
Versions: 2
Compression:
Stored size: 695 Bytes
Contents
module Denko module PulseIO class IRTransmitter include Behaviors::OutputPin def emit(pulses=[], options={}) if pulses.length > 256 || pulses.length < 1 raise ArgumentError, 'wrong number of IR pulses (expected 1 to 256)' end pulses.each_with_index do |pulse, index| raise ArgumentError, 'non Numeric data in IR signal' unless pulse.is_a? Numeric pulses[index] = pulse.round unless pulse.is_a? Integer raise ArgumentError, 'pulse too long (max 65535 ms)' if pulse > 65535 end frequency = options[:frequency] || 38 board.infrared_emit(pin, frequency, pulses) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
denko-0.13.1 | lib/denko/pulse_io/ir_transmitter.rb |
denko-0.13.0 | lib/denko/pulse_io/ir_transmitter.rb |