説明

プリンタ、プリンタの制御方法、プリンタの制御プログラム

【課題】サーマルヘッドと、サーマルヘッド制御部と、それらを接続する配線から生じる放射ノイズの影響を低減する。
【解決手段】50MHzのシステムクロックを2逓倍し、100MHzのクロックを生成する。このクロックを分周して、複数の周波数のクロックを生成し、これらのクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成する。サーマルヘッド駆動データ生成部14からのオン・オフするデータを、複数の周波数に変化するデータクロック信号で転送し、シフトレジスタ41により各発熱抵抗体R1〜Rnに対応した位置に保持する。シフトレジスタ41に保持されたオン・オフデータにより各発熱抵抗体R1〜Rnを通電する。1ストローブ期間内で、データクロック信号の周波数が変わるため、ノイズのエネルギーが分散され、放射ノイズの影響を低減できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、昇華型プリンタ(単に、「昇華プリンタ」ともいう)に関し、特に、サーマルヘッドと、サーマルヘッド制御部と、それらの配線により生じる放射ノイズの影響を低減することができる、プリンタ、および該プリンタの制御方法、プリンタの制御プログラムに関する。
【背景技術】
【0002】
昇華プリンタは、染料または顔料が塗布されたインクリボンにサーマルヘッドを押し当て、サーマルヘッドの加熱により、インクリボンの染料または顔料を紙などの記録媒体に転写させ画像を形成するものであり、写真印刷の用途などで使用されている。
【0003】
図9は、従来のプリンタの構成例を示す図であり、特に、サーマルヘッドの駆動回路の例を示した図である。図9において、主制御部111は、CPU(Central Processing Unit)等を含み、プリンタ101の全体を統括制御する。入力バッファ112は、外部のホストコンピュータ(PC(Personal Computer)等)102からプリント対象となる画像を、YMC(イエロー(Y)、マゼンタ(M)、シアン(C))等の入力画像データにより受信し記憶する。プリント用画像データ生成部113は、外部から受信したYMC入力画像データを、インクリボンに対応したプリント用画像データに変換する。
【0004】
また、サーマルヘッド駆動データ生成部114は、プリント用画像データ生成部113からプリント対象画像の画像データを受信し、該画像データを基に発熱抵抗体R1〜Rnをオン・オフ駆動するためのオン・オフデータを生成し、サーマルヘッド140に出力する。
【0005】
サーマルヘッド制御部115は、サーマルヘッド140を加熱制御するための、ストローブ信号(STROBE)、ラッチ信号(LATCH)、データクロック信号(CLOCK)を生成する。
【0006】
また、サーマルヘッド140内のR1〜Rnはn個並列接続された発熱抵抗体であり、Tr1〜Trnは、発熱抵抗体を駆動するドライバー用のトランジスタである。また、G1〜GnはANDゲートである。シフトレジスタ141は、サーマルヘッド駆動データ生成部114から送られるシリアルデータ(DATA)を、データクロック信号(CLOCK)により順次取り込み、シリアルデータをパラレルデータに変換し各発熱抵抗体R1〜Rnに対応した位置にオン・オフデータを保持するものである。
【0007】
ラッチ用フリップフロップ142は、シフトレジスタ141に保持されたデータ(各発熱抵抗体に対応したオン・オフデータ)を、ラッチ信号(LATCH)により取り込み保持する。ラッチ用フリップフロップ142に保持されたデータは、ANDゲートG1〜Gnの一方の入力端子に向けて出力される。また、ANDゲートG1〜Gnの他方の入力端子には、ストローブ信号(STROBE)が入力される。
【0008】
図9に示す従来のプリンタでは、ホストコンピュータ102からのYMC(イエロー(Y)、マゼンタ(M)、シアン(C))等の画像データは、主制御部111の管理の基に取り込まれ、入力バッファ112に一旦保存される。そして、入力バッファ112から1水平ライン分の画像データが読み出され、プリント用画像データ生成部113に送られる。プリント用画像データ生成部113により、インクリボンに対応したプリント用画像データが生成される。
【0009】
プリント用画像データ生成部113からの1水平ライン分の画像データは、サーマルヘッド駆動データ生成部114に送られる。サーマルヘッド駆動データ生成部114で、オン・オフデータが形成される。
【0010】
すなわち、各発熱抵抗体R1〜Rnの通電時間を一定とした場合、発熱抵抗体R1〜Rnの発熱量は、通電回数により階調を制御できる。したがって、例えば画像データが10ビットであれば、1023回、発熱抵抗体R1〜Rnを繰り返して通電することで、10ビットの階調が表現できる。
【0011】
サーマルヘッド駆動データ生成部114からのオン・オフデータは、シフトレジスタ141に送られ、シフトレジスタ141でシリアル・パラレル変換されて、シフトレジスタ141に展開される。ラッチ信号(LATCH)がローレベルになるタイミングで、このオン・オフデータがラッチ用フリップフロップ142に取り込まれる。そして、ストローブ信号(STROBE)がローレベルになる。このストローブ信号(STROBE)がローレベルになると、ラッチ用フリップフロップ142の出力信号がトランジスタTr1〜Trnのベース入力信号となる。これにより、ラッチ用フリップフロップ142の出力端子のうち、出力データ「1」の端子に(ANDゲートを介して)接続されるトランジスタTr1〜Trnがオンし、該トランジスタTr1〜Trnに接続された発熱抵抗体R1〜Rnが電源V+により駆動される。これにより、ストローブ信号(STROBE)がローレベルの間を発熱期間として、オン・オフデータに応じて、発熱抵抗体R1〜Rnが発熱される。
【0012】
上述のように、1023回の通電処理を繰り返すと、1水平ラインのプリント処理が完了したことになる。1水平ラインのプリント処理が完了したら、1ドット用紙が送られ、上述と同様にした、次の水平ラインのプリント処理が行われる。YMCの各色について、上述の処理が行われて、1画面分のカラー画像のプリントが完了する。
【0013】
なお、階調の制御には、例えば、特許文献1に示されるように、パルス幅変調またはパルス数変調により、画像データ応じたパルス幅またはパルス数を持つパルスを発生し、このパルスを用いて個々の発熱抵抗体への発熱制御を行うようにしたものも知られている。
【特許文献1】特許第3608863号明細書
【発明の開示】
【発明が解決しようとする課題】
【0014】
上述の従来のプリンタでは、サーマルヘッド140のユニットは、印字部の近傍に置かれる。このため、図10に示すように、サーマルヘッド140とサーマルヘッド制御部115との間は、長い配線で引き回される。この配線からは、放射ノイズが発生する。データクロック信号(CLOCK)の周波数が一定の場合には、この放射ノイズは、データクロック信号(CLOCK)の整数倍に集中し、ノイズのエネルギーが特定周波数に集中することから、そのレベルも大きくなる。
【0015】
本発明は上記問題点を解決するためになされたものであり、その目的は、サーマルヘッドと、サーマルヘッド制御部と、それらの配線により生じる放射ノイズの影響を低減することができる、プリンタ、プリンの制御方法、プリンタの制御プログラムを提供することにある。
【課題を解決するための手段】
【0016】
上述の課題を解決するために、本発明に係るプリンタは、発熱抵抗体を主走査方向にライン配列したサーマルヘッドを用いて印刷を行うプリンタであって、システムクロックに基づいて所定の単位周波数のクロックを生成し、前記単位周波数のクロックから互いに異なる周波数の複数のクロックを生成し、周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成するデータクロック周波数制御手段と、入力画像データに基づいてサーマルヘッドの各発熱抵抗体のオン・オフデータを生成するサーマルヘッド駆動データ生成手段と、サーマルヘッド駆動データ生成手段により生成された各発熱抵抗体のオン・オフデータを受信し、データクロック信号により、オン・オフデータを各発熱抵抗体に対応した位置に転送するシフトレジスタ手段と、シフトレジスタ手段に保持されたオン・オフデータを取り込むラッチ手段と、ラッチ手段に取り込まれたオン・オフデータにより発熱抵抗体を所定の単位時間通電する発熱抵抗体駆動手段とを備えるようにしたことを特徴とする。
【0017】
上記の発明において、データクロック周波数制御手段は、1ストローブ期間内で複数の周波数に変化するように、周波数の異なる複数のクロックを順次選択するようにしたことを特徴とする。
【0018】
上記の発明において、データクロック周波数制御手段は、システムクロックを逓倍して所定の単位周波数のクロックを生成する手段と、システムクロックを逓倍して生成した所定の単位周波数のクロックを分周して複数の周波数のクロックを生成する複数の分周器と、複数の分周器から出力される複数の周波数のクロックを順次選択するセレクタとを備えるようにしたことを特徴とする。
【0019】
本発明に係るプリンタの制御方法は、発熱抵抗体を主走査方向にライン配列したサーマルヘッドを用いて印刷を行うプリンタの制御方法であって、システムクロックに基づいて周波数の異なる複数のクロックを生成し、周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成し、入力画像データに基づいてサーマルヘッドの各発熱抵抗体のオン・オフデータを生成し、生成された各発熱抵抗体のオン・オフデータを、データクロック信号によりシフトレジスタ手段の各発熱抵抗体に対応した位置に転送し、シフトレジスタ手段に保持されたオン・オフデータをラッチ手段に取り込み、ラッチ手段に取り込まれたオン・オフデータにより発熱抵抗体を所定の単位時間通電するようにしたことを特徴とする。
【0020】
本発明に係るプリンタの制御プログラムは、発熱抵抗体を主走査方向にライン配列したサーマルヘッドを用いて印刷を行うプリンタの制御プログラムであって、システムクロックに基づいて周波数の異なる複数のクロックを生成し、周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成するステップと、入力画像データに基づいてサーマルヘッドの各発熱抵抗体のオン・オフデータを生成し、生成された各発熱抵抗体のオン・オフデータを、データクロック信号によりシフトレジスタ手段の各発熱抵抗体に対応した位置に転送するステップと、シフトレジスタに保持されたオン・オフデータをラッチ手段に取り込み、ラッチ手段に取り込まれたオン・オフデータにより発熱抵抗体を所定の単位時間通電するステップとを含むようにしたことを特徴とする。
【発明の効果】
【0021】
本発明によれば、システムクロックに基づいて周波数の異なる複数のクロックを生成し、周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成している。このため、データクロック信号により発生する放射ノイズが、特定の周波数(データクロック周波数の倍数の周波数)の位置で連続して発生することがなくなり、放射ノイズの周波数が分散され、サーマルヘッドと、サーマルヘッド制御部と、それらの配線により生じる放射ノイズの影響を低減することができる。
【発明を実施するための最良の形態】
【0022】
以下、本発明の実施の形態について図面を参照しながら説明する。図1は、本発明の実施の形態のプリンタ1の構成例を示す図であり、特に、サーマルヘッドの駆動回路の例を示した図である。
【0023】
図1において、主制御部11は、CPU等を含み、入力バッファ12、プリント用画像データ生成部13、サーマルヘッド駆動データ生成部14、サーマルヘッド制御部15、データクロックジェネレータ16等に接続され、プリンタ1の全体を統括制御する。
【0024】
入力バッファ12は、外部のホストコンピュータ(PC等)2からプリント対象となる画像を、YMC(イエロー(Y)、マゼンタ(M)、シアン(C))等の入力画像データにより受信し記憶する。
【0025】
プリント用画像データ生成部13は、外部から受信したYMC入力画像データを、インクリボンに対応したプリント用画像データに変換する。
【0026】
サーマルヘッド駆動データ生成部14は、プリント用画像データ生成部13からプリント対象画像の画像データを受信し、該画像データを基にサーマルヘッド40の発熱抵抗体R1〜Rnをオン・オフ駆動するためのオン・オフデータ(DATA)を生成し、サーマルヘッド40に出力する。本発明の実施形態においては、一例として、図2に示すように、画像データは10ビットとされており、この10ビットの画像データ(b0〜b9)を、下位3ビット(b0〜b3)と、上位7ビット(b3〜b9)とに分けて、オン・オフデータを形成している。
【0027】
図1において、サーマルヘッド40は、シフトレジスタ41と、ラッチ用フリップフロップ42と、発熱抵抗体R1〜Rnと、ANDゲートG1〜Gnと、トランジスタTr1〜Trnとを含み、サーマルヘッド駆動データ生成部14から出力されるオン・オフデータに応じて、発熱抵抗R1〜Rnを発熱させる。
【0028】
サーマルヘッド制御部15は、データクロックジェネレータ16からのクロックを用いて、サーマルヘッド40を加熱制御するための、ストローブ信号(STROBE)、ラッチ信号(LATCH)、データクロック信号(CLOCK)を生成する。
【0029】
データクロックジェネレータ16は、サーマルヘッド制御部15に対するクロックを生成している。本発明の実施形態において、データクロックジェネレータ16は、複数クロック周波数制御部17を備えており、この複数周波クロック周波数制御部17は、システムクロックに基づいて周波数の異なる複数のクロックを生成し、この周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号(CLOCK)を生成する。
【0030】
ストローブ信号(STROBE)は、サーマルヘッド40の発熱抵抗体R1〜Rnの通電時間を設定するものであり、サーマルヘッド制御部15は、上位ビットの処理を行うときと、下位ビットの処理とを行うときとで、ストローブ信号(STROBE)のパルス幅を変えるようにしている。
【0031】
サーマルヘッド駆動データ生成部14からの1水平ラインのオン・オフデータ(DATA)は、サーマルヘッド40のシフトレジスタ41に送られる。このオン・オフデータ(DATA)は、データクロック信号(CLOCK)により、シフトレジスタ41を転送され、シフトレジスタ41には、1水平ライン分のオン・オフデータが各発熱抵抗体R1〜Rnに対応する位置に展開される。サーマルヘッド制御部15からのラッチ信号(LATCH)により、1水平ラインのオン・オフデータがシフトレジスタ41からラッチ用フリップフロップ42に取り込まれる。
【0032】
ラッチ用フリップフロップ42に保持されたデータは、ANDゲートG1〜Gnの一方の入力端子に向けて出力され、また、ANDゲートG1〜Gnの他方の入力端子には、ストローブ信号(STROBE)が入力される。
【0033】
前述したように、ストローブ信号(STROBE)は、発熱抵抗体R1〜Rnへの通電時間を設定するものである。ストローブ信号(STROBE)がローレベルの間では、ANDゲートG1〜Gnが開き、ラッチ用フリップフロップ42に保持されたオン・オフデータがANDゲートG1〜Gnを介して、トランジスタTr1〜Trnのベースに送られる。このとき、オン・オフデータが「1」なら、トランジスタTr1〜Trnがオンになり、トランジスタTr1〜Trnに接続された発熱抵抗体R1〜Rnが電源V+により駆動され、発熱抵抗体R1〜Rnが発熱する。オン・オフデータが「0」なら、トランジスタTr1〜Trnがオフになるため、発熱抵抗体R1〜Rnは発熱しない。ストローブ信号(STROBE)がハイレベルになると、ANDゲートG1〜Gnが閉じ、トランジスタTr1〜Trnがオフとなる。したがって、発熱抵抗体R1〜Rnは、ストローブ信号(STROBE)がローレベルの期間、ラッチ用フリップフロップ42に取り込まれたオン・オフデータがハイレベルかローレベルかに応じて駆動される。
【0034】
次に、本発明の実施の形態の動作について説明する。図1において、ホストコンピュータ2からのYMC(イエロー(Y)、マゼンタ(M)、シアン(C))等の画像データは、主制御部11の管理の基に取り込まれ、入力バッファ12に一旦保存される。そして、入力バッファ12から1水平ライン分の画像データが読み出され、プリント用画像データ生成部13に送られる。プリント用画像データ生成部13により、インクリボンに対応したプリント用画像データが生成される。
【0035】
プリント用画像データ生成部13からの1水平ライン分の画像データは、サーマルヘッド駆動データ生成部14に送られる。サーマルヘッド駆動データ生成部14で、オン・オフデータが形成される。このとき、各画像データから、下位ビットと上位ビットとに分けて、オン・オフデータが形成される。
【0036】
すなわち、各発熱抵抗体R1〜Rnの通電時間を一定とした場合、発熱抵抗体R1〜Rnの発熱量は、通電回数により階調を制御できる。しかしながら、この場合、10ビットの1024階調の処理を行うのに、(210−1=1023回)、発熱抵抗体R1〜Rnを繰り返して通電する処理が必要になる。
【0037】
そこで、本発明の実施の形態では、図2に示したように、10ビットの画像データを、下位3ビットと、上位7ビットとに分けて、発熱抵抗体R1〜Rnを通電する処理を行うようにしている。このようにすると、同一の階調を表現するのに要する通電回数が減らせる。
【0038】
つまり、10ビットの画像データ(b0,b1,…,b9)を、下位3ビット(b0,b1,b2)と上位7ビット(b3,b4,…,b9)とに分けたとする。この場合、上位側の最下位となるビットb3が「1」になるのは、23(=8)階調目に当たる。したがって、上位7ビットでは、23階調毎に、階調を変化させる必要がある。
【0039】
そこで、下位3ビットの処理を行うときには、通電時間をTlsに設定し、上位7ビットの処理を行うときには、通電時間Tusを、通電時間をTlsの23倍の(Tus=23×Tls)に設定する。
【0040】
なお、ここでは、10ビットの画像データを下位3ビットと上位7ビットとに分けているが、一般的に、mビットの画像データを、下位nビット、上位(m−n)ビットに分けたときには、Tus=2n×Tlsの関係になるように、通電時間を設定すれば良い。
【0041】
図3は、10ビットの画像データを、上位7ビットと、下位3ビットとに分けた場合の、下位ビット処理でのオン・オフデータ、及び上位ビット処理でのオン・オフデータである。例えば、画像データが(0000001010)なら、下位ビットの処理で2回通電を行い、上位ビットの処理で1回通電を行えばよい。
【0042】
以上のように、10ビットの画像データを、下位3ビットと、上位7ビットとに分けて処理を行うと、下位ビットの処理で(23−1=7回)、上位ビットの処理で(27−1=127回)との、合計134回で、1024階調の処理を行えることになる。
【0043】
図1において、サーマルヘッド駆動データ生成部14からのオン・オフデータ(DATA)は、シフトレジスタ41に送られ、シフトレジスタ41でシリアル・パラレル変換されて、シフトレジスタ41の各発熱抵抗体R1〜Rnに対応する位置に展開される。ラッチ信号(LATCH)がローレベルになるタイミングで、このオン・オフデータがラッチ用フリップフロップ42に取り込まれる。そして、ストローブ信号(STROBE)がローレベルの間に、ラッチ用フリップフロップ42からトランジスタTr1〜Trnのベースに、オン・オフデータが送られる。これにより、ストローブ信号(STROBE)がローレベルの間を発熱期間として、オン・オフデータに応じて、発熱抵抗体R1〜Rnが発熱される。
【0044】
前述したように、10ビットの画像データは、下位3ビットと上位7ビットとに分けて処理が行われる。先ず、ストローブ信号(STROBE)がローレベルとなる期間がTlsに設定され、上述のようにして、下位ビットの処理が(23−1=7回)行われる。下位ビットの処理が終了すると、ストローブ信号(STROBE)がローレベルとなる期間がTus(Tus=23×Tls)に設定され、上位ビットの処理が(27−1=127回)行われる。
【0045】
また、本発明の実施形態では、複数クロック周波数制御部17により、システムクロックに基づいて周波数の異なる複数のクロックを生成し、この周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号(CLOCK)を生成している。サーマルヘッド駆動データ生成部14からのオン・オフデータ(DATA)は、この複数の周波数に変化するデータクロック信号(CLOCK)により、シフトレジスタ41に転送される。
【0046】
図4及び図5は、本発明の実施形態のプリンタでのデータ転送タイミングを示すタイミング図である。図4及び図5において、T0、T1、T2、…は、ストローブ期間を示し、1回の発熱抵抗体R1〜Rnの駆動期間の単位となるものである。
【0047】
図4(A)に示すように、最初のストローブ期間T0で、サーマルヘッド駆動データ生成部14から、1水平ライン分の1階調目の下位ビット処理のオン・オフデータDL1がオン・オフデータ(DATA)として出力される。サーマルヘッド制御部15からは、図4(B)に示すようなデータクロック信号(CLOCK)が出力され、このデータクロック信号(CLOCK)により、1水平ライン分の1階調の下位ビット処理のオン・オフデータDL1がシフトレジスタ41に転送される。なお、このデータクロック信号(CLOCK)は、後に説明するように、複数の周波数に変化している。ストローブ期間内のデータクロック信号(CLOCK)のパルス数は、水平方向の画素数に対応している。ここでは、1水平ラインの画素数は「128」であり、1ストローブ期間でのデータクロック信号(CLOCK)のパルス数は「128」となる。
【0048】
次のストローブ期間T1で、図4(C)に示すように、ラッチ信号(LATCH)がローレベルになるタイミングで、図4(D)に示すように、1水平ライン分の1階調目の下位ビット処理のオン・オフデータDL1がラッチ用フリップフロップ42に取り込まれる。そして、図4(E)に示すように、ストローブ信号(STROBE)がローレベルとなる期間で、発熱抵抗体R1〜Rnが通電される。このストローブ信号(STROBE)がローレベルとなる期間は、下位ビット処理の間では、Tlsに設定される。これにより、1水平ライン分の1階調の下位ビット処理のオン・オフデータDL1によるプリント処理が行われる。また、このとき、図4(A)に示すように、サーマルヘッド駆動データ生成部14から、1水平ライン分の2階調目の下位ビット処理のオン・オフデータDL2がデータ(DATA)として出力され、データクロック信号(CLOCK)(図4(B))により、サーマルヘッド駆動データ生成部14から、1水平ライン分の2階調目の下位ビット処理のオン・オフデータDL2がシフトレジスタ41に転送される。
【0049】
次のストローブ期間T2で、図4(C)に示すように、ラッチ信号(LATCH)がローレベルになるタイミングで、図4(D)に示すように、1水平ライン分の2階調目の下位ビット処理のオン・オフデータDL2がラッチ用フリップフロップ42に取り込まれる。そして、図4(E)に示すように、ストローブ信号(STROBE)がローレベルとなる期間で、発熱抵抗体R1〜Rnが通電される。このストローブ信号(STROBE)がローレベルとなる期間は、Tlsに設定される。これにより、1水平ライン分の2階調の下位ビット処理のオン・オフデータDL2によるプリント処理が行われる。また、このとき、図4(A)に示すように、サーマルヘッド駆動データ生成部14から、1水平ライン分の3階調目の下位ビット処理のオン・オフデータDL3がデータ(DATA)として出力され、データクロック信号(CLOCK)(図4(B))により、サーマルヘッド駆動データ生成部14から、1水平ライン分の3階調目の下位ビットオン・オフデータDL3がシフトレジスタ41に転送される。以下、同様の処理が下位ビットの階調処理分だけ繰り返して行われる。
【0050】
図5において、ストローブ期間T7になると、サーマルヘッド駆動データ生成部14から、1水平ライン分の1階調目の上位ビット処理のオン・オフデータDH1がデータ(DATA)として出力され、ストローブ期間T8では、図5(C)に示すように、ラッチ信号(LATCH)がローレベルになるタイミングで、図5(D)に示すように、1水平ライン分の1階調目の上位ビット処理のオン・オフデータDH1がラッチ用フリップフロップ42に取り込まれる。そして、図5(E)に示すように、ストローブ信号(STROBE)がローレベルとなる期間で、発熱抵抗体R1〜Rnが通電される。このストローブ信号(STROBE)がローレベルになる期間Tusは、下位ビット処理の時の期間Tlsの23倍の(Tus=23×Tls)に設定される。これにより、1水平ライン分の1階調の上位ビット処理のオン・オフデータDH1によるプリント処理が行われる。また、このとき、図5(A)に示すように、サーマルヘッド駆動データ生成部14から、1水平ライン分の2階調目の上位ビット処理のオン・オフデータDH2がデータ(DATA)として出力され、データクロック信号(CLOCK)(図5(B))により、サーマルヘッド駆動データ生成部14から、1水平ライン分の2階調目の上位ビット処理のオン・オフデータDH2がシフトレジスタ41に転送される。以下、同様の処理が上位ビットの階調数分だけ、繰り返して行われる。
【0051】
ここでは、10ビットの画像データが下位3ビットと上位7ビットとに分けられているので、下位ビットの処理では、7回の通電処理が行われ、上位ビットの処理では、127回の通電処理が行われ、合計、134回の通電処理が行われる。これにより、1水平ライン分の画像のプリントが終了する。1水平ライン分の画像のプリントが終了すると、1ドットだけ、垂直方向に紙が送られ、次ライン分の画像のプリント処理が同様に行われる。そして、1画面分の処理が終了すると、次の色の画像データにより、同様の処理が行われる。
【0052】
前述したように、本発明の実施形態では、データクロックジェネレータ16は、サーマルヘッド制御部15に対するクロックを生成している。本発明の実施形態においては、データクロックジェネレータ16に、複数クロック周波数制御部17が設けられており、クロックの周波数が変化するようになっている。
【0053】
図6は、データクロックジェネレータ16の複数クロック周波数制御部17の一例である。図6において、PLL回路51には、例えば50MHzのシステムクロックが供給される。PLL回路51で、この50MHzのシステムクロックが2逓倍され、100MHzの単位周波数のクロックが生成される。PLL回路51からの100MHzの単位周波数のクロックは、1/4分周器52、1/5分周器53、1/6分周器54で分周され、1/4分周器52、1/5分周器53、1/6分周器54からは、それぞれ、25MHz、20MHz、16.7MHzの周波数のクロックが出力される。この25MHz、20MHz、16.7MHzの周波数のクロックは、セレクタ55で選択されて、出力される。セレクタ55からのクロックは、カウンタ56でカウントされる。このカウント値に応じて、セレクタ55が切り替えられる。
【0054】
すなわち、図4(B)及び図5(B)に示したように、1ストローブ期間内のデータクロック信号(CLOCK)のパルス数は、水平方向の画素数に対応しており、ここでは、1水平ラインの画素数は「128」である。図7に示すように、この1ストローブ期間でのデータクロック信号(CLOCK)のパルス数がカウントされ、このカウント値に応じて、データクロック信号(CLOCK)の周波数が順次切り替えられる。例えば、データクロック信号(CLOCK)のカウント値が「0」〜「41」では、クロック周波数が16.7MHzに設定され、データクロック信号(CLOCK)のカウント値が「42」〜「83」では、クロック周波数が25MHzに設定され、データクロック信号(CLOCK)のカウント値が「84」〜「127」では、クロック周波数が20MHzに設定される。
【0055】
本発明の実施形態では、上述のように、PLL回路51で、周波数50MHzのシステムクロックを2逓倍して100MHzの単位周波数のクロックを生成してから、分周器52〜54で分周して、複数の周波数のクロックを生成している。このように、システムクロックを2逓倍して単位周波数のクロックを生成すると、必要な周波数に変化するクロックを生成できる。
【0056】
つまり、50MHzのシステムクロックを直接分周した結果できるクロックは、50/2=25MHz、50/3=16.7MHz、50/4=12.5MHz、…である。これに対して、50MHzのシステムクロックを2逓倍して100MHzの単位周波数のクロックを生成して分周すると、分周した結果できるクロックは、100/2=50MHz、100/3=33.3MHz、100/4=25MHz、100/5=20MHz、100/6=16.7MHz、100/8=12.5MHz…となり、33.3MHzのクロック、25MHzのクロック、20MHzのクロック、16.7MHzのクロック、12.5MHzのクロックが利用可能となる。
【0057】
なお、ここでは、データクロック信号(CLOCK)をカウンタ56でカウントして、データクロック信号(CLOCK)の周波数を順次切り替えているが、データクロック信号(CLOCK)の数を主制御部11でカウントし、主制御部11の指令の下に、データクロック信号(CLOCK)の周波数を順次切り替えるようにしても良い。
【0058】
また、ここでは、データクロック信号(CLOCK)のパルス数をカウントして、データクロック信号(CLOCK)の周波数を順次切り替えているが、システムクロックをカウントして、データクロック信号(CLOCK)の周波数を順次切り替えるようにしても良い。
【0059】
図8は、本発明の実施形態の処理をフローチャートで示したものである。図8において、主制御部11は、1水平ラインのデータの転送回数SCnを(Scn=0)に初期化し、プリントライン数PLnを(PLn=0)に初期化し、プリントカラーPCnを(PCn=0)に初期化して、サーマルヘッド駆動データ生成部14から、1水平ライン目のデータ転送を開始する(ステップS1)。なお、プリントカラーPCnは、Y、M、Cの各色を示す。
【0060】
そして、主制御部11は、通電時間(ストローブ信号(STROBE)のローレベル期間をTlsに設定し(ステップS2)、データクロック信号(CLOCK)のカウント数PLSnを(PLSn=0)に初期化する(ステップS3)。そして、主制御部11は、データクロック信号(CLOCK)のカウント数PLSnが「41」以下であるかどうかを判定する(ステップS4)。主制御部11は、データクロック信号(CLOCK)のカウント数PLSnが「41」以下でないと判定した場合、データクロック信号(CLOCK)のカウント数PLSnが「42」〜「83」であるかどうかを判定する(ステップS5)。
【0061】
また、主制御部11は、ステップS4で、データクロック信号(CLOCK)のカウント数PLSnが「41」以下であると判定した場合、複数クロック周波数制御部17においてデータクロック信号(CLOCK)の周波数を16.7MHzに設定する(ステップS6)。そして、主制御部11は、ステップS5で、データクロック信号(CLOCK)のカウント数PLSnが「42」〜「83」であると判定した場合、複数クロック周波数制御部17においてデータクロック信号(CLOCK)の周波数を25MHzに設定し(ステップS7)、それ以外と判定すると、データクロック信号(CLOCK)の周波数を20MHzに設定する(ステップS8)。
【0062】
さらに、主制御部11は、設定されたデータクロック信号(CLOCK)により、サーマルヘッド駆動データ生成部14から、オン・オフデータをシフトレジスタ41に転送し(ステップS9)、データの転送が完了したら、データクロック信号(CLOCK)のカウント数PLSnをインクリメントする(ステップS10)。そして、主制御部11は、転送クロックのカウント数PLSnが、1水平ラインの画素数に相当する「127」以下であるかどうかを判定する(ステップS11)。主制御部11は、転送クロックのカウント数PLSnが「127」以下であると判定した場合、ステップS4にリターンする。
【0063】
以上の処理を繰り返すことにより、1水平ラインの画素数分のオン・オフデータがシフトレジスタ41に展開される。このとき、ステップS4〜S8の処理により、データクロック信号(CLOCK)のカウント数PLSnが「41」以下なら、データクロック信号(CLOCK)の周波数は16.7MHzに設定され、データクロック信号(CLOCK)のカウント数PLSnが「42」〜「83」なら、データクロック信号(CLOCK)の周波数は25MHzに設定され、それ以外なら、データクロック信号(CLOCK)の周波数が20MHzに設定される。これにより、1ストローブ期間の128パルスのデータクロック信号(CLOCK)のうち、最初の1/3では、クロック周波数が16.7MHzに設定され、次の1/3では、クロック周波数が25MHzに設定され、最後の1/3では、クロック周波数が20MHzに設定されて、データが転送され、1ストローブ期間内で、データクロック信号(CLOCK)の周波数が順次複数に変化する。
【0064】
また、主制御部11は、ステップS11で、転送クロックのカウント数PLSnが1水平ラインの画素数である「PLSn=128」と判定した場合、ラッチ用フリップフロップ42に1水平ライン分のオン・オフデータを取り込み、ストローブ信号(STROBE)をローレベルとして、発熱抵抗体R1〜Rnを発熱させる処理を行う(ステップS12)。そして、主制御部11は、データの転送回数SCnをインクリメントし(ステップS13)、データの転送回数SCnが「7」以下かどうかを判定する(ステップS14)。
【0065】
主制御部11は、1水平ラインのデータの転送回数SCnが「7」以下であると判定した場合、ステップS2にリターンし、上述の処理を繰り返して行う。
【0066】
以上の処理により、下位ビットの通電処理が行われる。そして、下位3ビットの処理が終了すると、ステップS14で、1水平ラインのデータの転送回数SCnが「SCn≧8」と判定される。
【0067】
主制御部11は、ステップS14で、1水平ラインのデータの転送回数SCnが「SCn≧8」と判定した場合、さらにデータの転送回数SCnが「133」以下であるかを判定する(ステップS15)。そして、主制御部11は、データの転送回数SCnが「133」以下であると判定すると、通電時間(ストローブ信号(STROBE)のローレベル期間)をTusに設定して(ステップS16)、ステップS3にリターンする。
【0068】
ステップS3〜ステップS16の処理を繰り返すことにより、通電処理が行われる。下位ビットの処理では、7回の通電処理が行われ、上位ビットの処理では、127回の通電処理が行われるので、1水平ラインの処理が終了すると、データの転送回数が134回となる。
【0069】
さらに、主制御部11は、ステップS15で、データの転送回数SCnが「SCn=134」と判定した場合、1水平ラインのデータの転送回数SCnを(SCn=0)とし、プリントライン数PLnをインクリメントして、サーマルヘッド駆動データ生成部14から、次の水平ラインのデータ転送を開始する(ステップS17)。
【0070】
そして、主制御部11は、プリントライン数PLnが、垂直方向の画素数に相当する「1239)以下か」どうかを判定する(ステップS18)。主制御部11は、プリントライン数PLnが、「1239」以下であると判定すると、ステップS2にリターンして、前述と同様に、次ラインのプリント処理を行う。
【0071】
以上の処理を繰り返し、1画面のプリント処理が行われると、ステップS13で、プリントライン数PLnが「PLn=1240」と判定される。主制御部11は、プリントライン数PLnが「1240」と判定した場合、1水平ラインのデータの転送回数SCnを(Scn=0)にし、プリントライン数PLnを(PLn=0)にし、プリントカラーPCnをインクリメントして、次色の1水平ライン目のデータ転送を開始する(ステップS19)。
【0072】
そして、主制御部11は、プリントカラーPCnが「2」(Y、M、Cの各色の場合)以下かどうかを判定する(ステップS20)。主制御部11は、プリントカラーPCnが「2」以下であると判定すると、ステップS2にリターンして、前述と同様に、次ラインのプリント処理を行う。
【0073】
Y、M、Cの各色の画像のプリントが終了すると、ステップS20で、プリントカラーPCnが「PCn=3」と判定される。主制御部11は、プリントカラーPCnが「PCn=3」と判定すると、1画面分のプリントを終了する。
【0074】
以上説明したように、本発明の実施形態では、1ストローブ期間の128パルスのデータクロック信号(CLOCK)のうち、最初の1/3では、クロック周波数が16.7MHzに設定され、次の1/3では、クロック周波数が25MHzに設定され、最後の1/3では、クロック周波数が20MHzに設定されて、データが転送される。
【0075】
サーマルヘッド40のユニットは印字部の近傍に置かれるため、サーマルヘッド駆動データ生成部14やサーマルヘッド制御部15からサーマルヘッド40に信号を送る信号線は長く引き回され、この信号線から放射ノイズが発生する。データクロック信号(CLOCK)の周波数が一定の場合には、この放射ノイズは、データクロック信号(CLOCK)の整数倍に集中し、そのレベルも大きくなる。
【0076】
これに対して、本発明の実施形態では、1ストローブ期間内で、複数個の周波数にデータクロック信号を変化させることによって、放射ノイズのエネルギーが分散される。放射ノイズエネルギーが分散されることから、特定の周波数に連続して発生することがなくなり、放射ノイズによる影響を低減できる。
【0077】
また、プリンタ1の上記機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、各種制御を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。
【0078】
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0079】
なお、本発明は、上述した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【図面の簡単な説明】
【0080】
【図1】本発明の実施形態のプリンタの構成例を示すブロック図である。
【図2】画像データの分割の説明図である。
【図3】画像データを分割した場合のオン・オフデータの説明図である。
【図4】本発明の実施形態におけるサーマルヘッドのタイムチャートである。
【図5】本発明の実施形態におけるサーマルヘッドのタイムチャートである。
【図6】本発明の実施形態のプリンタにおける複数クロック周波数制御部の構成例を示すブロック図である。
【図7】本発明の実施形態のプリンタにおける複数クロック周波数制御部の説明図である。
【図8】本発明の実施形態のプリンタの制御の説明に用いるフローチャートである。
【図9】従来のプリンタの構成例を示す図である。
【図10】サーマルヘッドとサーマルヘッド制御部の配線による放射ノイズを示す図である。
【符号の説明】
【0081】
1: プリンタ
11: 主制御部
12:入力バッファ
13:プリント用画像データ生成部
14:サーマルヘッド駆動データ生成部
15:サーマルヘッド制御部
16:データクロックジェネレータ
17:複数クロック周波数制御部
40:サーマルヘッド
41:シフトレジスタ
42:ラッチ用フリップフロップ
51:PLL回路
52〜54:分周器
55:セレクタ
56:カウンタ
R1〜Rn:発熱抵抗体
Tr1〜Trn:トランジスタ
G1〜Gn:ANDゲート

