汎用ロジックICでデジタル時計を作る(回路図編)

汎用ロジックでデジタル時計を作ってみようと思います。

 別に汎用ロジックでなくとも、マイコンなどを使えば高機能な時計が簡単に作れるんでしょうが、私はどちらかと言えば手を多く動かして工作するのが好きなので(高校の課題研究で作ったライントレーサのリモコンも汎用ロジック主体)、わざわざ面倒臭いほうを選びます。

ということで回路図↓ (2016/02/20修正)
時計改.PNG

回路図の色枠ごとに説明をしておきます。

電源
+5Vラインに0.2Vのショットキダイオードを繋ぎ、アノード側をLED専用の電源とします。こうすることで、停電などが理由でコネクタからの電源が途絶えたときに、バックアップ用の内臓バッテリがLEDを駆動しないようにできます。

分周
何年か前に4MHzと間違えて購入した4.194304MHzの水晶発振器を分周し、時計駆動用の1Hzと、時間調整用の4Hzと、桁点滅用のパルスを作ります。通常動作時と時間調整時の切り替えは、T-FFとアナログスイッチで行います。

ちなみに、この水晶発振器の電源電圧は5Vと定められています。しかし内蔵バッテリで動作しているときは、電源電圧が3Vちょいとなってしまいます。一応コイツの場合、2.7V付近まではまともに動作することを確認済みなのでまあよしとしましょう。

コロン点灯
通常動作時と時間調整時に応じてコロンの点滅周期を変化させます。

充電
停電時に備えて、3.6Vのニッケル水素電池を充電します。なぜ5Vでないかというと、この充電池がたまたま手元にあったからです。確かリモコン用に買ったやつだと思います。3.3VのLDOレギュレータPQ3RD23を使い、LM317の定電流回路を通してバッテリに接続します。このレギュレータ、実は足が4本ありまして、入力・出力・GNDの他に出力コントロール端子が付いています(Hレベル又はオープンでON、LレベルでOFF)。これを利用して、充電ランプが消灯すると同時に充電もストップさせるようにします。

減光
必要に応じてスイッチ操作でLEDの明度を下げます。ダイオードはLED5への逆流阻止用です。

ダイナミック点灯制御
7404の無安定マルチバイブレータから、時・分・秒それぞれの桁を点灯させるための制御信号(CT1S~CT10H)を作り出します。表示部分のLED制御にはソースドライバのトランジスタアレイTD62783を用います。

【参考】インバータで構成される無安定マルチバイブレータの出力周波数 f は、
     f≒1/2.2CRで求まります。この回路図の場合だと、C=0.1μ、R=150~2.15k ですから、
     f = 2.1kHz~30kHz となります。

時間カウント
10進アップ/ダウンカウンタの74HC192で時間を数えます。このICは、クロック入力をアクティブハイにしておかないと訳の分からない動作をするので、インバータで論理レベルを合わせています。

桁リセット
60進とか24進の部分はカウンタICの方ではどうにもならないので、汎用ゲートで処理します。10進カウンタだからこそIC3個で済むものの、これが16進だと倍以上のICが必要になります。

時間調整
分周回路で作った4Hzを使って、加算・減算を行います。SW4を押すごとに、曜日→時間→分→秒の順で調整可能な桁が変わります。

時間表示・曜日表示
時分表示の7セグメントLEDには、コロン付4桁7セグメントLEDのOSL40931-IGを使用します。コイツはダイナミック点灯用にピンがまとめられているので中々便利そうです。


さて、今回は回路図を紹介しました。足りない部品は秋葉原に遠出して買いに行かなきゃならないので、製作に取り掛かるまでにはすこし間が空くでしょう。まあ早くて2月9日以降になりそうです。 続き



この記事へのコメント


この記事へのトラックバック