[PR]テレビ番組表
今夜の番組チェック


PICを使った時計

はじめに

PIC を使ったシンプルな時計をご紹介します。 部品点数が少なく、無調整ですので製作が容易です。

仕様

精度腕時計くらい
消費電流2mA at 3.6V
電池寿命300 hour(3.6V 600mA/hour)
表示方式LCD直読式

動作原理

腕時計用の水晶発振子 32,768 Hz を使用し、これを内部タイマで 分周することで1秒を作り出します。 水晶発振子 は PIC のクロックとしても兼用するので、別の水晶発振子 を必要としません。また、低いクロックを使用することで、 PIC の消費電力も抑えています。 表示には消費電力の低い液晶を使用します。 実際には、「4クロック/命令」で、「同期に 2 クロック」かかり、 内部タイマの 8 bit カウンタ TMR で 1/256 分周 しますので、 32,768 / 4 / 2 / 256 = 1/16[秒] ごとに割り込みが発生します。それをさらにソフトウェア的に 16 分周 することで正確な1秒を作ります。

回路図


シンプルかつ低消費電力を目標として設計しました。 タクトスイッチ「Set」「+」「-」は時刻あわせのためのものです。

ファームウェア解説

ダウンロード watch.asm(9KB)(旧PICer簡易アセンブラ用、MPLAB用に書き換えてご利用ください。)
ダウンロード watch.hex(PIC16F84用)
PIC16F84 のソフトウェアは PICer 用に作成されています。 初期化ルーチンでタイマ割り込みを設定し、メインルーチンはループを 形成してキー入力の検査します。 アラーム機能など、いろいろと拡張できることでしょう。

操作方法

操作方法はいたって簡単です。
「Set」----- 押すごとに設定したい「時」->「分」->「秒」->「終了」 の順に移動します。設定する部分には目印としてカーソルが表示されます。
「+」-------押すごとに数値が増えます。
「-」-------押すごとに数値が減ります。
「+」「-」は「終了」状態では機能しません。 またキーを押したままの状態では 1/8 秒ごとに連続動作します。

使用感

設計どおり非常にシンプルな時計が完成しました。精度は腕時計 (月差+-15秒)よりやや劣る程度のようです。充分実用範囲といえます。 精度は水晶発振子の温度変化に関わっています。腕時計の場合、 常に肌に触れており、温度が一定に保たれているため精度がよくなります。
消費電流もある程度は抑えることができました。
キー入力はチャタリング防止をかねて 1/8 秒ごとに連続入力をして いますが、これでもまだチャタリングを起こすことがあります。 もう少し遅くてもよいかもしれません。
電源として電池を使用していますが、LCD の関係上、3.6V 以上必要 となります。これ以下でも動作はするのですが、表示が読めません。 リチュームイオン電池(3.6V)が小型、軽量、大容量なので最適です。
(C)1999 All rights reserved by Einstein.