【特許請求の範囲】
【請求項1】
発熱抵抗体を主走査方向にライン配列したサーマルヘッドを用いて印刷を行うプリンタであって、
システムクロックに基づいて所定の単位周波数のクロックを生成し、前記単位周波数のクロックから互いに異なる周波数の複数のクロックを生成し、前記周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成するデータクロック周波数制御手段と、
入力画像データに基づいて前記サーマルヘッドの各発熱抵抗体のオン・オフデータを生成するサーマルヘッド駆動データ生成手段と、
前記サーマルヘッド駆動データ生成手段により生成された各発熱抵抗体のオン・オフデータを受信し、前記データクロック信号により、前記オン・オフデータを各発熱抵抗体に対応した位置に転送するシフトレジスタ手段と、
前記シフトレジスタ手段に保持されたオン・オフデータを取り込むラッチ手段と、
前記ラッチ手段に取り込まれたオン・オフデータにより前記発熱抵抗体を所定の単位時間通電する発熱抵抗体駆動手段とを備える
ようにしたことを特徴とするプリンタ。
【請求項2】
前記データクロック周波数制御手段は、1ストローブ期間内で複数の周波数に変化するように、前記周波数の異なる複数のクロックを順次選択するようにしたことを特徴とする請求項1に記載のプリンタ。
【請求項3】
前記データクロック周波数制御手段は、システムクロックを逓倍して所定の単位周波数のクロックを生成する手段と、
前記システムクロックを逓倍して生成した所定の単位周波数のクロックを分周して複数の周波数のクロックを生成する複数の分周器と、
前記複数の分周器から出力される複数の周波数のクロックを順次選択するセレクタとを備える
ようにしたことを特徴とする請求項1に記載のプリンタ。
【請求項4】
発熱抵抗体を主走査方向にライン配列したサーマルヘッドを用いて印刷を行うプリンタの制御方法であって、
システムクロックに基づいて周波数の異なる複数のクロックを生成し、前記周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成し、
入力画像データに基づいて前記サーマルヘッドの各発熱抵抗体のオン・オフデータを生成し、前記生成された各発熱抵抗体のオン・オフデータを、前記データクロック信号によりシフトレジスタ手段の各発熱抵抗体に対応した位置に転送し、
前記シフトレジスタ手段に保持されたオン・オフデータをラッチ手段に取り込み、
前記ラッチ手段に取り込まれたオン・オフデータにより前記発熱抵抗体を所定の単位時間通電する
ようにしたことを特徴とするプリンタの制御方法。
【請求項5】
発熱抵抗体を主走査方向にライン配列したサーマルヘッドを用いて印刷を行うプリンタの制御プログラムであって、
システムクロックに基づいて周波数の異なる複数のクロックを生成し、前記周波数の異なる複数のクロックを順次選択して、複数の周波数に変化するデータクロック信号を生成するステップと、
入力画像データに基づいて前記サーマルヘッドの各発熱抵抗体のオン・オフデータを生成し、前記生成された各発熱抵抗体のオン・オフデータを、前記データクロック信号によりシフトレジスタ手段の各発熱抵抗体に対応した位置に転送するステップと、
前記シフトレジスタに保持されたオン・オフデータをラッチ手段に取り込み、前記ラッチ手段に取り込まれたオン・オフデータにより前記発熱抵抗体を所定の単位時間通電するステップと
を含むようにしたことを特徴とするプリンタの制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate