携帯型機器の多くには、複数のLEDが実装されている。それらは、電源の状態や電池の状態、あるいはBluetoothによる接続状況などの表示に利用される。LEDの発光輝度は順方向電流に比例するため、電池の持続時間を決める主な要因の1つになる。
本稿では、周囲の明るさを計測し、その計測値に比例する輝度でLEDを発光させる回路を紹介する(図1)。この回路では、1個のLEDを周囲の明るさの計測と表示の両方の用途で機能させる。わずかな数の部品で構成されていることに加え、CPLDを利用していることから、任意のLEDに適合するよう回路パラメータを簡単に調整できるという特徴を備える。
LEDの消費電力を低減するには、通常、発光周期を大きくするか、駆動パルス幅を狭くするか、あるいは発光輝度を低くすることになる。こうした方法とは異なり、LEDの発光輝度を周囲の明るさに応じて制御する方式ならば、見かけの明るさに影響を及ぼすことなく消費電力を45%以上も節約できる。
図1の回路は、LED、電流制限用の抵抗R1、米Altera社のCPLD「MAX IIZ EPM240ZM100C7N」、クロック発生源を各1個ずつ使用して構成しており、周囲の明るさに比例する輝度でLEDを発光させる。回路の構成は、大きく分けると、LEDを駆動するためのPWM回路部、周囲の明るさの測定に用いる光強度計測部、ステートマシンとタイマーの制御回路部から成る。
図中のSHIFT 8は8ビットのシフトレジスタで構成されたワンホットステートマシンである。これは、バイナリ値「00000001」によって初期化される。12ビットカウンタCOUNT 12からの8HzのCOUT(キャリーアウト)信号が、ステートマシンSHIFT 8に対するイネーブル信号となる。すなわち、ステートマシンの8つの状態は、それぞれ125msの間だけアクティブになる。状態0(STATE 0)では、PWM回路部のカウンタCOUNT 4と光強度計測部のカウンタ(周波数カウンタ)COUNT 8がリセットされる。状態1(STATE 1)は光強度を計測するときの状態であり、COUNT 8がイネーブルになる。COUNT 8は、125msの間、イネーブルの状態を継続し、光計測機能を終了するタイミング(周期)をカウントする。
光強度を計測するには、LEDのカソード端子の電位が論理レベルのハイになるようLED/抵抗R1にバイアス電圧を印加する。一方、LEDのアノード端子の初期状態は論理レベルのローであり、弛張発振回路OSCILLATOR 1に接続されている。LEDは逆バイアスされると、入射光の量に比例する電流を出力する。そして、アノード端子の電位はLEDへの入射光の強度に比例して上昇する。その電位がアノード端子につながる入力バッファ(INPUT BUFFER)の閾(しきい)値を超えると、PIN1ノードのレベルがローになる。それにより、クロックエッジでDフリップフロップDFFの出力がローとなり、その後段の回路の働きで、アノード端子の電位はローに戻る。その結果、PIN 1ノードがハイになって次のサイクルに移り、LEDのアノード電位が再度上昇を始める。
OSCILLATOR 1の発振周波数は光強度に比例するが、典型的には、周囲が十分に明るい状態で2kHz程度になる。このOSCILLATOR 1からCOUNT 8にクロックが供給される。COUNT 8は状態0でリセットされた後、状態1で125msの間イネーブルとなる。計測完了までのCOUNT 8によるカウント数は、光強度が強い場合には250(125ms/(1/2kHz))に達するが、発振周波数が128Hz程度の光強度では16にしかならない。COUNT 8からの出力COUTはCNT_EN(イネーブル)端子にフィードバックされ、カウント255で飽和するようになっている。
状態2(STATE 2)ではLEDが125msの間点灯し、その輝度はPWM回路部により制御される。このとき、LEDのカソード端子とアノード端子は発光動作となるようバイアスされる。つまり、アノード端子はVCCに、カソード端子はPWM回路部の出力に接続される。カソード端子の電位がローになると発光し、ハイになると消灯する。カソード端子への信号は、PWM回路部からの反転出力である。
図1の回路ではPWM回路部の分解能は4ビットとしたが、これは増減可能である。PWM回路部はカウンタCOUNT 4と4ビット加算器で構成される。COUNT 4は状態2でイネーブルになり、その出力は4ビット加算器のA入力に入力される。一方、4ビット加算器のB入力には、光強度計測部の周波数カウンタ出力のうち、上位4ビットが入力される。加算器のCOUT信号がPWM回路部の出力となる。なお、CIN(キャリーイン)信号はハイレベルに固定してある。
以下に、PWM回路部の動作を具体的な例を用いて説明する。
なお、ステートマシンの状態3〜7は、次のLED点灯サイクルまでの待ち時間になる。この状態数を増減することにより、LEDの点灯周期を変更することができる。
※1…Nicholls, Geoff, "Red LEDs function as light sensors," EDN, March 20, 2008, p.90
※2…Myers, Howard, "Stealth-mode LED controls itself," EDN, May 25, 2006, p.98
※3…Gadre, Dhananjay V, and Sheetal Vashist, "LED senses and displays ambient-light intensity," EDN, Nov 9, 2006, p.125
※4…Dietz, Paul, William Yerazunis, and Darren Leigh, "Very Low-Cost Sensing and Communication Using Bidirectional LEDs," Mitsubishi Research Laboratories, July 2003
Copyright © ITmedia, Inc. All Rights Reserved.