シフトレジスタ「TC4094」の使い方

画像引用元:http://akizukidenshi.com/catalog/g/gI-11851/
今回、秋月電子で「TC4094BP」というシフトレジスターICを購入しました。
実は、多くのサイトで紹介されている「74HC595」というものが欲しかったのですが、間違えて購入してしまいました…
しかも、店頭で買ったのでまさかの5コ入り200円!!
どうにかして使えないかと、考えてみました。

結論:TC4094も74HC595と同じように接続して、同じプログラムを書き込めば使える。
 
まずは、データシートから。(秋月電子さんのものを引用させていただきました。)
 
「ロジック図」(ともに3ページ目にあります)を見れば、ともに似たような接続方法であることがわかります。
よって、TC4094も、74HC595も同じように接続してやればいいかな…と思いました。
実際に、このページ(とても参考になりました!ありがとうございます。)を参考に、下記のグラフのように接続し直してプログラムを書き込みました。

変更点(ピン番号はデータシートを参照)

役割74HC595今回使うTC4094
Clock11ピン3ピン
Latch12ピン1ピン
Data14ピン2ピン

編集後のスケッチ

int latchPin = 9;
int clockPin = 10;
int dataPin = 11;
void setup() {
  pinMode(latchPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(dataPin, OUTPUT);
}
void loop() {
  // 送信中のlatchPinはグランド(LOW)レベル
  digitalWrite(latchPin, LOW);
  // シフト演算を使って点灯するLEDを選択しています
  shiftOut(dataPin, clockPin, MSBFIRST, 4);  //
  // 送信終了後latchPinをHIGHにする
  digitalWrite(latchPin, HIGH);
  delay(100);
}

6ピンに接続されたLEDを点灯させるサンプルです。
10進数の数字(ここでは4)をプログラムに入力すると、2進数に変換した際「1」になるピンに出力されます。

これでしっかり動作することが確認できました!
全く問題なしです。

★shiftOutコマンドについてはこのページを参考にしてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)