汎用ロジックICでデジタル時計を作る(5)

(前回)

今回は桁リセット回路と、ダイナミック点灯制御回路を作ります。

回路説明

 橙部分を今回製作します。

【桁リセット回路】

 時間カウント回路が数えた曜日と時分秒を常に監視し、必要に応じて値を0に戻す等のリセット信号を送ります。アップカウントとダウンカウントでそれぞれ異なる挙動をします。

  • アップカウント

 通常動作にて、例えば分秒が60に達した時が該当します。この時、カウンタ74HC192のRES端子にHレベルの信号を送ることで値を0にリセットします。

  • ダウンカウント

 時間調整時には、数字を減らしていくと「00秒→99秒」となる場合があります。これではまずいのでLD端子にLレベルの信号を送り、「00秒→59秒」となるように制御します。LD端子は74HC192の15, 1, 10, 9番ピンで設定したBCDコードを読み出すためのもので、ここに予め59という値を設定することにより「00秒→59秒」となる制御が可能になります。

【ダイナミック点灯制御回路】

 時間カウント回路から受けた値をダイナミック点灯に対応した形式に変換します。

 74HC04の発振回路で矩形波を生成し、それをカウンタ74HC393に入力してBCDコードを出力します。BCDコードをデコーダTC4028に入力すると、矩形波の周期に合わせてTC4028のQ0~Q5が順にHレベルとなります。これで6桁の数字を1桁ずつ順に点灯させるための信号が得られます。

製作

 鉛入り半田はブリッジさせやすいので好みです。

 完成。

動作確認

 桁リセット部分はオープンの入力ピンが多すぎるので後回しにします。

 ダイナミック点灯制御部の発振回路の出力です。約2kHzで発振しています。

 カウンタとデコーダを通すと周波数が1/6されます。右側の緑LEDは7セグのちらつきを確認するために接続しています。
 と、ここで気づいたのが、周波数をMAX(30kHz)にしても若干チラついて見えるということ。一旦気になりだすとどうも落ち着かないので、少しだけ周波数を上げることにしました。

 周波数MAX(インバータIC出力部分は45kHz)の状態です。このくらいならばちらつきは全く気になりません。

ということで、桁リセット回路と、ダイナミック点灯制御回路を作りました。
そろそろ折り返し地点を過ぎたあたりだと思います。

(続き)

タイトルとURLをコピーしました