| なる研>電子工作小品集>対授業タイマー |
やっと出ましたマイコンです。
週休二日制の影響で授業の時間が不規則(47min)になり時計を見ても後何分?
で、それを表示する物を初マイコン(AVR)で作ってみました。
表示は二つの7セグメントLEDを交互に表示してポートを節約します、残像を利用するため高速に切り替えます。私が入手した物はアノードコモンなので、Aに2本、Kに7本で I/O8本で制御できます。

残り1分をきると表示色を変えて秒単位のカウントダウンをはじめるようにします。
微調整したとはいえ、精度はあまり高くなく、毎日合わせてやる必要があります、面倒です。クロックを高精度のものに変更して何もしなくても毎日精確にカウントしてくれればどれだけ楽か…。100円の時計から1Hz発信回路を拝借する案も有。
誤差についてくま様よりコメントをいただきました、精確に時を刻まないのは温度変化が原因との事です。そこで、データシートを引っ張り出しますと20度の変化で0.1%ずれるみたいです(右図)。7時間で最大3600x7/1000=25.5[s]もずれる事になります。しかしこれだけ綺麗に比例してずれてくれると温度計にできそうですね。にやり;-) (2003/02/06追記)
プログラムソース(school_timer.asm)
回路図(kairo.png)
上の『課題』に書いたように、時計のモータードライブ用のモジュール(右図)を基準クロックとして使用し、精度を上げようと試みました。
対GNDで見てみると、それぞれから1/2Hzのパルスが加算すると1Hzになるように交互に出ていました。これの負の成分をダイオードでカットし、加算したものをプルダウンしてAVRに入力してやります。
ところで、このモジュールが必要とする電圧は3Vです、基板上にあるのは5Vです、ツェーナダイオードなんて持ってません、どうしましょう。LEDも電圧降下が一定ですので、用途もないのに買った赤外線ダイオードの出番です、これは電圧降下が1.1Vなのでこれ3個と抵抗を直列に繋いで3.3Vの電位差をつくります。0.3Vは愛嬌ということで^.^;