以下、本発明を具体化した実施形態を図面に基づいて詳細に説明する。なお、本実施形態では、光プリントヘッドの一例であるLEDプリントヘッドに本発明を適用した例について説明する。
図1は、本発明の一実施形態によるLEDプリントヘッドの構造を説明するための斜視図であり、図2は、本発明の一実施形態によるLEDプリントヘッドの一部を示した平面図である。図3は、本発明の一実施形態によるLEDプリントヘッドの構成を説明するためのブロック図であり、図4は、本発明の一実施形態によるLEDプリントヘッドに搭載されたドライバICの構成を説明するためのブロック図である。まず、図1〜図4を参照して、本発明の一実施形態によるLEDプリントヘッド40およびドライバIC10の構造について説明する。なお、ドライバIC10は、本発明の「ドライバ装置」の一例である。
一実施形態によるLEDプリントヘッド40は、図1〜図3に示すように、複数の発光ダイオード素子(LED素子)1aを含むLEDアレイ1が実装された配線基板2と、LEDアレイ1の上方に配置され、LED素子1aからの光を集光するレンズアレイ3(図1参照)と、LEDアレイ1(LED素子1a)の発光(点灯)により生じた熱を放熱する放熱部材4(図1参照)と、レンズアレイ3を保持するとともにLEDアレイ1などを覆うハウジング部材5(図1参照)とを備えている。また、配線基板2の上面上には、LED素子1aを駆動するドライバIC10が実装されている。さらに、LEDプリントヘッド40は、ヘッド制御部20(図3参照)および電源供給回路部30(図3参照)を備えている。このヘッド制御部20は、プリンタコントローラ100を介して入力された印刷データに基づいてドライバIC10を制御する機能を有している。また、電源供給回路部30は、各回路部に電力を供給する機能を有している。なお、LEDアレイ1およびLED素子1aは、それぞれ、本発明の「発光素子アレイ」および「発光素子」の一例である。
また、LEDアレイ1は、図2に示すように、配線基板2の上面上に複数実装されている。この複数のLEDアレイ1は、A方向に沿って直線状に配列されている。また、LEDアレイ1は、1ラインのL画素(Lドット)に対応するように、アレイ状に配列されたL個のLED素子1aによって構成されている。
また、一実施形態によるドライバIC10は、LEDアレイ1の各々に対応するように、配線基板2の上面上に複数実装されている。また、ドライバIC10は、L個のLED素子1aに対応するL個の出力端子部11を有している。この出力端子部11とLED素子1aとは、ボンディングワイヤ6を介して、互いに電気的に接続されている。また、ドライバIC10は、図4に示すように、シフトレジスタ部12、ラッチ回路部13、階調制御回路部14、ドライバ回路部15、CLKカウンタ16、SCLKカウンタ17、および電源供給部18を備えている。
シフトレジスタ部12は、L個の出力端子部11に対応してL個のフリップフロップ回路によって構成されている。このシフトレジスタ部12は、ヘッド制御部20からのクロック信号D−CLOCKに同期して、階調データDATAが上位ビットから順にビット毎に入力されるように構成されている。また、シフトレジスタ部12は、入力された階調データDATAを、その内部に一時的に保持する機能を有している。さらに、シフトレジスタ部12は、ヘッド制御部20からのリセット信号RESET−1により、内部データをリセットするリセット機能(リセット端子)を有している。なお、内部データをリセットするリセット機能(リセット端子)は、本発明の「第1リセット手段」の一例であり、リセット信号RESET−1は、本発明の「第1リセット信号」の一例である。
ラッチ回路部13は、複数のフリップフロップ回路を含む論理回路から構成されており、階調データDATAをMビット階調×L個の出力端子分入力することが可能に構成されている。このラッチ回路部13は、ヘッド制御部20からのロード信号LOADによって、シフトレジスタ部12に保持されている階調データDATAがパラレルにロードされるように構成されているとともに、ロードされた階調データDATAを、その内部に一時的に保持(ラッチ)しておく機能を有している。
CLKカウンタ16は、ラッチ回路部13に送信されるロード信号LOADをカウントする機能を有している。
SCLKカウンタ17は、ヘッド制御部20からのストローブクロック信号STB−CLKのクロック数をカウントして、そのカウント数Nsを階調制御回路部14に送信する機能を有している。ここで、ストローブクロック信号STB−CLKは、出力端子部11に出力する駆動電流の出力時間の基準となるタイミング信号である。また、SCLKカウンタ17は、複数のフリップフロップ回路を含む論理回路から構成されており、ヘッド制御部20からのリセット信号RESET−2により、ストローブクロック信号STB−CLKのカウント数Nsをリセットするリセット機能(リセット端子)を有している。なお、ストローブクロック信号STB−CLKのカウント数Nsをリセットするリセット機能(リセット端子)は、本発明の「第2リセット手段」の一例であり、リセット信号RESET−2は、本発明の「第2リセット信号」の一例である。また、SCLKカウンタ17は、本発明の「カウンタ部」の一例である。
階調制御回路部14は、ラッチ回路部13に転送された階調データDATAが示す階調値に応じて、各出力端子部11に出力する駆動電流の出力時間を制御する機能を有している。なお、階調制御回路部14による出力時間の制御は、SCLKカウンタ17から送信されるストローブクロック信号STB−CLKのカウント数Nsに基づいて行われる。
ドライバ回路部15は、階調制御回路部14からの階調データDATAに基づいて、各出力端子部11にそれぞれ所定の時間だけ駆動電流を出力する。すなわち、ドライバ回路部15は、階調データDATAが示す階調値に応じた所定の時間だけ各出力端子部11に駆動電流を出力することにより、階調データDATAが示す階調値に応じた所定の時間だけ各LED素子1aを発光(点灯)させる。
電源供給部18は、駆動電流としての定電流をドライバ回路部15に供給する機能を有している。
また、ヘッド制御部20は、図3に示すように、信号生成部21を備えている。信号生成部21は、各種タイミング信号を生成してドライバIC10に送信する機能を有している。具体的には、信号生成部21は、シフトレジスタ部12の内部データをリセットするリセット信号RESET−1、SCLKカウンタ17のカウント数Nsをリセットするリセット信号RESET−2、階調データDATAをシフトレジスタ部12に入力する時の基準となるクロック信号D−CLOCK、階調データDATAをシフトレジスタ部12からラッチ回路部13に転送(ロード)するためのタイミング信号であるロード信号LOAD、および、出力端子部11に出力する駆動電流の出力時間の基準となるストローブクロック信号STB−CLKを生成して所定のタイミングでドライバIC10に送信する。なお、各種タイミング信号は、直接プリンタコントローラ100から送信されてもよい。
上記のように構成された一実施形態によるLEDプリントヘッド40では、図1に示すように、印刷データが入力されると、そのデータに基づいて各LED素子1aが所定の時間だけ発光(点灯)される。そして、LED素子1aからの光は、レンズアレイ3を構成するロッドレンズ3aによって集光される。これにより、LEDプリントヘッド40が画像形成装置(図示せず)に装着されている場合には、ロッドレンズ3aによって集光された光により、感光体表面に静電潜像を形成することが可能となる。なお、LED素子1aの発光時間(点灯)を長くした場合には、感光体表面を強く露光することができるので、露光された領域に付着するトナー量を増加させることが可能となる。その一方、LED素子1aの発光時間(点灯)を短くした場合には、感光体表面の露光量を少なくすることができるので、露光された領域に付着するトナー量を減少させることが可能となる。したがって、1画素毎に濃度を変化させることが可能となるので、濃淡を有する画像を得ることができる。
図5〜図8は、本発明の一実施形態によるドライバICの動作を説明するためのフローチャートである。図9は、一実施形態によるドライバICの動作を説明するための模式図であり、図10および図11は、一実施形態によるドライバICの動作を説明するためタイミングチャートである。なお、図5には、ドライバICにおける各ライン間のシーケンスを示しており、図6には、図5に示した一実施形態のステップS1の階調データ転送動作ルーチンについて説明するためのフローチャートを示している。図7には、図5に示した一実施形態のステップS2のLED発光動作ルーチンについて説明するためのフローチャートを示しており、図8には、図5に示した一実施形態のステップS3の階調データ確定動作ルーチンについて説明するためのフローチャートを示している。
次に、図3および図5〜図11を参照して、一実施形態によるドライバIC10の動作(各ライン間のシーケンス)について説明する。なお、以下の説明では、ドライバIC10は、8ビット(Mビット)の階調データDATAを扱うことが可能に構成されているものとする。すなわち、ドライバIC10のラッチ回路部13は、図9に示すように、最大ビットMSB(Most Significant Bit)がbit7で最小ビットLSB(Least Significant Bit)がbit0となるように構成されているものとする。
まず、図5のステップS1において、階調データDATAを、シフトレジスタ部12を介してラッチ回路部13に転送する階調データ転送動作が行われるとともに、ステップS1における階調データ転送動作と並行して、ステップS2において、各LED素子1aの発光(点灯)を制御するLED発光動作が行われる。なお、ステップS2におけるLED発光動作では、後述するステップS3およびステップS4により出力データとして確定された階調データDATA(1ライン前の階調データDATA)に基づいて、LED素子1aの発光動作が行われる。次に、ステップS1における階調データ転送動作が終了すると、ステップS3において、階調データ確定動作が行われ、入力された階調データDATAがドライバ回路部15からの出力データとして確定される。
ここで、ステップS3における階調データ確定動作では、階調データDATAの確定条件として、ステップS1における階調データ転送動作が終了していることに加えて、ステップS2におけるLED発光動作が終了していることが条件とされる。そして、ステップS3において階調データDATAが出力データとして確定されると、ステップS4において、確定された階調データDATAがドライバ回路部15にセットされる。続いて、ドライバ回路部15にセットされた確定された階調データDATAに基づいて、再び、ステップS2におけるLED発光動作が行われるとともに、階調データDATAがシフトレジスタ部12へ転送される。以上の動作(ステップS1〜ステップS4)が印刷データの最終ラインまで繰り返される。
次に、図6を参照して、図5に示した一実施形態のステップS1の階調データ転送動作ルーチンについて説明する。この階調データ転送動作ルーチンでは、まず、ステップS11において、ヘッド制御部20により、階調データDATAの階調ビット数mがドライバIC10の構成階調ビット数であるMビット(8ビット)よりも小さいか否かが判断される。
ステップS11において、ヘッド制御部20により、階調データDATAの階調ビット数mがドライバIC10の構成階調ビット数であるMビット(8ビット)よりも小さいと判断された場合には、ステップS12において、ヘッド制御部20からシフトレジスタ部12にリセット信号RESET−1が送信されて、ステップS13において、シフトレジスタ部12の内部データがクリアされる。たとえば、階調データDATAの階調ビット数mが4ビットの場合には、ドライバIC10の構成階調ビット数M(8ビット)よりも階調ビット数が小さいので、図9および図10に示すように、ヘッド制御部20からシフトレジスタ部12にリセット信号RESET−1が送信される。これにより、シフトレジスタ部12の内部データがリセットされて、シフトレジスタ部12の内部データの全てが「0」のデータにされる。
次に、図6のステップS14において、ヘッド制御部20からラッチ回路部13にロード信号LOADが送信されるとともに、ステップS15において、シフトレジスタ部12の内部データ(この場合は、「0」のデータ)がロード信号LOADに同期してラッチ回路部13に転送される。これにより、ラッチ回路部13に「0」のデータがラッチされる。次に、ステップS16において、ヘッド制御部20により、ロード信号LOADの送信回数Nが(M−m)回(mが4ビットの場合には、8−4=4回)であるか否かが判断される。
図6のステップS16において、ヘッド制御部20により、ロード信号LOADの送信回数Nが(M−m)回(=4回)でないと判断された場合には、ロード信号LOADの送信回数Nが(M−m)回(=4回)になるまで、上記したステップS14〜ステップS16の動作が繰り返される。一方、ステップS16において、ヘッド制御部20により、ロード信号LOADの送信回数Nが(M−m)回(=4回)であると判断された場合には、ステップS17へと進む。ここで、ラッチ回路部13への階調データDATAの転送は、図9に示すように、上位ビットから下位ビットの順にビット毎に行われる。このため、たとえば、ドライバIC10の構成階調ビット数Mが8ビットで、階調データDATAの階調ビット数mが4ビットの場合には、ラッチ回路部13のbit7〜bit4まで、「0」のデータが転送されてラッチされた状態となる。
その後、図6のステップS17において、印刷データが送信され、ステップS18において、シフトレジスタ部12に階調データDATAが入力される。この際、階調データDATAは、図10に示すように、ヘッド制御部20から送信されるクロック信号D−CLOCKの立ち上がりエッジおよび立ち下がりエッジ、又は両エッジに同期して、シフトレジスタ部12に順次読み込まれていく。次に、ステップS19において、ヘッド制御部20からラッチ回路部13にロード信号LOADが送信されて、ステップS20において、ラッチ回路部13に上位ビットから順に階調データDATAがセットされる。
そして、図6のステップS21において、ヘッド制御部20により、ロード信号LOADの送信回数NがM回(8回)であるか否かが判断される。すなわち、図9に示すラッチ回路部13のbit0まで階調データDATAが転送されたか否かが判断される。図6のステップS21において、ヘッド制御部20により、ロード信号LOADの送信回数NがM回(8回)ではないと判断された場合には、ロード信号LOADの送信回数NがM回(8回)になるまで、上記したステップS17〜ステップS21の動作が繰り返される。一方、ステップS21において、ヘッド制御部20により、ロード信号LOADの送信回数NがM回(8回)であると判断された場合には、階調データ転送動作が終了する。これにより、図9に示すラッチ回路部13のbit3〜bit0まで、階調データDATAが転送されてラッチされ、ステップS1の階調データ転送動作が終了する。
一方、図6のステップS11において、ヘッド制御部20により、階調データDATAの階調ビット数mがドライバIC10の構成階調ビット数であるMビット(8ビット)よりも小さくない、すなわち、階調データDATAの階調ビット数mがMビット(8ビット)であると判断された場合には、リセット信号RESET−1がシフトレジスタ部12に送信されることなく、上記したステップS17〜ステップS21の動作のみが繰り返される。すなわち、階調データDATAのビット数mがドライバIC10の構成階調ビット数Mと同じ8ビットの場合には、階調データDATAの全てがラッチ回路部13に転送されてラッチされる。
次に、図7を参照して、図5に示した一実施形態のステップS2のLED発光動作ルーチンについて説明する。このLED発光動作ルーチンでは、まず、ステップS31において、ヘッド制御部20により、階調データDATAの階調ビット数mがドライバIC10の構成階調ビット数であるMビット(8ビット)よりも小さいか否かが判断される。ステップS31において、ヘッド制御部20により、階調データDATAの階調ビット数mがドライバIC10の構成階調ビット数であるMビット(8ビット)よりも小さい(4ビット)と判断された場合には、ステップS32において、ヘッド制御部20からSCLKカウンタ17にストローブクロック信号STB−CLKが入力される。
そして、ステップS33において、ヘッド制御部20により、SCLKカウンタ17のカウント数Nsが2m回(=24回=16回)であるか否かが判断される。ステップS33において、ヘッド制御部20により、SCLKカウンタ17のカウント数Nsが2m回(=16回)でないと判断された場合には、SCLKカウンタ17のカウント数Nsが2m回(=16回)になるまで、上記したステップS32およびステップS33の動作が繰り返される。すなわち、SCLKカウンタ17にストローブクロック信号STB−CLKが2m回(=16回)入力される。そして、ストローブクロック信号STB−CLKのカウント数Nsに基づいて、階調制御回路部14により各出力端子部11に出力する駆動電流の出力時間が制御されるとともに、階調制御回路部14からの階調データDATAに基づいて、ドライバ回路部15により各出力端子部11にそれぞれ所定の時間だけ駆動電流が出力される。これにより、図9および図10に示すように、階調データDATAが示す階調値に応じた所定の時間だけ各LED素子1aを発光(点灯)させる制御がなされる。
たとえば、図9に示すように、所定の出力端子部11の階調データDATAが「00001111」であったとすると、階調値は15(=0×27+0×26+0×25+0×24+1×23+1×22+1×21+1×20=0+0+0+0+8+4+2+1)(階調値0を含めて、16階調)となるので、ストローブクロック信号STB−CLKの15クロック分の時間だけ、その出力端子部11に駆動電流が出力される。すなわち、ストローブクロック信号STB−CLKの15クロック分の時間だけ所定のLED素子1aが発光(点灯)される。なお、出力端子部11への駆動電流の出力(LED素子1aの発光)は、ストローブクロック信号STB−CLKの1カウント目の立ち下がりエッジから開始され、階調値が15の場合には、ストローブクロック信号STB−CLKの16カウント目の立ち下がりエッジで終了する。すなわち、階調値が15の場合には、SCLKカウンタ17のカウント数Nsは、階調値よりも1大きい数である16となる。また、階調値0は、LED素子1aが発光(点灯)されない状態とされる。
一方、図7のステップS33において、ヘッド制御部20により、SCLKカウンタ17のカウント数Nsが2m回(=16回)であると判断された場合には、ステップS34において、ヘッド制御部20からSCLKカウンタ17にリセット信号RESET−2が送信される。そして、ステップS35において、SCLKカウンタ17のカウント数Nsがリセットされて、ステップS2のLED発光動作が終了する。これにより、図9および図11に示すように、2m回(=16回)以降の無駄なストローブクロック信号STB−CLKがSCLKカウンタ17に入力されるのを省略することが可能となるので、無駄な信号が入力されない分、1ラインの時間を短縮することが可能となる。
一方、図7のステップS31において、ヘッド制御部20により、階調データDATAの階調ビット数mがドライバIC10の構成階調ビット数であるMビット(8ビット)よりも小さくない、すなわち、階調データDATAの階調ビット数mがMビット(8ビット)であると判断された場合には、ステップS36において、ヘッド制御部20からSCLKカウンタ17にストローブクロック信号STB−CLKが入力される。そして、ステップS37において、ヘッド制御部20により、SCLKカウンタ17のカウント数Nsが2M回(=28回=256回)であるか否かが判断される。
ステップS37において、ヘッド制御部20により、SCLKカウンタ17のカウント数Nsが2M回(=256回)でないと判断された場合には、SCLKカウンタ17のカウント数Nsが2M回(=256回)になるまで、上記したステップS36およびステップS37の動作が繰り返される。すなわち、SCLKカウンタ17にストローブクロック信号STB−CLKが2M回(=256回)入力される。一方、ステップS37において、ヘッド制御部20により、SCLKカウンタ17のカウント数Nsが2M回(=256回)であると判断された場合には、LED発光動作が終了する。なお、ステップS36およびステップS37の動作において、階調制御回路部14およびドライバ回路部15により、上記と同様のLED素子1aの発光動作が行われる。
続いて、図8を参照して、図5に示した一実施形態のステップS3の階調データ確定動作ルーチンについて説明する。この階調データ確定動作ルーチンでは、まず、ステップS41において、ヘッド制御部20により、ロード信号LOADの送信回数NがM回(8回)であることを認識するとともに、リセット信号RESET−2が送信されていること、または、ストローブクロック信号STB−CLKのカウント数Nsが2M回(=256回)であることを認識する。なお、ロード信号LOADの送信回数NがM回(8回)であることを認識することによって、ラッチ回路部13の全て(bit7〜bit0:図9参照)に階調データDATAが転送されてラッチされている状態であることを認識することができる。これにより、階調データDATAの全てが転送されていない状態で、データが確定されるのを抑制することが可能となる。また、リセット信号RESET−2が送信されていること、または、ストローブクロック信号STB−CLKのカウント数Nsが2M回(=256回)であることを認識することによって、LED素子1aの発光動作が終了していることを認識することが可能となる。
ステップS41において、ヘッド制御部20により、上記した条件を満たすことが認識されると、ステップS42において、ラッチ回路部13にラッチされている階調データDATAが階調制御回路部14に転送されて、階調データDATAがドライバ回路部15からの出力データとして確定される。これにより、ステップS3の階調データ確定動作が終了する。
本実施形態では、上記のように、ドライバIC10を、階調データDATAの階調ビット数mがドライバIC10の構成階調ビット数Mよりも小さい場合にシフトレジスタ部12の内部データを予めリセットするように構成することによって、内部データがリセットされた場合には、シフトレジスタ部12の内部データをクリアして、全ての内部データを「0」のデータにすることができる。すなわち、シフトレジスタ部12に「0」のデータを生成することができる。このため、シフトレジスタ部12に生成された「0」のデータを、ヘッド制御部20からのロード信号LOADに同期してラッチ回路部13に順次転送することにより、ラッチ回路部13に、上位の階調ビットから順に「0」のデータをラッチ(セット)することができる。これにより、階調データDATAの階調ビット数mがMビットよりも小さい場合には、上位の階調ビットに「0」のデータが付与されるので、任意の階調ビット数の階調データDATAであっても、必要な階調ビット分のみ階調データDATAを転送すれば、その階調データDATAに基づいて階調制御を行うことができる。すなわち、階調データDATAの階調ビット数を任意に選定することが可能となる。
また、本実施形態では、シフトレジスタ部12の内部データをリセットすることによって、シフトレジスタ部12の内部データの全てを瞬時に「0」のデータにすることができる。このため、シフトレジスタ部12に「0」のデータを順次入力していく必要がある従来の方法と比べて、シフトレジスタ部12に「0」のデータを入力する時間を短縮することができる。一方、内部データがリセットされた場合には、シフトレジスタ部12は、階調データDATAが入力されるまで内部データが全て「0」の状態に保たれるので、ヘッド制御部20からロード信号LOADが入力されるだけで、ラッチ回路部13に、上位の階調ビットから順に「0」のデータをセット(ラッチ)することができる。したがって、Mビットよりも小さい任意の階調ビット数(階調数)の階調データDATAに基づいて階調制御を行うために、上位の階調ビットに「0」のデータを付与(入力)する場合でも、それに要する時間を非常に短くすることができる。その結果、階調データDATAに応じた転送速度でラッチ回路部13に階調データDATAを転送することができるので、その階調ビット数(階調数)に応じた印刷速度を得ることができる。すなわち、階調ビット数(階調数)に応じて印刷速度を高速化することができる。
なお、ドライバIC10を上記のように構成することによって、任意の階調ビット数(階調数)の階調データDATAであっても階調制御を行うことが可能となるので、ドライバIC10に汎用性を持たせることができる。したがって、階調数(階調ビット)に応じて、ドライバICを設計および作製することが不要となる。
また、本実施形態では、階調制御回路部14を、SCLKカウンタ17におけるストローブクロック信号STB−CLKのカウント数Nsに基づいて、出力端子部11への駆動電流の出力時間を制御するように構成し、SCLKカウンタ17を、ヘッド制御部20からのリセット信号RESET−2によりストローブクロック信号STB−CLKのカウント数Nsをリセットするリセット機能(リセット端子)を有するとともに、階調データDATAの階調ビット数がMビットよりも小さいmビットの場合には、ストローブクロック信号STB−CLKのクロック数が2m回に達した後の所定のタイミングで、リセット信号RESET−2によりストローブクロック信号STB−CLKのカウント数Nsをリセットするように構成することによって、任意の階調ビット数(階調数)に応じたクロック数だけストローブクロック信号STB−CLKを入力することができるので、無駄なストローブクロック信号STB−CLKの入力を省略することができる。すなわち、階調データDATAの階調ビット数がmビットの場合には、ストローブクロック信号STB−CLKは2m回入力されれば足りるので、2m回以降のストローブクロック信号STB−CLKは無駄な信号となる。このため、2m回に達した後の所定のタイミングで、リセット信号RESET−2によりストローブクロック信号STB−CLKのカウント数Nsをリセットすることにより、2m回以降の無駄なストローブクロック信号STB−CLKの入力を省略することができる。これにより、2m回以降の無駄なストローブクロック信号STB−CLKの入力が省略された分、1ライン分の印刷に要する時間を短縮することができるので、容易に、階調ビット数(階調数)に応じて印刷速度を高速化することができる。また、無駄なストローブクロック信号STB−CLKの入力が省略される分、必要なストローブクロック信号STB−CLKにおいてパルス幅を広げることができる。これにより、露光させる時間を必要なだけ長くすることができる。
また、本実施形態では、階調制御回路部14に階調データDATAがドライバ回路部15からの出力データとして確定された場合には、確定された階調データDATAに基づいてドライバ回路部15から出力端子部11に駆動電流が出力されるとともに、出力端子部11に駆動電流が出力されるのと並行して、ラッチ回路部13に、シフトレジスタ部12から次のラインの階調データDATAが順次転送されるように構成されている。このように構成すれば、容易に、印刷速度を高速化することができる。
なお、今回開示された実施形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施形態の説明ではなく特許請求の範囲によって示され、さらに特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれる。
たとえば、上記実施形態では、本発明をLEDプリントヘッドに適用した例を示したが、本発明はこれに限らず、LEDプリントヘッド以外の光プリントヘッドに本発明を適用してもよい。たとえば、発光素子としての有機EL素子が搭載された光プリントヘッドに本発明を適用してもよい。
また、上記実施形態では、SCLKカウンタのカウント数Nsが2m回に達したタイミングで、SCLKカウンタのカウント数Nsをリセットするように構成したが、本発明はこれに限らず、SCLKカウンタのカウント数Nsが2m回に達した後の所定のタイミングで、SCLKカウンタのカウント数Nsをリセットするように構成してもよい。
また、上記実施形態では、ドライバICを8ビットの階調データDATAを扱うことが可能に構成した例を示したが、本発明はこれに限らず、8ビット以外の階調データDATAを扱うことが可能に構成することもできる。この場合、出来るだけ大きな階調ビット数となるように構成するのが好ましい。
なお、上記実施形態では、階調データDATAの階調ビット数mがドライバICの構成階調ビット数Mよりも小さい場合の具体例として、階調データDATAの階調ビット数mが4ビットの場合について説明したが、階調データDATAの階調ビット数mは、当然に、4ビット以外の任意の階調ビット数の階調データDATAであっても、階調制御(階調記録)を行うことができる。