module Smalruby::Hardware::Pin

Constants

AI_RE
DIO_SMALRUBOT_RE
DIO_SMALRUBY_RE

Public Instance Methods

smalrubot_to_smalruby(pin) click to toggle source

Smalrubotのピン番号をSmalrubyのピン番号に変換する

ピン番号が0~13、D0~D13、A0~A5でなければ例外が発生する

@param [String|Numeric] pin Smalrubotのピン番号 @return [String] Smalrubyのピン番号

# File lib/smalruby/hardware/pin.rb, line 39
def smalrubot_to_smalruby(pin)
  pin = pin.to_s
  case pin
  when DIO_SMALRUBOT_RE
    "D#{pin}"
  when DIO_SMALRUBY_RE
    pin
  when AI_RE
    pin
  else
    fail "ハードウェアのピンの番号が間違っています: #{pin}"
  end
end
smalruby_to_smalrubot(pin) click to toggle source

Smalrubyのピン番号をSmalrubotのピン番号に変換する

ピン番号が0~13、D0~D13、A0~A5でなければ例外が発生する

@param [String|Numeric] pin Smalrubyのピン番号 @return [Numeric] Smalrubotのデジタル入出力のピン番号 @return [String] Smalrubotのアナログ入力のピン番号

# File lib/smalruby/hardware/pin.rb, line 19
def smalruby_to_smalrubot(pin)
  pin = pin.to_s
  case pin
  when DIO_SMALRUBOT_RE
    pin.to_i
  when DIO_SMALRUBY_RE
    pin[1..-1].to_i
  when AI_RE
    pin
  else
    fail "ハードウェアのピンの番号が間違っています: #{pin}"
  end
end