メディア

少ないI/Oで多数のLEDを制御、同時点灯も可能Design Ideas

» 2009年03月01日 00時00分 公開
[Guillermo Jaquenod(アルゼンチン),EDN]

 通常、マイクロコントローラは入出力が可能なI/Oポートを備えている。この特徴はさまざまな用途で生かされている。その一例が、前号の当コーナーでも触れられていた「Charlieplexing方式」である*1)。同方式を利用すれば、N本の双方向I/Oポートを使用して、M=N×(N−1)個のLEDを制御することができる*2)*3)。しかし、同方式では同時に駆動できるLEDは1個だけである。また、M個のLEDを駆動するときには、PWM周期をTとすると、各LEDの点灯時間がT/Mとなる。つまり、多数のLEDを駆動する場合に点灯時間がごくわずかになるという欠点がある。そのため、各LEDで通常の方式の場合と同様の明るさを得るためには、M倍の駆動電流(ピーク電流)を流さなければならない。しかし、そのような大きなピーク電流には、一般的なマイクロコントローラのポートでは対応できない。

図1 Chipiplexing方式の概念図 図1 Chipiplexing方式の概念図 この方式では、Charlieplexing方式とは異なり、同時に2個のLEDを点灯することができる。

 本稿ではこのCharlieplexing方式に替わるものとして、「Chipiplexing方式」を紹介する(Chipiplexingは、筆者のニックネームである「Chipi」から名付けた)。この方式では、マイクロコントローラのほかに必要な部品はバイポーラトランジスタと抵抗だけである。具体的には、図1のように、バイポーラトランジスタのベースとエミッタの間に電流制限抵抗を接続し、コレクタはすべてグラウンドに接続する。N個のバイポーラトランジスタを使用することにより、Charlieplexing方式と同様にN×(N−1)個のLEDを個別制御するとともに、(N−1)個のLEDを同時に点灯することもできる。また、Charlieplexing 方式に対して、所要ピーク電流を1/(N−1)に低減することが可能だ。図1の回路はN=3本のポートを使い、M=6個のLEDを駆動する例であり、同時に点灯させることが可能なLEDの数は2個である。ポート数を増やしても、同じように回路を構成することができる。

表1 ポートの状態とLEDの関係 表1 ポートの状態とLEDの関係 注)○は点灯を、×は非点灯を表す。

 表1に、マイクロコントローラのポートを3本使用した場合に設定可能な9種類の状態を示した。上から6つ目までは、Charlieplexing方式でも対応可能なものであり、LEDが1個ずつ点灯する。残り3つの状態が2個のLEDを同時に点灯できるChipiplexing方式に特有のものだ。

 この回路において、2つのポートA、Bをそれぞれハイ、ローに設定したケースを考える。その場合、まずD1のLEDが点灯する。ポートBに接続されたトランジスタQ2に注目すると、ベースがグラウンドレベルになり、エミッタは約0.7Vの固定電位になる。このエミッタ端子にカソード端子が接続されたD4は、ポートCから駆動可能であり、D4のアノードが接続されたポートCをハイに設定することで点灯する。一方、ポートCをハイインピーダンスに設定すれば、D4は非点灯となる。

 ポートBをローに設定した場合、LEDの電流はすべてトランジスタQ2を経由してグラウンドに流れる。ポートBに流れる電流は、トランジスタのベースに流れる電流と0.7Vの電圧降下で抵抗に流れる電流だけとなり、ポートの許容電流レベルを上回ることはない。一方、ポートAに流れる電流は、D1の点灯に使われる分だけとなる。

 このChipiplexing方式では、1個のLEDの電流経路に2個の抵抗が介在する。とはいえ、電流制限用として必要な抵抗値は、LEDのアノード側に接続される1個分についてだけ計算すればよい(以下参照)。

 ここで、VDDは電源電圧(ポートのハイレベルの電圧)、VLEDはLEDの順方向降下電圧、ILEDはLEDを流れる電流である。

 Chipiplexing方式の利点は、LEDの数が増加するとより明白になる。例えば、ポートを5本使って20個のLEDを制御する場合、各LEDの点灯時間比はCharlieplexing方式では5%であるのに対し、Chipiplexing方式では20%となる。

 なお、図1の回路ではpnp型のトランジスタを使用しているが、npn型のものを使うこともできる。


脚注

※1…『LEDの多重制御で必要なI/O端子数を削減』(Saurabh Gupta/Dhananjay V Gadre、EDN Japan 2009年2月号、p.75)

※2…Gadre, Dhananjay V, "Microcontroller drives 20 LEDs," EDN, Sept 27, 2007

※3…Gadre, Dhananjay V, and Anurag Chugh, "Microcontroller drives logarithmic/line

ar dot/bar 20-LED display," EDN, Jan 18, 2007, p.83


Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.