SPI(Serial Peripheral Interface)機能を提供するクラス
spi = SPI.new(LSBFIRST, CLOCK_DIV4) v = spi.transfer(0x41)
SPIクロック分周器(1/128)
SPIクロック分周器(1/16)
SPIクロック分周器(1/2)
SPIクロック分周器(1/32)
SPIクロック分周器(1/4)
SPIクロック分周器(1/64)
SPIクロック分周器(1/8)
ビットオーダー(LSB first)
転送モード0(CPOL=0, CPHA=0)
転送モード1(CPOL=0, CPHA=1)
転送モード2(CPOL=1, CPHA=0)
転送モード3(CPOL=1, CPHA=1)
ビットオーダー(MSB first)
コンストラクタ SPIオブジェクトを生成する。
生成されたSPIオブジェクト
# File enzi-lib.rb, line 445 def initialize(order, mode, div = CLOCK_DIV4) # check bit order raise ArgumentError, "Invalid bit order :" + order.to_s unless [LSBFIRST,MSBFIRST].include?(order) # check transfer mode raise ArgumentError, "Invalid mode :" + mode.to_s unless (MODE0..MODE3).include?(mode) # check clock div raise ArgumentError, "Invalid clock div :" + div.to_s unless [CLOCK_DIV2,CLOCK_DIV4,CLOCK_DIV8,CLOCK_DIV16,CLOCK_DIV32,CLOCK_DIV64,CLOCK_DIV128].include?(div) @order = order @mode = mode @div = div end
SPIバイト転送 SPIデバイスより1バイトの値を転送(送受信)する。
出力値に文字列が指定された場合は1文字目を出力する。
読み込んだデータを数値形式で返す。
# File enzi-lib.rb, line 466 def transfer(v) 0 # dummy end