アナログテレビに表示するタイムエイドを製作してみました。
ハードウェアは発表会用タイマーや多目的タイマーと共通で、プログラムのみ異なります。
タイムエイド本体に表示装置は無く、テレビに接続して使います。
下の写真は、残り時間が3分18秒の時の表示画面です。
主な仕様 操作スイッチ 押しボタンスイッチの操作で、スタート、ストップ、リセット、時間の設定を行うことができます。 設定時間 1~99分(設定値は電源を切っても保持されます) 機能 残り時間を設定値からカウントダウン表示します。「0分00秒」で停止します。 表示 テレビ画面に残り時間のバーグラフ表示および分・秒の表示 精度 1時間に数秒程度の誤差を伴います。厳密な時間管理を要する用途には適しません。 アラーム音 0分00秒でスピーカより「ブッブッブーッ」のアラーム音が鳴り、その間、バーグラフの表示色が赤色に変わります。音量はテレビのボリュームで調整します。 解像度 64×16ドットの表示領域に4×64ドットのバーグラフおよび6×4ドットの数字文字を表示 表示色 バーグラフは緑色(アラーム時は赤色)、数字は青色で表示します。 ビデオ信号 規格外のビデオ信号のため、テレビによってはうまく表示できないことがあるかもしれません。 出力 テレビのビデオ入力端子およびオーディオ入力端子に接続
(タイマー本体に表示装置やスピーカはありません)電源 3V 8mA 大きさ 40×55×20mm
テレビの表示を見ながらスイッチを操作します。アラームの音量はテレビのボリュームで調整してください。設定値はスイッチを切っても保持されます。
- スタート・ストップ
- スイッチを押すとタイマーがスタートし、もう1度押すと停止します。
- リセット
- スイッチを押しブザー音を2回聞いて離すと、カウントが設定値にリセットされます。
- 設定値の変更
- スイッチを押しブザー音を3回以上聴くと、「1分→2分→3分→...→99分(最大)」のように表示が変わるので、希望する設定値でスイッチを離してください。
マイコンはATMEL社のAVRマイコンATtiny45Vを使いました。ビデオ信号の発生方法については、主にBruce Land氏の資料[1][2]を参考にしました。プログラムはWinAVR(20060421版)のgcc-avrで「-Os」オプションでコンパイルします。
ATtiny45VのSRAM256バイトの内128バイトを、64×16ピクセルのVRAMとして使っています。カラー版のCPUは4SCのクロック(14.32MHz)で動作し、サブキャリアのバースト信号に対して位相を90°ずつ変えることにより、4色を表現しています。ただし、タイミングもレベルも規格外のインチキビデオ信号ですから、テレビによってはうまく表示できないことがあるかもしれません。また、クロック周波数(14.32MHz)はATtiny45Vの定格を超えています。
(回路図) | |
(プログラム) | timaidtv.c, vlibnum.c, timaidtv.bat(参考) |
[1] Bruce Land: AVR Video Generator with an AVR Mega163, Atmel Application Journal, Vol.3, pp.8-10(2004).
[2] Bruce Land: Video Generation with Atmel AVR microcontrollers(Cornell Univ. EE476), http://instruct1.cit.cornell.edu/courses/ee476/video/