(57)【要約】【課題】イメージバッファとシフトレジスタ間の通信回数を低減して印刷処理時間を短縮することが可能であるだけでなく、省電力モード中であっても異常を定期的に検出することの可能なサーマルプリンタを提供する。【解決手段】１ドットライン分のデータは所定数のオンデータを含む論理ブロックと残余ブロックに分割され、論理ブロック及び残余ブロックの順に通電して印刷を実行することによりサーマルヘッドに流れる電流を所定値に制限しつつサーマルヘッドへのデータ送信回数が低減される。さらに、外部タイマにより定期的にマイクロコンピュータの省電力モードを解除してサーマルプリンタの異常が検出されホストコンピュータに通報される。【選択図】　　　図２
2004136500.tif 000002
【特許請求の範囲】
【請求項１】
複数の発熱体を有する物理ブロックを複数具備するサーマルヘッドと、
前記サーマルヘッドの発熱体に対する通電／非通電データを格納するデータ格納手段と、
前記データ格納手段に格納された通電／非通電データを、前記物理ブロック毎に予め定められた数の通電データを含む論理ブロックと残余のデータを含む残余ブロックに分割する分割手段と、
前記物理ブロックごとに前記論理ブロック又は前記残余ブロックを受信した後に前記物理ブロックごとに前記サーマルヘッドへ通電する制御を前記論理ブロックのすべて及び前記残余ブロックに対して繰り返す制御手段を具備するサーマルプリンタ。
【請求項２】
前記分割手段が、
前記データ格納手段に格納された通電／非通電データを、相互に隣接する複数の前記物理ブロックに予め定められた数の通電データを含む論理ブロックと残余のデータを含む残余ブロックに分割するものであり、
前記制御手段が、
前記残余ブロックへ印刷データを設定した後に少なくとも一つの前記物理ブロックごとに前記サーマルヘッドへ通電する制御を前記論理ブロックのすべて及び前記残余ブロックに対して繰り返すものである請求項１に記載のサーマルプリンタ。
【請求項３】
前記サーマルプリンタに発生する異常を検出してホストコンピュータに異常発生を通報するサーマルプリンタ制御手段と、
前記サーマルプリンタ制御手段の異常検出及びホストコンピュータへの通報後に、前記サーマルプリンタ制御手段を省電力モードに移行させる省電力移行手段と、
前記省電力移行手段から省電力モード移行指令が出力されたときに起動され、起動後予め定められた時間経過後に前記サーマルプリンタ制御手段の省電力モードを解除する省電力モード解除手段を具備するサーマルプリンタ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はサーマルプリンタに係り、特に印刷処理時間を短縮することの可能なサーマルプリンタ及び動作状態を確実に検出することの可能なサーマルプリンタに関する。
【０００２】
【従来の技術】
近年サーマルプリンタの小型化・軽量化が進み、車載型あるいは可搬型端末の印刷装置として広く使用されている。
【０００３】
車載型あるいは可搬型端末にあっては電源として二次電池、特にリチウムイオン電池が適用される。
【０００４】
ところがリチウムイオン電池は内部インピーダンスが大きいため、インピーダンスの小さいサーマルヘッドに通電した場合にはリチウムイオン電池の内部インピーダンスにより電圧降下が大きくなり、サーマルヘッドに十分な電力を供給できない場合がある。
【０００５】
このような事態を回避するために、従来から通電する発熱体の個数を予め定められた所定数以下に制限する可変分割印刷方法が適用されている（例えば、特許文献１を参照）。
【０００６】
図１は従来の可変分割印刷方法の説明図であって、サーマルヘッドは６４ドットを印刷可能な印刷ブロックを３ブロック具備し、１ドットラインが６４×３＝１９２ドットで構成され、一回の通電で印刷可能なドット数が３２である場合を示す。
【０００７】
そして第１回目のデータ転送処理で、イメージバッファ（ＩＭＧＢＵＦ）に記憶された１ドットライン分の印刷データのうち、左端から３２個の通電ドットをシフトレジスタに転送する。
【０００８】
即ち左端から第１及び第２番目のバイトの“ＦＦ”の通電ドットはそれぞれ８ドットであり、第３のバイト“５５”及び第４番目のバイト“ＡＡ”の通電ドットはそれぞれ４ドットであり、第５番目の“Ｆ０”の通電ドットは４ドットである。従って第１〜第５バイトまでの通電ドットの合計は２８ドットとなり、最大の通電ドット数である３２ビットに対して４ドットの余裕がある。
【０００９】
そこで、イメージバッファの第１〜第５バイトのほかに第６バイトのうちの４ビットをイメージバッファからシフトレジスタに転送し、シフトレジスタの残りは全て零に設定してサーマルヘッドの第一ブロック、第二ブロック、第三ブロックを同時に通電する。
【００１０】
第２回目のデータ転送処理で、第１回目の通電で印刷済みのデータを零にリセットするとともに、第６バイトの残りの４ビットと第７〜第１５バイトまでをシフトレジスタに転送し、第一ブロック、第二ブロック、第三ブロックの順に第２回目の通電を行う。
【００１１】
第３回目のデータ転送処理で、第２回目の通電で印刷済みのデータを零にリセットするとともに、第１７〜第２２バイトまでをシフトレジスタに転送し、第一ブロック、第二ブロック、第三ブロックの順に第３回目の通電を行う。
【００１２】
さらに第４回目のデータ転送処理で、第３回目の通電で印刷済みのデータを零にリセットするとともに、第２３〜第２４バイトまでをシフトレジスタに転送し、第一ブロック、第二ブロック、第三ブロックを同時に第４回目の通電を行う。
【００１３】
【特許文献１】
特開２００１−６３１２４（〔０００８〕、図３）
【００１４】
【発明が解決しようとする課題】
即ち、従来の可変分割印刷方法にあっては、一回の通電で印刷するドット数を制限することによりサーマルヘッドに確実に電力を供給することが可能となる。
【００１５】
しかしながら、イメージバッファとシフトレジスタ間の通信回数が多くなるため、必然的に印刷処理時間が長くなるという課題が存在していた。
【００１６】
さらに、サーマルプリンタは携帯端末において電池を電源とする場合が多いので、待機状態においては省電力モードへ移行するものが多い。
【００１７】
しかし、省電力モード中にある場合には、サーマルプリンタは自身中で発生した異常（例えば印刷紙切れ）を検出できないため、ホストコンピュータから印刷データが送信されて省電力モードが解除されて印刷を開始した直後に異常を検出することとなる。
【００１８】
本発明は上記課題に鑑み、イメージバッファとシフトレジスタ間の通信回数を低減して印刷処理時間を短縮することが可能であるだけでなく、省電力モード中であっても異常を定期的に検出することの可能なサーマルプリンタを提供することを目的とする。
【００１９】
【課題を解決するための手段】
第一の発明に係るサーマルプリンタは、複数の発熱体を有する物理ブロックを複数具備するサーマルヘッドと、サーマルヘッドの発熱体に対する通電／非通電データを格納するデータ格納手段と、データ格納手段に格納された通電／非通電データを物理ブロック毎に予め定められた数の通電データを含む論理ブロックと残余のデータを含む残余ブロックに分割する分割手段と、物理ブロックごとに論理ブロック又は残余ブロックを受信した後に物理ブロックごとにサーマルヘッドへ通電する制御を論理ブロックのすべて及び残余ブロックに対して繰り返す制御手段を具備する。
【００２０】
本発明にあっては、物理ブロック長のデータを論理ブロックと残余ブロックに分割し、まず論理ブロックが印刷され、その後に残余ブロックが印刷される。
【００２１】
第二の発明に係るサーマルプリンタは、分割手段が、データ格納手段に格納された通電／非通電データを相互に隣接する複数の物理ブロックに予め定められた数の通電データを含む論理ブロックと残余のデータを含む残余ブロックに分割するものであり、
制御手段が、論理ブロック又は残余ブロックを受信した後に少なくとも一つの物理ブロックごとにサーマルヘッドへ通電する制御を論理ブロックのすべて及び残余ブロックに対して繰り返すものである。
【００２２】
本発明にあっては、１ドットラインデータは予め定められたオンデータを含む論理ブロックと残余ブロックに分割され、まず論理ブロックが印刷され、その後に残余ブロックが印刷される。
【００２３】
第三の発明に係るサーマルプリンタは、サーマルプリンタに発生する異常を検出してホストコンピュータに異常発生を通報するサーマルプリンタ制御手段と、サーマルプリンタ制御手段の異常検出及びホストコンピュータへの通報後にサーマルプリンタ制御手段を省電力モードに移行させる省電力移行手段と、省電力移行手段から省電力モード移行指令が出力されたときに起動され起動後予め定められた時間経過後にサーマルプリンタ制御手段の省電力モードを解除する省電力モード解除手段を具備する。
【００２４】
本発明にあっては、サーマルプリンタ制御手段が省電力モード中であっても定期的に省電力モードが解除され、サーマルプリンタに発生する異常を検出してホストコンピュータに通報される。
【００２５】
【発明の実施の形態】
図２は本発明に係るサーマルプリンタの構成図であって、サーマルヘッド２１は６４個の発熱体からなるブロックを３ブロック具備する。
【００２６】
シフトレジスタ２２に格納された印刷データはラッチ信号によりいったんラッチレジスタ２３にラッチされ、さらに３つのブロックに対応して設置された３つのＡＮＤゲート２４１、２４２及び２４３を介してサーマルヘッド２１に転送される。
【００２７】
上記の素子はマイクロコンピュータ２５によって制御されるが、マイクロコンピュータ２５はバス２５０を中心にＣＰＵ２５１、サーマルプリンタ制御プログラムがインストールされたＲＯＭ２５２、ＲＡＭであるイメージバッファ（ＩＭＧＢＵＦ）２５３、同じくＲＡＭである印刷転送制御バッファ（ＩＭＧＣＯＭ）２５４、３つのブロックに印刷指令を出力する印刷指令インターフェイス２５５、ラッチレジスタ２３にラッチ指令を出力し、シフトレジスタ２２に印刷データをシリアル伝送する伝送インターフェイス２５６を具備する。
【００２８】
サーマルヘッド２１は、Ｋブロックに分割されており、各ブロックは８個の発熱体（８ビット）からなるバイトをＭバイト具備する。即ち、サーマルヘッド２１は８・Ｍ・Ｋ個の発熱体を具備する。そして、サーマルプリンタの電源は一度にＬバイトの発熱体に通電可能であるものとする。
【００２９】
以下の実施形態の説明においては、Ｋ＝３、Ｍ＝８、Ｌ＝４の場合について説明する。即ち、サーマルヘッド２１は全部で１９２個の発熱体を有し、６４個（８ビット×８バイト）の発熱体を有するブロックに３分割されており、一度に通電可能な発熱体数ＷＲＫＳＵＭはＬ×８＝３２である。
【００３０】
図３はマイクロコンピュータ２５で実行されるドットライン制御ルーチンのフローチャートであって、ホストコンピュータ（図示せず）から印刷データを受信したときに感熱紙の紙幅方向に一本のドットラインを印刷する機能を果たす。
【００３１】
ステップ３０で印刷転送制御バッファ２５４に転送するＩＭＧＣＯＭ作成するＩＭＧＣＯＭ作成ルーチンが実施されるが、詳細は後述する。
【００３２】
次にステップ３１及び３２でラッチ要求フラグＦＰが“１”となるまで待機するが、これはシフトレジスタ２２に格納されている前のデータがラッチレジスタ２３に確実にラッチされた後にシフトレジスタ２２に次のデータを転送するためである。
【００３３】
ラッチ要求フラグＦＰが“１”となるとステップ３２で肯定判定され、ステップ３３に進みシフトレジスタ転送ルーチンが実行されるが、詳細は後述する。
【００３４】
ステップ３４で印刷データを構成する全ドットラインの転送が完了したかを判定する。
【００３５】
ステップ３４で否定判定されたとき、即ち全ドットラインの転送が完了していないときはステップ３０に戻る。逆に、ステップ３４で肯定判定されたとき、即ち全ドットラインの転送が完了したときはこのルーチンを終了する。
【００３６】
図４はドットライン制御ルーチンのステップ３０で実行されるＩＭＧＣＯＭ作成ルーチンのフローチャートであって、ステップ４０でパラメータ初期化処理を行った後、ステップ４１でバイト番号ｉを次式により設定する。
【００３７】
ｉ　←　Ｍ・（ｋ−１）＋１
ここで、ｋはブロック番号であり、初期値は“１”である。従って、本ルーチンが最初に実行されるとｉは“１”に設定される。
【００３８】
ステップ４２において通電情報バッファＳＴＢの（ｍ、ｋ）要素を“１”に設定する。ここで、ｍは通電順序であって初期値は“１”である。
【００３９】
ステップ４３において１ブロック通電情報設定ルーチンを実行し、ステップ４４でブロック番号ｋをインクリメントする。
【００４０】
ステップ４５でブロック番号ｋが最大値Ｋ（本実施例においてはＫ＝３）より大きいかを判定し、否定判定された場合はステップ４１に戻る。
【００４１】
逆にステップ４５で肯定判定された場合は、全ブロックについて処理が完了したものとしてこのルーチンを終了する。
【００４２】
図５はＩＭＧＣＯＭ作成ルーチンのステップ４０で実行されるパラメータ初期化処理のフローチャートであって、ステップ５０で一度に通電可能な発熱体数ＷＲＫＳＵＭを８・Ｌ（本実施例にあっては８×４＝３２）に設定し、ステップ５１で通電情報バッファＳＴＢのすべての要素をリセットしてこのルーチンを終了する。
【００４３】
図６はＩＭＧＣＯＭ作成ルーチンのステップ４３で実行される１ブロック通電情報設定ルーチンのフローチャートであって、ステップ６０でＩＭＧＢＵＦの第ｉバイト目の要素をワークレジスタＷＲＫＲＧに転送する。
【００４４】
そしてステップ６１で一度に通電可能な発熱体数ＷＲＫＳＵＭをＷＲＫＳＵＭからワークレジスタＷＲＫＲＧ中のオンビット数を減算した値で更新する。
【００４５】
図７は１ドットラインの具体例説明図であって、上段はデータ転送処理一回目の内容を、下段はデータ転送処理二回目の内容を示す。
【００４６】
即ち、データ転送処理一回目では、上段のＩＭＧＢＵＦの第一バイト目がワークレジスタＷＲＫＲＧに転送されている場合を考えると、ワークレジスタＷＲＫＲＥＧには“ＦＦ”が転送されているので、オンビット数は“８”となる。従って、ＷＲＫＳＵＭは３２−８＝２４に更新される。
【００４７】
ステップ６２でＷＲＫＳＵＭが零以下であるかが判定されるが、この場合は否定判定されてステップ６３の全ビット処理を実行する。
【００４８】
図８は１ブロック通電情報設定ルーチンのステップ６３で実行される全ビット処理のフローチャートであって、ステップ８０でＩＭＧＣＯＭの第ｉバイト目を“ＦＦ”に設定し、ステップ８１でバイト番号ｉをインクリメントしてこのルーチンを終了する。
【００４９】
図６の１ブロック通電情報設定ルーチンに戻って、ステップ６４でバイト番号ｉがそのブロックの最終バイト（Ｍ・ｋ）に到達したか、即ち１ブロックに含まれる全バイトについて処理が完了したかを判定する。
【００５０】
ステップ６４で否定判定された場合はステップ６０に戻るが、第１バイトの処理が完了した段階では当然ステップ６０に戻る。そして、第１ブロックの第５バイト目（即ちｉ＝１〜５）まではステップ６０〜６４の処理が繰り返され、ｉ＝５についての処理が終了した状態ではＷＲＫＳＵＭは“４”となっている。
【００５１】
第６バイトの処理においてはＷＲＫＲＧには“ＦＦ”が転送されるので、オンビット数は“８”となる。従って、ステップ６４の処理実行後には、ＷＲＫＳＵＭは“−４”となり、ＩＭＧＣＯＭ（６）の全ビットに通電することはできないのでステップ６２では肯定判定され、ステップ６５に進み、残ビット処理が実行される。
【００５２】
図９は１ブロック通電情報設定ルーチンのステップ６５で実行される残ビット処理のフローチャートであって、ステップ９０でＩＧＣＯＭ（ｉ）（今の場合はｉ＝６）は通電可能なビット数（今の場合は“４”）に設定される。
【００５３】
次にステップ９１でバイト番号ｉをインクリメントして、ステップ９２でＩＧＣＯＭ（ｉ）は印刷未了を示す零に設定される。
【００５４】
ステップ９３でバイト番号ｉがそのブロックの最終バイト（Ｍ・ｋ）に到達したかを判定し、否定判定されたとき、即ち最終バイトに到達していないときはステップ９１に戻る。ステップ９３で肯定されたとき、即ち当該ブロックについて処理が完了したときはこのルーチンを終了する。
【００５５】
図６の１ブロック通電情報設定ルーチンに戻って、ステップ６６で通電順序ｍをインクリメントし、ステップ６７でＷＲＫＳＵＭを初期値８・Ｌ（今の場合は３２）に設定してこのルーチンを終了する。
【００５６】
図４のＩＭＧＣＯＭ作成ルーチンに戻って、ブロック番号ｋがインクリメントされて（今の場合は“２”となる）、ステップ４５で否定判定されてブロック２及び３を処理するために、ステップ４１に戻る。
【００５７】
そして、ステップ４１においてｉが“９”に、ステップ４２においてＳＴＢ（２，２）が“１”に設定され、ステップ４３に進む。
【００５８】
図７の場合は、第２ブロックのオンビットは２４であるため、ステップ４３の１ブロック通電情報設定ルーチンでは、すべてのバイトにおいて全ビット処置が実行されて、対応するＩＭＧＣＯＭはすべて“ＦＦ”に設定され、ＷＲＫＳＵＭは“８”の状態でステップ４４に戻る。
【００５９】
ステップ４４ではブロック番号がインクリメントされて（今の場合は“３”となる）、ステップ４５で否定判定されて再びステップ４１に戻り、第３ブロックについての処理を実行する。
【００６０】
ステップ４１においてｉが“１７”に、ステップ４２においてＳＴＭ（２，３）が“１”に設定され、ステップ４３に進む。
【００６１】
図７の場合は、第３ブロックの第１バイト、即ち第１７バイト目には“ＦＦ”が設定されているため、ステップ４３の１ブロック通電情報設定ルーチンでは、第１７バイト目について全ビット処理がなされ、残りのバイト（即ち第１８〜２４バイト）については残ビット処理がなされる。
【００６２】
そしてステップ４４でブロック番号ｋがインクリメントされ（今の場合“４”となる）、ステップ４５で肯定判定されて、図３のステップ３１に戻る。
【００６３】
後述するシフトレジスタ転送ルーチンが終了した状態であるときは、フラグＦＰは“１”に設定されているので、ステップ３２で肯定判定されて、ステップ３３でシフトレジスタ転送ルーチンが実行される。
【００６４】
図１０はシフトレジスタ転送ルーチンのフローチャートであって、ステップ１００でバイト番号ｉを初期値“１”に設定する。
【００６５】
ステップ１０１でＩＭＧＣＯＭ（ｉ）が“ＦＦ”であるかを判定するが、図７の例ではＩＧＣＯＭ（１）＝ＦＦであるので、肯定判定されてステップ１０２に進む。
【００６６】
ステップ１０２ではＩＭＧＢＵＦ（ｉ）の内容をシフトレジスタ２２（図２）に転送するが、図７の例ではＩＭＧＢＵＦ（１）＝ＦＦであるので、“ＦＦ”がシフトレジスタ２２に転送される。
【００６７】
次にステップ１０３で転送済みのＩＭＧＢＵＦ（ｉ）をリセットしてステップ１０７に進む。
【００６８】
図７の例では第１〜５バイトのＩＭＧＢＵＦ（ｉ）が“ＦＦ”であるので、第１〜５バイトに対してはステップ１０２及び１０３の処理が実行される。
【００６９】
ｉ＝６のときに第６バイトの処理が実行されるが、ＩＭＧＣＯＭ（６）＝０Ｆであるのでステップ１０１で否定判定され、ＩＭＧＣＯＭ（ｉ）の内容がシフトレジスタ２２に転送される。
【００７０】
ステップ１０５でＩＭＧＢＵＦ（ｉ）を現在のＩＭＧＢＵＦ（ｉ）と現在のＩＭＧＣＯＭ（ｉ）の否定値の論理積で更新する。図７の例では現在のＩＭＧＢＵＦ（６）は“ＦＦ”、現在のＩＭＧＣＯＭ（６）は“０Ｆ”であるので、ＩＭＧＢＵＦ（６）は“Ｆ０”に更新される。
【００７１】
その後、ステップ１０６でＩＭＧＣＯＭ（ｉ）を“ＦＦ”に設定してステップ１０７に進む。
【００７２】
ステップ１０７でバイト番号ｉをインクリメントし、ステップ１０８でバイト番号が１ドットラインに含まれるバイト数Ｌ×Ｋ（８×３＝２４）以上となったかを判定し、否定判定されたときはステップ１０１に戻り上述の処理を繰り返す。
【００７３】
ステップ１０８で肯定判定されたときはステップ１０９でラッチ要求フラグＦＰを“１”に設定してこのルーチンを終了して、図３のドットライン印刷ルーチンのステップ３４に戻る。
【００７４】
ステップ３４において１列のドットラインについて処理が完了したかを判定し、否定判定された場合はステップ３０に戻り処理を繰り返す。
【００７５】
図１１は印刷ルーチンのフローチャートであって、ステップ１１０で通電順序ｓが“１”であるかを判定する。
【００７６】
ステップ１１０で肯定判定されたときは、ステップ１１１でラッチ要求フラグＦＰが“１”であるかを判定する。
【００７７】
ステップ１１１で肯定判定されたときはステップ１１２でヘッドデータをラッチし、ステップ１１３でフラグＦＰをリセットする。そしてステップ１１４で通電情報ＳＴＢを参照用通電処理ＳＴＢ２に複写してステップ１１５に進む。
【００７８】
なお、ステップ１１０で否定判定されたとき、即ち通電順序ｓが“１”ｄないときも直接ステップ１１５に進む。
【００７９】
そしてステップ１１５ではＳＴＢオンルーチンを実行してこのルーチンを終了する。また、ステップ１１で否定判定されたとき、即ちラッチ要求フラグが“１”でないときは直接このルーチンを終了する。
【００８０】
図１２は印刷ルーチンのステップ１１５で実行されるＳＴＢオンルーチンのフローチャートであって、ステップ１２０でブロック番号ｊを“１”に初期化する。
【００８１】
ステップ１２１で参照用通電処理ＳＴＢ２（ｓ，ｊ）が“１”であるかを判定し、肯定判定されたとき、即ち第ｓ回目の通電で第ｊブロックに通電するときはステップ１２２でｊブロックをサーマルヘッド２１（図２）に出力してステップ１２３に進む。
【００８２】
逆にステップ１２１で否定判定されたときは、第ｓ回目の通電で第ｊブロックに通電しないものとして直接ステップ１２３に進む。
【００８３】
ステップ１２３ではブロック番号ｊをインクリメントしてステップ１２４でｊが最大通電数Ｍに到達したかを判定し、否定判定されたときはステップ１２１に戻る。
【００８４】
ステップ１２４で肯定判定されたときはステップ１２５で通電順序ｓをインクリメントし、ステップ１２６で通電順序ｓが最大値Ｋに到達したかを判定する。
【００８５】
ステップ１２６で肯定判定されたときはステップ１２７で通電順序ｓを“１”に初期化してこのルーチンを終了する。逆にステップ１２６で否定判定されたときは直接このルーチンを終了する。
【００８６】
本発明に係るサーマルプリンタ（図２）は、ホストコンピュータ（図示せず）から印刷データが転送されたときにマイクロコンピュータ２５による制御が開始され、印刷が終了すると消費電力を抑制するために省電力モード（スリープモード）に移行する。
【００８７】
省電力モードに移行すると、ＣＰＵ２５１及びＣＰＵにクロックパルスを出力する内部クロック２５７は動作を停止する。
【００８８】
マイクロコンピュータ２５は割り込みＩ／Ｆ２５８を有しており、ホストコンピュータが印刷データを出力する前にホストコンピュータは印刷要求信号を出力する。この印刷要求信号は割り込みＩ／Ｆ２５８からマイクロコンピュータ２５に取り込まれ、マイクロコンピュータ２５の省電力モードが解除される。
【００８９】
マイクロコンピュータ２５は故障検出Ｉ／Ｆ２５９も具備しており、印刷用紙切れ、バッテリ電圧低、サーマルヘッドアップダウン異常、復帰不能等の異常検出をおこなっている。なお、ＣＰＵ２５１及び内部タイマ２５７が省電力モード停止中には当然異常検出は実行されない。
【００９０】
本発明に係るサーマルプリンタは、さらに外部タイマ２６を具備し、マイクロコンピュータ２５と割り込みインターフェイス２５８を介して接続されている。
【００９１】
外部タイマ２６は、ＣＰＵ２５１及び内部タイマ２５７が省電力モード停止中に予め定められた間隔で割り込みパルスを出力して、ＣＰＵ２５１及び内部タイマ２５７の省電力モードを解除する。
【００９２】
すると、ＣＰＵは予め定められた順序で故障検出Ｉ／Ｆ２５９を走査し、サーマルプリンタ内の異常の有無を検査する。そして、新たな異常が検出されたときにはその旨をホストコンピュータに伝送して再び省電力モードに移行する。
【００９３】
図１３はマイクロプロセッサ２５で実行されるメインルーチン及び割り込みルーチンのフローチャートであり。
【００９４】
メインルーチン（イ）のステップ１３０でサーマルプリンタの正常状態及び異常状態の処理（ホストコンピュータへの伝送）を行い、ステップ１３１では受信コマンド及びデータの解析を行う。ステップ１３２で印刷データが存在する場合は印刷データの転送を行い、ステップ１３３で省電力モードへの移行要求の有無を判断する。
【００９５】
省電力モードへの移行設定がなされていない場合は直接このルーチンを終了する。通常は省電力モードへの移行設定がなされているためステップ１３３で肯定判定され、ステップ１３４で外部タイマ２６を起動して省電力モードに移行する。
【００９６】
割り込みルーチンは印刷時に割り込み処理として実行されるルーチンであり、ステップ１３６でヘッド通電処理を、ステップ１３７で異常検出処理を実行する。
【００９７】
そして、外部タイマ２６は起動後予め定められた時間が経過すると、外部割り込み信号を出力してマイクロコンピュータ２５の省電力モードを解除する。
【００９８】
すると、マイクロコンピュータ２５は図１３のメインルーチン及び割り込みルーチンを実施する。従って、マイクロコンピュータ２５が省電力モード中にサーマルプリンタに印刷紙切れ等の異常が発生した場合であっても、異常を確実に検出してホストコンピュータに伝送することが可能となる。
【００９９】
【発明の効果】
第一の発明に係るサーマルプリンタによれば、物理ブロックが論理ブロックと残余ブロックに分割され、物理ブロックごとに通電が制御されるので、サーマルヘッドへの通電電流を所定値以内に維持できるとともに、サーマルヘッドへのデータ送信回数を低減することが可能となる。
【０１００】
第二の発明に係るサーマルプリンタによれば、さらにサーマルヘッドへのデータ送信回数を低減することが可能となる。
【０１０１】
第三の発明に係るサーマルプリンタによれば、サーマルプリンタ制御用マイクロコンピュータが省電力モード中であっても、定期的に省電力モードが解除され、サーマルプリンタに発生した異常を検出してホストコンピュータに通報することが可能となる。
【図面の簡単な説明】
【図１】従来の可変分割印刷方法の説明図である。
【図２】本発明に係るサーマルプリンタの構成図である。
【図３】ドットライン印刷ルーチンのフローチャートである。
【図４】ＩＭＧＣＯＭ作成ルーチンのフローチャートである。
【図５】パラメータ初期化ルーチンのフローチャートである。
【図６】１ブロック通電情報設定ルーチンのフローチャートである。
【図７】１ドットラインの具体例の説明図である。
【図８】全ビット処理のフローチャートである。
【図９】残ビット処理のフローチャートである。
【図１０】シフトレジスタ転送ルーチンのフローチャートである。
【図１１】印刷ルーチンのフローチャートである。
【図１２】ＳＴＢオンルーチンのフローチャートである。
【図１３】メインルーチン及び割り込みルーチンのフローチャートである。
【符号の説明】
２１…サーマルヘッド
２２…シフトレジスタ
２３…ラッチレジスタ
２４１、２４２、２４３…ＡＮＤゲート
２５…マイクロコンピュータ
２５０…バス
２５１…ＣＰＵ
２５２…ＲＯＭ
２５３…イメージバッファ
２５４…印刷転送制御バッファ
２５５…印刷指令インターフェイス
２５６…伝送インターフェイス
２５７…内部タイマ
２５８…割り込みインターフェイス
２５９…故障検出インターフェイス
２６…外部タイマ
【図１】
2004136500.tif 000003
【図２】
2004136500.tif 000004
【図３】
2004136500.tif 000005
【図４】
2004136500.tif 000006
【図５】
2004136500.tif 000007
【図６】
2004136500.tif 000008
【図７】
2004136500.tif 000009
【図８】
2004136500.tif 000010
【図９】
2004136500.tif 000011
【図１０】
2004136500.tif 000012
【図１１】
2004136500.tif 000013
【図１２】
2004136500.tif 000014
【図１３】
2004136500.tif 000015