32×16 ドット マトリックス LED モジュール (AD-501-B) の制御方法

32×16 ドット マトリックス LED モジュール (AD-501-B) の制御方法 電子工作
32×16 ドット マトリックス LED モジュール (AD-501-B) の制御方法

概要

かつて、秋月電子通商で 32×16 ドットのマトリックス LED モジュール (型番: AD-501-B) が販売されていました。この LED モジュールの制御方法について説明します。

AD-501-B について

このモジュールには、16×16 ドット赤色ドット マトリックス LED×2、シリアル – パラレル変換 & LED ドライバー IC が実装されており、シリアル データを入力するだけで LED を点灯させることが可能です。モジュールの外観を以下の写真に示します (写真は AD-501-B とは異なるメーカー製の同等品です)。

AD-501-B の外観
AD-501-B の外観

AD-501-B は現在販売されていませんが、共立エレショップにて類似モジュールを入手できます (コネクタのピン アサインと LATCH 信号の論理が異なりますが、制御方法はほぼ同じです)。

AD-501-B には 11 ピンのコネクタがついていますが、ピン アサインは以下の通りです (S-IN、CLOCK、LATCH、STROBE 端子は 4.7 kΩ でプルアップされています)。

ピン番号名称備考
1LED 電源5 V 時 LED 1 個当たり約 30 mA
2S-IN (IC1)H で点灯、L で消灯
3S-IN (IC2)H で点灯、L で消灯
4S-IN (IC3)H で点灯、L で消灯
5CLOCK (共通)立ち上がりで S-IN のデータを読む
6LATCH (共通)立ち下がりでデータを出力、H でデータを保持
7STROBE (共通)L で点灯、H で消灯
8IC 電源6 V (内部はツェナー ダイオードにより、5 V 動作)
9NC未接続
10GND0 V
11GND0 V
AD-501-B コネクタのピン アサイン

点灯のしくみ

AD-501-B のブロック図を以下に示します。

AD-501-B のブロック図
AD-501-B のブロック図

SIN から入力される信号は、CLOCK の立ち上がりで読み込まれ、クロックの立ち上がりごとにシフトされます (ここで、シフト方向は D1 → D16)。つまり、シリアル データは D16 から順に入力しなければなりません。

LATCH を L レベルにすると、現在のシフト レジスタの値がラッチに読み込まれ、H レベルにすると、ラッチの値が保持されます。このラッチの出力が、LED ドライブ出力になります。

なお、CLOCK、LATCH、STROBE は IC1、IC2、IC3 共通接続なので、S-IN (IC1)、S-IN (IC2)、S-IN (IC3) は同時に入力してあげる必要があります。

例えば、以下のようなタイミングで信号を入力すると、IC1 の D16 のみが H、IC2 の D1 のみが H になるため、それらが交差する、左上隅の LED が点灯します。

AD-501-B のタイミング チャート
AD-501-B のタイミング チャート

全面を点灯させるには

先ほどの例では、1 個の LED を点灯させましたが、複数の LED を同時点灯させるにはどうすればよいでしょうか? 列方向については、IC2 と IC3 の D1~D16 に任意のデータを入力すれば点灯させられます。

さらに、文字などのように平面的なデータを点灯させるには、表示データを行単位に分解して、1 行単位で表示させます。

つまり、初めに 1 行目の表示データを IC2、IC3 に送り込み、IC1 の D16 のみを H にしてラッチします。次に、2 行目の表示データを IC2、IC3 に送り込み、IC1 の D15 のみを H にしてラッチします。これを 16 行目まで繰り返し、また 1 行目に戻ります。この処理を高速に行うことにより、人間の目の残像効果で全体が点灯しているように見えます。

ダイナミック点灯のタイミング チャート
ダイナミック点灯のタイミング チャート

このように、時分割で点灯させる方式をダイナミック点灯と呼びます。

よく、電車の先頭車両の正面写真で、LED の行先表示が一部切れて写っているものがありますが、これは上記のダイナミック点灯で 1 画面分表示する時間よりも、カメラのシャッター速度の方が速いため起こります。

補足

共立エレショップにて販売されている類似モジュールのピン アサインは以下の通りです。

ピン番号名称備考
1VCCロジック部電源 (5 V)
2SIN_1Row 側データ入力 (H で点灯、L で消灯)
3SIN_2Col (A) 側データ入力 (H で点灯、L で消灯)
4SIN_3Col (B) 側データ入力 (H で点灯、L で消灯)
5CLOCK立ち上がりで SIN のデータを取り込み
6LATCHH でデータ更新、L でデータを保持 (※AD-501-B とは論理が逆です)
7ENABLEL で点灯、H で消灯
8VLEDLED 駆動電源 (5 V)
9GND0 V
10GND0 V
コネクタのピン アサイン

参考文献