ゆるく楽しむプログラミング

シフトレジスタ U74HL595 の使い方

シリアルデータをパラレルデータに変換するICです。
SER/RCLK/SRCLKの3本の制御線だけでQA~QHの8個の出力を操作できます。
QH′を次のICのSERに接続することで16個、24個、32個と更に多くの出力を操作できます。


基本的な動作は
SRCLR リセット:立下り(HIGH->LOWに変わる)タイミングでQA~QHがLOWになります。
特にリセットを制御する必要がなければVccに接続しておけば良い。
SRCLK データセット:立ち上がり(LOW->HIGHに変わる)タイミングでSERの状態をQAレジスタにセットします。
この時QAレジスタの状態はQBレジスタにQBレジスタの状態はQCレジスタに~QGレジスタの状態はQHレジスタに、QHレジスタの状態はQH′レジスタにトコロテン方式で押し出されます。
※変換するのはレジスタでありピン出力ではない。
RCLK データ出力:立ち上がり(LOW->HIGHに変わる)タイミングでQA~QHの状態を出力します。
OE HIGHにすると出力がディセーブル(出力しない)になります。
LOWにするとイネーブル(QA~QHの状態を出力)になります。
※特に制御する必要がなければGNDに接続して置けばよい。

操作手順としては
① RCLK/SRCLKをLOWにしておく
② SERを出力したい状態(HIGHまたはLOW)に設定する
③ SRCLKをHIGHにしてLOWに戻す
※②~③を出力数回繰り返す
④ RCLKをHIGHにしてLOWに戻す

手動で操作してみるテスト
チャタリング防止とPushON/PushOFF出来るスイッチがなかったのでスイッチをArduinoで代用しています。
LEDが点いているいる状態がHIGHです。
手前からRCLK/SER/SRCLKに接続しています。
〇に点灯してから〇に点灯操作しています。

----- ▼ MP4動画 「ブロックされているコンテンツを許可」 しないと見えないかも -----

-----