大型7セグメントLED ユニットの自作

  • 大型7セグメントLEDの自作ユニット6個の正面写真
  • 大型7セグメントLEDの自作ユニット6個の背面写真

大型7セグメントLEDを制御させるユニットを6個 作りました。
一つのユニットに部品点数はそれほど多くは ないが、全ユニットでトランジスタの足曲げ60個、LEDから基板までの配線が60本、他にもユニットを接続するコネクタ作りがあり、根気がいりました。
なぜ6個も作ったかと言うと、これを使って時計を表示させたいと思ったからです。

ユニットと回路図

  • 大型7セグメントLEDの自作ユニットの背面写真
  • 大型7セグメントLEDの自作ユニットの回路図

7セグLEDのアノード側(+)と基板は2本で つながっています。
カーソド側(ー)は各1本です。

R16 の抵抗は いい場所が思いつかなかったので(設計ミスなので?)後付けしました。

今回の制作でユニットは15個まで接続は可能ですが、電源線の容量の問題もありますので、6個までが いいと思います。
接続ピンを増やすか回路そのものを改良するしかないですね。

部品表

部品名 定格、値 記号 ユニット1個の個数 ユニット6個の総個数
PIC16F84A   U1 1 6
ICソケット 18P U1 1 6
NJM7805FA 出力5V U2 1 6
セラミック発振子
(セラロック)
20MHz X1 1 6
7セグLED 9V 300mA D1 1 6
抵抗器 10KΩ R1-R4、R6、R7 6 36
1KΩ R5、R8-R15 9 54
180Ω R16 1 6
積層セラミックコンデンサ 50V 0.33μF C1 1 6
50V 0.1μF C2 1 6
2SC1815   TR1 - TR10 10 60
ピンヘッダ(オス) 2列 8P CN1 1 6
2列 6P CN2 1 6
1列 4P CN3 1 6
QIコネクタ(2550コネクタ)
コンタクトピン
     8 48
QIコネクタ(2550コネクタ)
ハウジング
1列 4P   2 12
KV線     10 60
← 横スクロールできます。 →

リストにある「-」(ハイフン)は、間の記号を省略している。
例) R1 - R4 = R1、R2、R3、R4

データシート

制作

  • 大型7セグメントLEDの自作ユニットの基板裏の写真
    配線は なるべく きれいに。
  • 大型7セグメントLEDの自作ユニットの横からの写真
    基板と7セグLEDの隙間が なるべく広がらないように。

制作後に思ったこと。
KV線を間に入れ直結したが、今となるとQIコネクタを使えばよかったかなと思う。
そのせいで、両サイドの基板が斜めになってしまい、
固定する際はアルミ材と硬めのスポンジで挟み込むなどの工夫が必要になる。

接続例

  • 大型7セグメントLEDの自作ユニットの接続例

電源ですが、6個の場合、
『7セグLED1個 300mA × 6個 = 1800mA』
最大で 1800mA + α 流れるので、
スイッチングACアダプター 9V の 2A 以上の容量が必要です。
("α" は基板側で消費される電力)

プログラム

PIC16F84A

"MYID"(割り当てID)の値を個別に変更してください。
変更しないと、同じ ID が同じ動作をしてしまいます。

アプリケーション (動作テスト用)

通信

フォーマット

転送速度 19200
フロー制御 なし
パリティー・ビット なし
データビット長 8
ストップビット長 1

USB シリアル変換を使って通信できます。
自作フレームのページに動作テストした動画があります。

コマンド送信

  • 大型7セグメントLEDの自作ユニットのコマンド送信の通信フォーマット

【ID3 - ID0】
識別番号
プログラム中の "MYID" (割り当てID) の値と一致したユニットが動作する。
ID が一致しないユニットは動作しない。
ただし、全てのビットが "1" の場合は動作する。

【CMD2~CMD0】
コマンド
何をさせるかの命令コードである。
「0x01」は、点灯消灯の設定
「0x02」は、点灯状態の取得
(「0x02」のとき、"DP0" と "D*" は「0x00」にする。)
(つまり、2バイト目は「0x00」にする。)

【DP0】
ドット設定
ドット (点) を点灯させるかどうか。
"1" のとき、点灯
"0" のとき、消灯

【D3~D0】
セグメント設定
7セグLEDの a~g を点灯消灯させる。
「0x01」は、"1" を表示
「0x09」は、"9" を表示
「0x0F」は、全消灯。

設定の応答

  • 大型7セグメントLEDの自作ユニットの設定に対する応答の通信フォーマット

【点灯消灯の設定のときの応答内容】
コマンドが「0x01」のとき

ID と CMD は送信したものと同じ。

【CD7~CD0】
チェックデジット
送信した1バイト目と2バイト目の排他的論理和 (XOR)。
チェックディジットは、上位4ビットと下位4ビットに分かれて送られてくる。

状態取得の応答

  • 大型7セグメントLEDの自作ユニットの状態取得に対する応答の通信フォーマット

【点灯状態の取得のときの応答内容】
コマンドが「0x02」のとき

ID と CMD は送信したものと同じ。

【D3~D0】
表示値
"1" を表示しているときは「0x01」になる。
"5" のときは「0x05」になる。

【CD7~CD0】
チェックデジット
受信した1バイト目と2バイト目の排他的論理和 (XOR)。

公開日:2012年4月, 更新日: