![[LOOK]](i/matclk_look.jpeg)
ドットマトリクス表示の時計です。
駅なんかでよく見るアレです。
7セグメントLEDと違って文字も見やすくなかなかカッコイイ
(と思うのは私だけ?) のですがなかなか手に入りにくいものです。
ドットマトリクスLEDは駆動も難しいのですが、
秋月電子が取り扱いやすいキットを販売しているので、
これを使って時計をつくってみました。
このキットを2セット使った時計をつくる予定なのですが、
動作をみるため試験的につくった1セットだけのコンパクト版でも
それなりに見栄えがするので、
ひとまずそれをご紹介いたします。
その後予定通り製作した、キット2セットを横に連結し大きさが2倍になった、
>> 64×16ドットの「大型版」はこちら <<
|
PICを用い、秋月電子のドットマトリクスLEDモジュールを駆動します。
クロックには12.8MHzの高精度オシレータを用います。
どうせLEDで電力を食われるので、特に低消費電力とかは考えません。
横32ドット×縦16ドットの表示器を使うので、
横8ドット×縦16ドットの文字を4文字表示して時刻表示とします。
時と分の間の「:」は省略します。
|
PICとオシレータと表示器だけのごく簡単な回路です。
何を勘違いしたのかPIC16F876で組んでしまいましたが、PIC16F84で充分です。
使用したLEDモジュールは横32ドットを16ドットずつわけてコントロールする
ようになっていますが、これではいろいろと面倒なので、
コネクタCN2Aの3番ピンとCN1Aの4番ピンを接続し、
32ドットを連続したビットとしてコントロールできるようにしました。
|
ファームウエアもシンプルです。
PICのTimer0モジュールにてメインクロックをカウントし、
そのオーバーフロー割込みの回数をさらにカウントすることで時を刻みます。
具体的には、 12.8MHz ÷ 4 → 3.2MHz ÷ 4 → 800kHz ÷ 256 → 3125Hz
というふうに分周され、Timer0割込みが1秒間に3125回発生するので、
これを数えます。
割込み以外の部分ではLEDを制御し、ボタンが押されていれば時刻調整をします。
数字フォントもファームウエアに内蔵しています。
● ファームウエアソースはこちら→
ドットマトリクスクロックファームウエア(MPASM用)
このファームウエアでは、LEDが明るすぎるのでインターレース表示を行って明るさを抑えています(笑)。流用される場合はご注意ください。
|
|
LEDモジュールを使うことで回路もプログラムも非常にシンプルにできあがります。
32×16ドットということで表示は限られてしまいますが、
お手軽にできるのでこれはこれでよいのではないかと思います。
|
実際に製作した時計の部品リストです。
配線や電源関係の部品 (ACアダプタなど) は除いてあります。
| 種類 |
型番/容量 |
数量 |
備考 |
| IC |
PIC16F876 |
1 |
マイクロコントローラ |
| クリスタル発振器 |
12.8MHz |
1 |
|
| 抵抗アレイ |
100k |
1 |
4素子、片側コモン型 |
| コンデンサ |
0.1μ |
2 |
積層セラミック |
|
470μ |
1 |
電解 |
| プッシュスイッチ |
- |
3 |
|
| 秋月LED表示器 |
- |
1 |
|
|