OSRAM の LED 表示器 PD4435 を譲り受けたので,まずは簡単な時計を制作.
初出 2013-04-30
最終更新 2013-05-16
OSRAM PD4435[1] は,コントローラ内蔵の 4 桁 5x7 ドットマトリクス LED 表示器.同社は“Intelligent Display”という分類で製品を展開している.
この手のコントローラ IC 内蔵の LED 表示器は,1980 年代から 1990 年代前半にかけて普及し,ドットマトリクスタイプやセグメントタイプの品種が多く流通していたが,ワンチップマイコンの低価格化にともない利点が薄れたため,市場が衰退.現在では OSRAM と Avago Technologies などのメーカが幾つかの品種を展開するのみとなった.
PD243x/353x/443x は,かつて事業を手がけていた Siemens の時代から現在に至るまで生産されているファミリで,1 個 $40 ~ 60 程度で入手可能.PD4435 は以前に秋月電子通商で特価販売されていたこともあるようだ.
文字高 | 表示色 | ||
---|---|---|---|
高効率赤色 | 赤色 | 緑色 | |
.200 in | PD2435 | PD2436 | PD2437 |
.270 in | PD3535 | PD3536 | PD3537 |
.450 in | PD4435 | PD4436 | PD4437 |
私が譲り受けたものも,Siemens の文字と 1993 年の製造時期表示が確認できる.折角譲り受けておいて死蔵するのも勿体ない話なので,1 個でも使える安易な応用例として時計を制作した.
時計のプログラムは幾つか書いた経験はあるのだが,電源を入れ直す度に時刻の再設定が必要だったり,マイコンのクロックからソフトウェアで計時するため誤差がひどかったりと,ひとつとして使い物になるような時計に仕上がったことはないので,最低でも上述の問題が解決したものを作ることを目標とした.
マイコンは AVR ATmega328P-PU を使用.プログラムは Arduino のライブラリを使って,できるだけ楽に設計することにした.AVR に 8 MHz 内蔵クロック用ブートローダ[2] を書き込み,IDE にもボード設定を追加.
温度センサは LM35DZ を使用し,A/D 変換部に 24 点の移動平均フィルタをソフトウェア実装.
時計用クロックは秋月電子通商の RTC-8564NB モジュールを使用し,AVR と I2C で接続.バックアップ電源に 1.0 F の電気二重層コンデンサを搭載しているため,ちょっと電源を取る場所を変えるために電源断する程度の時間約 1 日程度は保持できる.
ユーザ・インタフェースは押しボタン 3 個.
6 日
クリックで拡大写真をご覧になれます.
![]() |
![]() |
![]() |
![]() |
時刻表示 (時分) | 温度表示 (℃) | AVR は表示器の下 | 基板裏面 |
制作でもっとも苦労したのは,温度センサの A/D 変換周りのバグ取り.ブレッドボード上での試験で正常に動作するにも関わらず,そのまま基板上に持って行くと,読取値が暴れて正しい値を示さない.
原因は ATmega328P の AREF (アナログ基準電圧端子) に VCC を直結していたことで,元の Arduino の基板設計ではオープンにしてやるのが正しいようだ.「アナログ基準電圧の端子なのだから,VCC に繋ぐべきだろう」と完全に思い込んでいたばかりに,Arduino の回路図を確認して原因が判明するまで,実に総制作期間の半分以上を費やす結果となってしまった.
消費電力や価格あたりの表示能力でキャラクタ液晶に劣り,既にビンテージ・デバイスとなった IC 内蔵 LED 表示器だが,表示がはっきりと美しく,見ていて楽しい.さらに時代をさかのぼれば,16 セグメントや 7 セグメントタイプの品種も存在し,中には半球状の透明樹脂レンズで表示面積を稼いでいるものや,内部配線のボンディング・ワイヤが目に見えるものもある.ひょっとすると既に私は,これらの古臭くて味のある表示器の魅力にすっかりとりつかれてしまったのかもしれない.
![]() |
(電源コネクタは省略) |
番号 | 種別 | 品番 | 数量 | 備考 |
---|---|---|---|---|
U1 | AVR マイコン | ATmega328P-PU | 1 | |
U2 | インテリジェント・ディスプレイ | PD4435 | 1 | |
U3 | 温度センサ | LM35DZ | 1 | |
U4 | RTC モジュール | AE-RTC8564 | 1 | |
SW1-3 | 押しボタン | 3 | 秋月 P-03654 | |
R1-2 | カーボン抵抗 | 10 kΩ | 2 | |
R3 | カーボン抵抗 | 1.0 kΩ | 1 | |
C1 | 積層セラミックコンデンサ | 0.1 uF | 1 | |
C2 | 電気二重層コンデンサ | 1.0 F,5.5 V | 1 | |
D1-2 | ショットキーバリアダイオード | 1S3 など | 2 | |
CN1 | USB Mini-B コネクタ | AE-USB-MINI-B-D | 1 |
こちら (2013-05-16) Arduino スケッチ ZIP,7,463 bytes
arms22 様の RTC8564 ライブラリ[3] と接続例を利用させていただいております.ライブラリを公開してくださっている arms22 様に感謝します.