Osoyoo Arduino 74HC595 シフトレジスターを使って、直列入力並列出力プロジェクト

Prev:16×2 I2C LCD プロジェクト

今回の題名はめっちゃ長いです。

まー、様はシリアルでデータ送信して、パラレルでデータを出力する訳ですが、これはよくLEDの点灯とかで使われてます。

LED300個とか使う場合、パラレルで線引き回すと300本のケーブルをその長さ分だけ引き回す事になるので、電流的にもキツイけど、邪魔で仕方ないですよねwww

パチンコやパチスロではみんなこのタイプ(実際にはアミューズメント用で一般流通しないIC)使ってます。

今回使う、シリパラのICは74シリーズのロジックIC74HC595です。

ピン配はこんな感じ。

大まかな流れはSCKに入るクロックに同期してSIにシリアルデータが入ります。

すると内部で8個のフリップフロップ(FF)に格納されRCKの入力によりラッチされ、QA~QHに出力されます。

タイミング図はこんなん

これで判らない人はググって調べましょう!

では、接続図。

今回は配線がわしゃわしゃしてます。

上記をArduinoに転送します。

このサンプルプログラムはLEDを一つづつ点灯させていますが、データを変える事により色々と点灯させる事が出来ます。

Arduinoのポートに8個LEDを接続して光らせるのと変わりありません。

そう、最初に書きましたが、Arduinoと74HC595の間は8本ではなく、2本なのです。

これはLEDだけじゃなくて、74HC595の出力にモータドライバICを接続するとモータの制御も行えます。

実際ロボットとかはこの方法を使って制御してます。

Next:LEDデジタル表示管で4桁の数字を表示する

シェアする

  • このエントリーをはてなブックマークに追加

フォローする