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

 別に汎用ロジックでなくともマイコンを使えば高機能な時計が簡単に作れるんでしょうが、私は手を多く動かして工作するのが好きなので、わざわざ面倒臭いほうを選びました。

※これは2016年に製作したもので、前のブログに載せていた内容を改めて記事にします。

仕様

  • 24時間表示
    -モジキの好み。
  • 時分秒+曜日表示できる
    -時間を正確に知るために秒は表示したい。ついでに曜日表示も欲しい。
  • 時刻は7セグLEDで表示する
    -多少暗くても見えるように。かつロジックICで簡単に制御できるため。
  • 減光機能付き
    -寝るときにLEDがピカピカしていると困るので。
  • ACアダプタで電源供給する
    -7セグだと電池駆動は非現実的なので。
  • 停電しても時刻がリセットされない
    -どうせならバックアップ機能は欲しい。

回路図

 ブロックごとに分けて説明します。

  • 電源
    DCジャックから+5Vの電源を供給します。
  • 分周
     昔4MHzと間違えて購入した4.194304MHzの水晶発振器を分周します。時計駆動用の1Hzと、時間調整用の4Hzと、時間調整時に桁を点滅させる用の1Hz&8Hzのパルスを作ります。通常動作と時間調整の切り替えは、T-FFとアナログスイッチで行います。
     ちなみにこの水晶発振器の電源電圧は5Vと定められています。しかし内蔵バッテリで動作しているとき、電源電圧は3Vちょいとなってしまいます。一応コイツの場合、2.7V付近までは一応動作することを確認済みなのでまあよしとしましょう。
  • コロン点灯
    通常動作時と時間調整時に応じてコロンの点滅周期を変化させます。
    【通常】1Hz
    【時間調整時】8Hzで4回点滅→0.5秒消灯の繰り返し(チカチカチカチカ チカチカチカチカ という感じで)
  • 充電
    バックアップ用として3.6Vのニッケル水素電池を充電します。
  • 減光
    必要に応じてスイッチ操作でLEDの明度を下げます。
  • ダイナミック点灯制御
     74HC04の無安定マルチバイブレータから時・分・秒それぞれの桁を点灯させるための制御信号(CT1S~CT10H)を作り出します。表示部分のLED制御にはソースドライバのトランジスタアレイTD62783を用います。
    【参考】インバータによる無安定マルチバイブレータの出力周波数 f は f≒1/2.2CRで求まります。この回路図の場合だと、C=0.1μ、R=150~2.15k で、f = 2.1kHz~30kHz となります。
  • 時間カウント
    10進アップ/ダウンカウンタの74HC192で時間を数えます。
  • 桁リセット
    60進とか24進の部分はカウンタICの方ではどうにもならないので汎用ゲートで処理します。
  • 時間調整
     手動で時間調整をするための回路です。分周回路で作った4Hzを使って、カウンタのUP/DNに信号を入れ、時間の加算・減算を行います。またSW4を押すごとに調整可能な桁が曜日→時間→分→秒の順で変わります。
  • 時間表示・曜日表示
    7セグメントLEDと砲弾型、角型LEDを使用します。

 次から製作編です。

(続き)

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