arduinoを使っていると使用出来るピン少ないと思う時があります。LEDの点灯はダイナミック点灯などを利用して擬似的に多くの数のLEDを制御することは出来ますが、5Vの出力が必要な場合はシフトレジスタというICを使います。
Arduino を利用する場合に一般的なシフトレジスタは74HC595というもので、秋月電子でも取り扱っています。こちらのICは安くて入手が簡単、VCC,GNDと3本の信号線を使用する代わりに8本の制御ピンを増やすことが出来ます。また、このICは1個以上使用する場合、数珠つなぎに接続することで、以降Arduinoのピンを使用すること無く、8本の制御ピンを増やしてゆくことが出来ます。
今回はICをそのまま使わず、sparkfunが提供しているブレイクアウトボードの74HC595搭載シフトレジスタボードを使用します。
このシフトレジスタボードの取り扱いはこちらのサイトでも詳しく取り上げられています。
接続は以上のとおりです。
このボードはIC単体より高価ではありますが、ピンの接続が簡単になるように、また、複数のシフトレジスタをつなぐのが簡単になるように作られています
arduino用のライブラリはこちらからダウンロード出来ます。
サイトのaeduinoタブから設定ボタンをクリックしてプルダウンメニューよりダウンロードをクリックします。
shifter.setPinでシフトレジスタから出ているピンの番号と出力の状態を指定してshifter.write();で実行します。