(57)【要約】【課題】簡単な回路構成で外部素子の特性を検出して外部素子を適切に駆動制御する外部素子駆動制御回路を提供する。【解決手段】外部素子駆動制御回路は，駆動電圧を有する駆動パルスを印加したときに外部素子のノードに生成されたパルス信号に基づいて生成される過渡特性を有する検出パルスを入力し，検出パルスの過渡特性に対応するパルス幅を有する測定パルスを出力する入力バッファと，測定パルスのパルス幅を測定するパルス幅測定回路と，測定されたパルス幅値と，駆動電圧に対応するパルス幅期待値との差分値を生成する差分計算回路と，差分値に所定係数を乗じた補正値を生成する補正値生成回路と，補正値に基づいて駆動パルスのパルス幅値を補正して新たなパルス幅値を生成するパルス幅計算回路と，新たなパルス幅値のパルス幅を有する前記駆動パルスを生成する駆動パルス生成回路とを有する。【選択図】図３
2015023331.tif 000002
【特許請求の範囲】
【請求項１】
駆動電圧を有する駆動パルスを印加したときに外部素子のノードに生成されたパルス信号に基づいて生成される過渡特性を有する検出パルスを入力し，前記検出パルスの過渡特性に対応するパルス幅を有する測定パルスを出力する入力バッファと，
前記測定パルスのパルス幅を測定するパルス幅測定回路と，
前記測定されたパルス幅値と，前記駆動電圧に対応するパルス幅期待値との差分値を生成する差分計算回路と，
前記差分値に所定係数を乗じた補正値を生成する補正値生成回路と，
前記補正値に基づいて前記駆動パルスのパルス幅値を補正して新たなパルス幅値を生成するパルス幅計算回路と，
前記新たなパルス幅値のパルス幅を有する前記駆動パルスを生成する駆動パルス生成回路とを有する外部素子駆動制御回路。
【請求項２】
請求項１において，
前記検出パルスは，前記外部端子のノードに生成されたパルス信号をキャパシタを有するフィードバック回路に印加して生成される過渡特性を有するパルスである外部素子駆動制御回路。
【請求項３】
請求項１または２において，
前記外部素子は，発光ダイオードである外部素子駆動制御回路。
【請求項４】
請求項１において，
前記補正値生成回路は，前記差分値のデジタル信号を異なるビット数でビットシフトした単一または複数のビットシフトデジタル値を加算または減算して，前記補正値のデジタル信号を生成する外部素子駆動制御回路。
【請求項５】
請求項４において，
前記パルス幅計算回路は，前記補正値のデジタル信号に前記駆動パルスのパルス幅のデジタル信号を加算して前記新たなパルス幅値のデジタル信号を生成する第１の加算回路を有する外部素子駆動制御回路。
【請求項６】
請求項４において，
さらに，前記差分値を２のべき乗回数加算して加算値のデジタル信号を生成する第２の加算回路と，前記加算値のデジタル信号の下位ビットのデジタル信号を前記加算値を前記２のべき乗回数で除算した平均化差分値として出力するビットシフト回路とを有する平均化回路を有し，
前記平均化回路から出力される前記平均化差分値が，前記補正値生成回路に前記差分値として入力される外部素子駆動制御回路。
【請求項７】
請求項１において，
前記入力バッファは，入力されるパルスの立ち上がり時の閾値と立ち下がり時の閾値とが異なるヒステリシス回路である外部素子駆動制御回路。
【請求項８】
駆動電圧を有する駆動パルスを印加したときに外部素子のノードに生成されたパルス信号に基づいて過渡特性を有する検出パルスを生成するフィードバック回路と，
前記検出パルスを入力し，前記検出パルスの過渡特性に対応するパルス幅を有する測定パルスを出力する入力バッファと，
前記測定パルスのパルス幅を測定するパルス幅測定回路と，
前記測定されたパルス幅値と，前記駆動電圧に対応するパルス幅期待値との差分値を生成する差分計算回路と，
前記差分値に所定係数を乗じた補正値を生成する補正値生成回路と，
前記補正値に基づいて前記駆動パルスのパルス幅値を補正して新たなパルス幅値を生成するパルス幅計算回路と，
前記新たなパルス幅値のパルス幅を有する前記駆動パルスを生成する駆動パルス生成回路とを有する外部素子駆動制御回路。
【請求項９】
請求項８において，
前記フィードバック回路は，前記外部素子のノードに生成されたパルス信号を，抵抗分割しまたはそのままキャパシタに印加し，前記キャパシタの電極に前記検出パルスを生成する外部素子駆動制御回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，外部素子駆動回路に関する。
【背景技術】
【０００２】
外部素子駆動回路は，外部素子に電圧を印加して外部素子にその機能を発揮させる。外部素子駆動回路は，例えば，マイクロコンピュータで実現される。また，外部素子は，例えば，ＬＥＤ（Light Emitting Diode：発光ダイオード）などである。
【０００３】
外部素子駆動回路は，外部素子であるＬＥＤに所定の電圧を印加することでＬＥＤに電流を流し，電流を光に変換させる。そして，外部素子駆動回路は，ＬＥＤに所定の電圧の駆動パルスを供給し，その駆動パルスのパルス幅を制御することで，所望の輝度の光を発光させる。
【０００４】
一方，ＬＥＤは，経年劣化により発光特性が劣化する。そこで，ＬＥＤの発光特性を検出して，所望の輝度での発光を維持することが必要になる。ＬＥＤの特性の検出については，以下の特許文献に記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１１７７１６号公報
【特許文献２】特開平６−１３２５８９号公報
【特許文献３】特開平６−３１１０１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら，ＬＥＤの特性を検出するための回路や外部センサや，そして，その検出したＬＥＤの特性に対応してＬＥＤの駆動パルスを適切に制御する回路は，外部素子駆動回路のコストアップになり，低コストで高信頼性の要求にこたえることができない。
【０００７】
そこで，本発明の目的は，簡単な回路構成で外部素子の特性を検出して外部素子を適切に駆動制御する外部素子駆動制御回路を提供することにある。
【課題を解決するための手段】
【０００８】
本実施の形態の第１の側面は，駆動電圧を有する駆動パルスを印加したときに外部素子のノードに生成されたパルス信号に基づいて生成される過渡特性を有する検出パルスを入力し，前記検出パルスの過渡特性に対応するパルス幅を有する測定パルスを出力する入力バッファと，
前記測定パルスのパルス幅を測定するパルス幅測定回路と，
前記測定されたパルス幅値と，前記駆動電圧に対応するパルス幅期待値との差分値を生成する差分計算回路と，
前記差分値に所定係数を乗じた補正値を生成する補正値生成回路と，
前記補正値に基づいて前記駆動パルスのパルス幅値を補正して新たなパルス幅値を生成するパルス幅計算回路と，
前記新たなパルス幅値のパルス幅を有する前記駆動パルスを生成する駆動パルス生成回路とを有する外部素子駆動制御回路である。
【発明の効果】
【０００９】
第１の側面によれば，簡単な回路構成で比較的高い信頼性を有する外部素子駆動制御回路を提供できる。
【図面の簡単な説明】
【００１０】
【図１】本実施の形態における外部素子駆動制御回路と外部素子とを示す図である。
【図２】LEDのカソードノードV1のパルスと抵抗R1,R2の接続ノードV2の過渡特性を有するパルスとを示す図である。
【図３】本実施の形態における外部素子駆動制御回路の概略構成図である。
【図４】パルス幅測定回路（パルス幅カウンタ）の回路図である。
【図５】パルス幅測定回路の動作を示すタイミングチャート図である。
【図６】平均化回路（積分と平均化回路）２３の回路図である。
【図７】差分回路の回路図である。
【図８】補正値生成回路（比例制御回路）２５の回路図である。
【図９】補正値制御回路２５内の符号化回路４２に設定されるレジスタI1,I2のフラグと，ビットシフト数と，ビットシフトに対応する乗算値の関係を示す図表である。
【図１０】パルス幅計算回路の回路図である。
【図１１】駆動パルス生成回路２７の回路図である。
【図１２】駆動パルス生成回路の動作を説明する図である。
【発明を実施するための形態】
【００１１】
図１は，本実施の形態における外部素子駆動制御回路と外部素子とを示す図である。マイクロコンピュータ１０は，外部駆動素子駆動制御回路を内蔵する。そして，マイクロコンピュータ１０は，所望のパルス幅を有する駆動パルスPWM-Pulseを出力し，ドライバDriverを介して所定の電圧と所望のパルス幅を有する駆動パルスを外部素子であるLEDのアノードに印加する。外部素子であるLEDのカソードは，抵抗R0を介してグランド端子GNDに接続されている。したがって，駆動パルスがLEDのアノード端子に印加されると，駆動パルスの電圧がLEDの閾値電圧を超えることでLEDが導通して電流が流れ，LEDが発光する。
【００１２】
駆動パルスPWM-Pulseは，後述するとおり，所望の輝度に対応するパルス幅になるようパルス幅変調されたパルス信号であり，例えば，一定周期で繰り返し生成されるパルスのデューティ比を所望の輝度に対応する比に制御することで，LEDの発光期間を制御して，LEDの発光輝度を所望の輝度に制御する。
【００１３】
従来は，LEDの駆動構成は，図１の駆動パルスPWM-Pulseを生成するマイクロコンピュータ１０と，ドライバDriverと，LEDと，抵抗R0とで構成されている。しかしながら，LEDは，経年劣化により内部抵抗が上昇し，LEDを流れる電流が低下し，その結果輝度が劣化する。そのため，LEDの輝度特性を監視して，輝度劣化に対応して輝度が一定値を保つように制御することが望ましい。
【００１４】
ただし，LEDの輝度特性を監視し，それに対応して駆動パルスを制御するためには，輝度センサや，アナログ・デジタル・コンバータなど様々な複雑で高コストなハードウエアが必要である。さらに，LEDの輝度特性の劣化の判定と，LEDを使用する機器を安全に制御するためには，マイクロコンピュータに特殊なソフトウエアを組み込む必要があり，メモリの増量とCPUの性能向上とが伴い，低コストでリーズナブルな安全制御には不向きである。
【００１５】
そこで，本実施の形態では，まず，マイクロコンピュータ１０の外部に，LEDのカソード側ノードV1とグランドGNDとの間に設けられた抵抗R1,R2と，抵抗R1,R2の接続ノードV2とグランドGNDとの間に設けられたキャパシタCとを有するフィードバック回路１２を設ける。そして，外部素子LEDのノードV1に生成されるパルス信号を抵抗R1,R2で抵抗分割して電圧を低下させ，抵抗分割したパルス信号をキャパシタCに印加して，キャパシタCへの充電と放電の過渡特性を有する検出パルスD-PulseをノードV2に生成し，その検出パルスをマイクロコンピュータ１０に入力する。すなわち，検出パルスD-Pulseは，工藤パルスPWM-Pulseを印加したときに外部素子LEDのカソードノードV1に生成されたパルス信号に基づいて生成される過渡特性を有するパルスである。抵抗R1,R2による抵抗分割は，必ずしも必要なく，ノードV1のパルス信号をキャパシタCに直接印加して過渡特性を有する検出パルスD-Pulseを生成してもよい。
【００１６】
図２は，LEDのカソードノードV1のパルスと抵抗R1,R2の接続ノードV2の過渡特性を有するパルスとを示す図である。カソードノードV1のパルスは，LED素子のアノードノードに印加される駆動パルスPWM-PulseよりLEDの順方向電圧だけ低い電圧を有する。ただし，前述のとおりLED素子が劣化すると，LEDの寄生抵抗が増加し輝度が低下する。それに伴い，LED素子の出力であるカソードノードV1のパルスの電圧が低下する。図２には，カソードノードV1のパルス波形として，正常な電圧（実線）と，劣化した電圧（破線と一点鎖線）の例が示されている。
【００１７】
このカソードノードV1を抵抗R1,R2で抵抗分割し，キャパシタCに印加して得られるノードV2の検出パルスD-Pulseは，キャパシタCへの充電時の電圧上昇と放電時の電圧下降に過渡特性を有する。しかも，その過渡特性は，充電時の電圧上昇時では，パルス電圧が高いほど立ち上がる電圧が第１の閾値Vth1に達するまでの時間が短く，放電時の電圧下降時では，パルス電圧の高低にかかわらず立ち下がる電圧が第１の閾値Vth1より低い第２の閾値Vth2に達するまでの時間はほぼ同等である。
【００１８】
そして，本実施の形態では，マイクロコンピュータ１０に内蔵された外部素子駆動制御回路が，電圧上昇時と下降時で閾値Vth1,Vth2が異なるヒステリシス回路からなる入力バッファを設け，そのヒステリシス回路に検出パルスD-Pulseを入力して，測定パルスM-Pulseを生成する。この測定パルスM-Pulseは，図２に示されるとおり，検出パルスD-Pulseの過渡特性の違いに起因して，パルス幅が異なる。すなわち，LED素子の特性劣化による輝度の低下に伴ってカソードノードV1のパルスの電圧が低下し，そのカソードノードV1のパルスの電圧が低下するほど検出パルスD-Pulseの過渡特性が鈍くなり，ヒステリシス回路を通過した測定パルスM-Pulseのパルス幅は短くなる。本実施の形態では，この測定パルスM-Pulseのパルス幅が狭くなることを検出することで，LEDの特性劣化を検出し，外部素子駆動制御回路による駆動パルスのパルス幅制御に利用する。
【００１９】
図３は，本実施の形態における外部素子駆動制御回路の概略構成図である。図３の回路は，図１のマイクロコンピュータ１０内に内蔵されている。また，図３の回路は，後述するとおり，レジスタと加算回路とカウンタなど低コストの回路で構成されている。
【００２０】
図３の外部素子駆動制御回路は，検出パルスD-Pulseを入力して測定パルスM-Pulseを出力する入力バッファ（ヒステリシス回路）２１と，測定パルスM-Pulseのパルス幅を測定するパルス幅測定回路（パルス幅カウンタ）２２と，測定されたパルス幅PW1の平均値PW2を生成する平均化回路（積分及び平均化回路）２３と，平均化パルス幅PW2と測定パルス幅の期待値P2との差分dPWを計算する差分回路２４とを有する。
【００２１】
さらに，外部素子駆動制御回路は，差分dPWに比例制御係数Kpを乗算した補正値Kp*dPWを生成する補正値生成回路（比例制御回路）２５と，補正値Kp*dPWに基づいて駆動パルスのパルス幅値を補正して新たなパルス幅値PWM-PWを生成するパルス幅計算回路２６と，新たなパルス幅値PWM-PWのパルス幅を有する駆動パルスPWM-Pulseを生成する駆動パルス生成回路（パルス幅変調（PWM）回路）２７とを有する。また，外部素子駆動制御回路は，タイミング信号SA,SB,SDを生成するタイミング制御回路３０を有する。
【００２２】
マイクロコンピュータ１０内のCPU２０は，ユーザからの入力や予め設定されている設定値に対応するLEDの輝度値を実現するために必要な駆動パルス幅初期値P1を，パルス幅計算回路２６に出力する。これに応答して，パルス幅計算回路２６は，駆動パルス幅初期値P1のパルス幅値PWM-PWを出力し，駆動パルス生成回路２７が，初期値P1のパルス幅の駆動パルスPWM-Pulseを生成する。
【００２３】
また，CPU２０は，駆動パルス幅初期値P1に対応する測定パルス幅期待値P2を，差分回路２３に出力する。この測定パルス幅期待値P2は，駆動パルスPWM-Pulseのパルス幅を駆動パルス幅初期値P1に制御して，特性劣化のないLED素子にその駆動パルスPWM-Pulseを印加した時に得られる測定パルスM-Pulseのパルス幅PW1,PW2（PW2はPW1の時間平均）の期待値である。したがって，LED素子に特性劣化が生じていない場合は，測定パルスM-Pulseのパルス幅PW1,PW2が期待値P2と一致し，差分回路２４は差分値dPW＝０を出力する。一方，LED素子に特性劣化が生じて測定パルスM-Pulseのパルス幅PW1,PW2が期待値P2より細くなれば，差分回路２４は０より大きい差分値dPWを出力する。
【００２４】
そして，補正値生成回路（比例制御回路）２５が，この差分値dPWに比例制御係数Kpを乗じた補正値Kp*dPWを生成し，パルス幅計算回路２６が，現在の駆動パルスPWM-Pulseのパルス幅に補正値を加算して，LED素子の特性劣化に対応した補正値だけ駆動パルスPWM-Pulseのパルス幅を長くし，輝度低下分を駆動パルスのパルス幅増加で補うように制御する。
【００２５】
その後，補正されたパルス幅の駆動パルスPWM-PulseでもLED素子の輝度特性の劣化で測定パルスM-Pulseのパルス幅が低下すれば，さらに差分値dPWが大きくなり，駆動パルスPWM-Pulseのパルス幅はさらに大きく補正される。差分値dPWに比例制御係数Kpを乗じるのは，比例制御の原理によるものであり，係数Kpを大きくすれば応答特性が急峻になるがその分オーバーシュートなどが大きくなり，係数Kpを小さくすれば応答特性は緩慢になるがその分オーバーシュートなどは小さくなる。
【００２６】
前述の通り，図３の外部素子駆動制御回路を構成する各回路は，レジスタと加算回路とカウンタなど低コストの回路で構成されている。そこで，以下，各回路について具体例を説明する。
【００２７】
［パルス幅測定回路（パルス幅カウンタ）２２］
図４は，パルス幅測定回路（パルス幅カウンタ）の回路図である。図５は，パルス幅測定回路の動作を示すタイミングチャート図である。パルス幅測定回路２２は，測定パルスM-Pulseのパルス幅を測定するためのタイマーカウンタ４０と，測定パルスM-Pulseの立ち上がり時のタイミング信号UPと立ち下がり時のタイミング信号DNでのタイマーカウンタ４０のカウント値をラッチするレジスタA, Bと，レジスタA, Bがラッチしたカウント値を減算する加算回路Adder Aと，加算回路Adder Aの加算値をタイミング信号SAでラッチするレジスタCとを有する。
【００２８】
さらに，パルス幅測定回路２２では，タイミング制御回路３０が，測定パルスM-Pulseの立ち上がりタイミング信号UPと，立ち下がりタイミング信号DNとを生成し，さらに，立ち下がりエッジ検出時にタイミング信号SAを生成し，レジスタCにパルス幅値がラッチされた時にタイミング信号SBを生成する。タイマーカウンタ４０は，例えば，１６ビットのカウンタ値を出力する。
【００２９】
LED素子を駆動する駆動パルスPWM-Pulseは一定周期で繰り返し生成され，そのデューティ比を制御することで駆動パルスのパルス幅が制御される。したがって，測定パルスM-Pulseも一定周期で生成され，測定パルスM-Pulseは，駆動パルスPWM-Pulseのパルス幅と検出パルスD-Pulseの電圧値または過渡特性とに対応したパルス幅を有する。
【００３０】
そして，タイミング制御回路３０は，上記の一定周期でタイミング信号SBを生成し，タイマーカウンタ４０のカウント値をリセットする。その後，測定パルスM-Pulseの立ち上がりエッジで生成されるタイミング信号UPに応答して，レジスタAがカウント値ａをラッチし，立ち下がりエッジで生成されるタイミング信号DNに応答して，レジスタBがカウント値ｂをラッチする。
【００３１】
さらに，立ち下がりエッジを検出するとタイミング制御回路３０はタイミング信号SAを生成し，それに応答して加算器Adder AがレジスタA, Bのカウンタ値ａ，ｂを減算し，パルス幅Ｔ＝ａ−ｂを計算し，タイミング信号SAに応答してレジスタCがパルス幅Tの測定値PW1をラッチする。なお，加算器は，レジスタAのカウンタ値ａを２の補数に変換して，レジスタＢのカウンタ値ｂと加算することで，減算を行う。
【００３２】
そして，タイミング信号SAでレジスタCがパルス幅Tの測定値PW1をラッチすると，タイミング信号SBに応答して，タイマーカウンタ４０がクリアされ，そのカウント値が０にクリアされる。そして，次の測定パルスM-Pulseのパルス幅Tの測定を行う。図５の例では，２つ目の測定パルスM-Pulseのパルス幅T’は，T'=b'-a'になっている。
【００３３】
パルス幅測定回路２２は，上記の動作を繰り返して，測定パルスM-Pulseのパルス幅Tの測定値PW1を，駆動パルスPWM-Pulseの駆動周期毎に出力する。そして，パルス幅測定回路２２は，タイマーカウンタ４０とレジスタと加算器からなり，いずれも論理ゲートを組み合わせた簡単な回路で実現可能である。
【００３４】
［平均化回路（積分と平均化回路）２３］
図６は，平均化回路（積分と平均化回路）２３の回路図である。図６には，図４のパルス幅測定回路２２の一部と，平均化回路２３とが示されている。平均化回路２３は，パルス幅測定回路２２が測定パルスM-Pulseのパルス幅Tを測定するたびにその測定値PW1を加算し，２のべき乗回数加算すると，その回数で除算して平均値PW2を生成する。
【００３５】
初期状態では，レジスタD，レジスタE，８ビットカウンタ４１は初期値０である。タイミング信号SAとSBは，前述の通りであり，タイミング信号SAでレジスタCがパルス幅測定値PW1をラッチすると，すなわち，測定パルスM-Pulseのパルス幅Tが測定されると，タイミング信号SBに応答して，加算器Adder BがレジスタCの測定値PW1とレジスタEの積分値とを加算し，レジスタDにその加算値をラッチさせる。レジスタDの加算値は，レジスタEに積分値として保持される。レジスタCの出力のパルス幅測定値PW1は１６ビットのデジタル値であり，加算器Adder Bの出力は２４ビットのデジタル値である。
【００３６】
上記のパルス幅Tの測定値PW1の加算演算が行われるたびに，８ビットカウンタ４１がその回数をカウントする。そして，８ビットカウンタ４１が２５５の次をカウントすると，即ち，カウント回数が２の８乗の２５６回に達すると，タイミング信号SCが生成され，レジスタDの２４ビットの積分値のうち，上位１６ビットのデジタル値がレジスタFにラッチされる。すなわち，レジスタDの２４ビットのうちレジスタFにラッチされる上位１６ビットは，積分回数の２５６で除算したパルス幅測定値PW1の平均値に対応する。したがって，レジスタDとFで８ビット右シフト回路が構成されている。このように，右シフト回路を利用して簡単な構成で除算回路の機能を構成することができる。ただし，積分回数は２のべき乗回数に限定される。
【００３７】
８ビットカウンタ４１が２５６回カウントアップしてオーバーフローすると，カウント値は０にリセットされ，８ビットカウンタ４１がタイミング信号SCを生成し，それに応答して平均値のデジタル信号PW2がレジスタFにラッチされ，レジスタE,Fが初期値０にリセットされる。
【００３８】
そして，平均化回路２３は，８ビットカウンタ４１とレジスタと加算器からなり，いずれも論理ゲートを組み合わせた簡単な回路で実現可能である。
【００３９】
［差分回路（差分計算回路）２４］
図７は，差分回路の回路図である。図７には，図６の平均化回路の一部と，差分回路２４が示されている。差分回路２４のレジスタGには，あらかじめ，CPUがソフトウエアを実行することにより，パルス幅平均値の期待値P2のデジタル値（１６ビット）がラッチされている。
【００４０】
前述のとおり，平均化回路２３では，タイミング信号SCに応答してレジスタFがパルス幅測定値PW1の平均値PW2をラッチする。平均値PW2がラッチされると，加算器Adder Cが，期待値P2から平均値PW2を減じて差分値dPW＝P2-PW2のデジタル信号を生成し，レジスタHがそれをラッチする。この差分値のデジタル信号は，符号ビットが加えられて１７ビットのデジタル信号である。そして，タイミング信号SCのタイミング後に，タイミング制御回路がタイミング信号SDを生成する。
【００４１】
差分回路２４も，レジスタと加算器で構成され，論理ゲートの簡単な組み合わせで実現できる。
【００４２】
［補正値生成回路（比例制御回路）２５］
図８は，補正値生成回路（比例制御回路）２５の回路図である。また，図９は，補正値制御回路２５内の符号化回路４２に設定されるレジスタI1,I2のフラグと，ビットシフト数と，ビットシフトに対応する乗算値の関係を示す図表である。
【００４３】
図８の補正値生成回路２５は，差分値dPWに比例制御の係数Kpを乗算して，補正値Kp*dPWを生成する。補正値生成回路２５は，タイミング信号SDに応答して，レジスタHに保持されている差分値dPWの絶対値をラッチするレジスタJと，符号ビットをラッチするレジスタKとを有する。レジスタHに保持されている差分値dPWは，その符号ビットが０（正）の場合は下位の１６ビットがそのままレジスタJにラッチされ，符号ビットが１（負）の場合は下位の１６ビットから−１した２の補数がレジスタJにラッチされる。つまり，レジスタH,Jで絶対値生成回路が構成される。
【００４４】
補正値生成回路２５は，更に，レジスタL1-L16と符号化回路４２とレジスタL1'-L16'と加算器Adder Dとを有する乗算回路と，乗算値をラッチするレジスタMとを有する。乗算回路は，レジスタJにラッチされた差分値dPWに，比例制御の係数Kpを乗算する回路であり，比例制御係数Kpは通常１以下の値である。
【００４５】
この乗算回路の動作は次の通りである。まず，レジスタJに保持された差分値dPWの絶対値（１６ビットのデジタル信号）を右に１，２，３〜１６ビットシフトして，それぞれレジスタL1-L16に保持する。図９には，１６ビットデジタル値「１」を，右に１，２，３〜１６ビットシフトした場合のそれぞれの値が１０進数で示されている。また，図９には，比例制御係数Kpの１０進数も示されている。
【００４６】
CPUは，あらかじめレジスタI1, I2に，比例制御係数Kpに対応するパタンを設定する。レジスタI1には正負の符号パタンが保持され，レジスタI2には正負符号パタンの有効無効を示す有効無効パタンが保持される。そして，これらレジスタI1,I2に保持された符号パタンと有効無効パタンとが符号化回路４２にセットされる。
【００４７】
符号化回路４２は，レジスタL1-L16内のビットシフトされた値のうち，レジスタI2で有効とされた値を，レジスタI1で設定された符号パタンに応じて，符号パタンが１（負）の場合は２の補数に変換して，符号パタンが０（正）の場合はそのまま変換せずに，レジスタL1'-L16'に出力し保持させる。符号化回路４２は，レジスタI2で無効とされたレジスタL1'-L16'には値０を出力し保持させる。
【００４８】
そして，加算器Adder Dは，レジスタL1'-L16'の値の総和を計算し，且つ，レジスタKが保持している符号ビットに応じて，符号ビットが１（負）の場合は総和を２の補数に変換して，符号ビットが０（正）の場合はそのまま変換せずに，レジスタMに符号付きデジタル信号（１７ビット）をラッチさせる。
【００４９】
図９に例示されているように，比例制御において，比例制御係数Kp＝０．００１としたい場合は，レジスタI1のビットパタンを［xxxxxxxxx0xx011x](xはdon't care)に，レジスタI2のビットパタンを［0000000001001110]に設定する。その結果，１０，１３，１４，１５ビット右シフト値がそれぞれ有効になり，加算器Adder Dは，１０ビットシフト値と１３ビットシフト値を加算し，１４，１５ビットシフト値を減算して，比例制御係数Kp=０．００１に近似する値と差分値dPWとの乗算結果を，補正値Kp*dPWとしてレジスタMに保持する。
【００５０】
上記のように，補正値生成回路２４は，レジスタと符号化回路と加算器で構成でき，論理ゲートの組み合わせで実現できる。符号化回路は，レジスタI1,I2のビットパタンに応じて，レジスタL1-L16のデジタル信号を０にしたりビット反転して２の補数にしたりするだけであり，論理ゲートの組み合わせで実現可能である。
【００５１】
［パルス幅計算回路２６］
図１０は，パルス幅計算回路の回路図である。パルス幅計算回路２６は，あらかじめCPUにより駆動パルス幅初期値P1が設定されるレジスタNと，加算器Adder Eと，加算器の加算結果を保持するレジスタOとを有する。駆動パルス幅初期値P1は，劣化のないLED素子が所望の輝度で発光するための駆動パルス幅である。
【００５２】
まず，CPUによりレジスタNに駆動パルス幅初期値P1が設定される初期状態では，レジスタMには初期値０が保持されているので，加算器Adder Eは，駆動パルス幅初期値P1をレジスタOに出力し保持させる。したがって，最初の駆動パルス幅PWM-PWは，初期値P1と等しい。
【００５３】
その後は，タイミング信号SDでレジスタMに補正値Kp*dPWが保持されるたびに，加算器Adder EがレジスタMとNのデジタル値を加算して，レジスタOに保持させる。そして，加算器Adder Eの加算値はレジスタNにも保持される。この加算値は，次の駆動パルスのパルス幅を示している。したがって，レジスタNには現在の駆動パルスのパルス幅が保持され，そのパルス幅で生成された駆動パルスに対する測定パルスM-Pulseのパルス幅Tから生成された補正値Kp*dPWがレジスタMに保持される。そして，加算器Adder Eが生成した加算値が，次の駆動パルスのパルス幅PWM-PWとなる。
【００５４】
パルス幅計算回路２６もレジスタと加算器で構成されるので，論理ゲートの組み合わせで実現可能である。
【００５５】
［駆動パルス生成回路２７］
図１１は，駆動パルス生成回路２７の回路図である。また，図１２は，駆動パルス生成回路の動作を説明する図である。駆動パルス生成回路２７は，クロックCLK0をカウントするタイマーカウンタ４３と，比較器を有するパルス発生器４４とを有する。あらかじめ，CPUによりタイマーカウンタ４３の周期PWM Timer Cycleが設定されていて，タイマーカウンタ４３は，カウント値０から周期PWM Timer Cycleに達するまでクロックCLK0をカウントアップする動作を繰り返す。
【００５６】
そして，パルス発生器４４は，タイマーカウンタのカウント値が０になると，そのカウント値がレジスタOの駆動パルス幅PWM-PWより小さいため出力をHレベルにし，その後，タイマーカウント値が駆動パルス幅PWM-PWに達すると出力をLレベルにする。これにより，パルス発生器４４は，タイマーカウンタ４３とレジスタOの１６ビットのデジタル信号を比較して，駆動パルスPWM-Pulseの電圧レベルをHレベルとLレベルに制御して，駆動パルス幅PWM-PWに対応するパルス幅の駆動パルスPWM-Pulseを生成する。
【００５７】
駆動パルス生成回路２７も，レジスタとタイマーカウンタと比較器で構成されているので，論理ゲートの組み合わせにより簡単か回路構成で実現できる。
【００５８】
以上のとおり，本実施の形態における外部素子駆動制御回路は，外部素子であるLEDに印加した駆動パルスによって生成されるLEDのカソードノードのパルスを，キャパシタに印加することで過渡特性を有する検出パルスを生成し，その検出パルスの過渡特性に対応したパルス幅を有する測定パルスM-Pulseのパルス幅を測定する。そして，このパルス幅の理想的な期待値との差分値を平均化し，平均化差分値を補正値として駆動パルス幅を補正する比例制御により補正後の駆動パルス幅を求め，駆動パルスを生成する。しかも，その回路構成は，論理ゲートの組み合わせで実現できる簡単な構成であり，高価なADC回路や，センサを必要としないので，低コストで実現できる。
【００５９】
上記の実施の形態では，外部素子としてLED素子を例にして説明したが，LED素子以外でも，経年劣化で出力電圧が低下するような素子であれば，本外部素子駆動制御回路を同様に適用することができる。
【符号の説明】
【００６０】
LED：LED素子
C:キャパシタ
１０：マイクロコンピュータ
１２：フィードバック回路
２１：入力バッファ（ヒステリシス回路）
２２：パルス幅測定回路
２３：平均化回路
２４：差分回路
２５：補正値生成回路
２６：パルス幅計算回路
２７：駆動パルス生成回路
PWM-Pulse：駆動パルス
PWM-PW：駆動パルスパルス幅
D-Pulse：検出パルス
M-Pulse：測定パルス
【図１】
2015023331.tif 000003
【図２】
2015023331.tif 000004
【図３】
2015023331.tif 000005
【図４】
2015023331.tif 000006
【図５】
2015023331.tif 000007
【図６】
2015023331.tif 000008
【図７】
2015023331.tif 000009
【図８】
2015023331.tif 000010
【図９】
2015023331.tif 000011
【図１０】
2015023331.tif 000012
【図１１】
2015023331.tif 000013
【図１２】
2015023331.tif 000014