NOBのArduino日記!

NOBのArduino日記!

趣味は車・バイク・自転車・ラジコン・電子工作です。

Arduino IDE(shiftIn関数の使い方)

■shiftIn関数
 shiftIn関数は、データの1バイトを1ビットずつシフトします。
 最大(最左端)または最小(最右端)のいずれかの有効ビットから開始します。
 各ビットは、クロックピンがハイに引き上げられ、次のビットがデータラインから読み出され、クロックピンがローになります。
 立ち上がりエッジでクロックされるデバイスと接続する場合は、最初にshiftIn関数を呼び出す前にクロックピンがローであることを確認する必要があります。 digitalWrite(clockPin,LOW)を呼び出します。

■使用例
 ArduinoIDEで使用するshiftIn関数の使い方は以下の通りです。

byte incoming = shiftIn(dataPin, clockPin, bitOrder);
イメージ 1
図1:プログラム例

■構文
 shiftIn(dataPin、clockPin、bitOrder)

■パラメータ
 dataPin:各ビットを出力するピン(int)
 clockPin:dataPinからの読み出しを通知するために切り替えるピン。
 bitOrder:ビットをシフトアウトする順序。 
       MSBFIRSTまたはLSBFIRSTのいずれかです。
       ※Most Significant Bit First、またはMost Significant Bit First

■戻り値
 読み取り値(byte)

■補足
 この関数はソフトウェア実装です。
 Arduinoはハードウェアの実装を使用するSPIライブラリも提供されています。
 これは高速ですが、特定のピンでのみ動作します。

イメージ 1 イメージ 3
励みになりますのでよければクリック下さい(^o^)/

↩【ArduinoIDE reference】目次に戻る