何でも実習生の実習日誌

電子工作、模型スチームエンジン工作など、何でも工作が大好きです。
手持ちの工作機械は卓上ボール盤だけ、全て手作りです。

八十の手習い  点滅パターン・データで16個のLEDを点灯させる

2021-06-14 18:53:46 | 電子工作
2021/06/13(日曜日) 晴れ

シフトレジスタ(74HC955)1個の8ビット回路は何とかうまくいった。
次はシフトレジスタを2個にして16ビット回路の実験をしてみた。
そして16個のLEDを指定したパターンで点滅させるための実験も行った。

LEDを点滅させるデータはマイコンのメモリに書き込んである。
そのデーターの8ビット(1バイト)を読み込んで下位ビットから1ビットずつ
シフトレジスタに送り込み、1バイトが完了したら次の1バイトを読み込んで
同じように1ビットずつ送り込んでいく。
結果16ビット(2バイト)のデータを送り込んだらラッチレジスタにクロック
パルスを送り込んで蓄積された16ビットのデータ(0(LOW)または1(HIGH)で
16個のLEDを点灯、滅灯させる。

74HC595を2個直列接続してマイコンに接続した。
回路図はこんなもの。


シフトレジスタの基板。


マイコンボードの基板。
シフトレジスタは4本の信号線で制御する。


パソコン(Arduino IDE)に接続してプログラムをロードしRUNさせた。



今回のテストはシフトレジスタへのデータ転送中はLEDを点滅させないので(ラッチレジスタは前の
データを保持・表示している)LEDが流れるように点滅することはない。
16ビットのデーターが送り終えた時点でラッチレジスタをONにして新しいデータでLEDを点灯させる。



テストはうまくいった。
今回のテストはこれから工作しようと思っているバーサライタ時計3の動作には
必須の動作をさせるもので一歩前進かな?と思っている。

そんなテストの様子を動画でご覧ください。




バーサライタ時計3ではRBG三色の発光素子が入ったLED19個を制御してみようと思っている。
制御する発光素子は19x3=57個になる。
そうすると74HC595は7.2個必要になる。
まっ、0.2個は無視すると7個の74HC595で56個のLEDを相手にするわけだから配線も大変になるだろう。
それに回転アームに74HC595を7個乗せるスペースが確保できるかそれも不明だ。
まぁ、できるかどうかわからないけどやるだけやってみよう。
コメント (6)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする