(57)【要約】【課題】製造コストを上昇させることなく、プロセッサによるソフトウエア処理が正常な状態でない場合にも、確実に電源を遮断できるプリンタ装置を提供する。【解決手段】電源をオン／オフするための制御信号を入力するための電源スイッチ１１と、電源スイッチ１１からの電源オフを要求する制御信号に基づいて電源２００の遮断を制御する電源遮断処理を含むメイン処理と所定の割込処理とを実行するＣＰＵ５０とを有し、ＣＰＵ５０は、電源遮断処理を含むメイン処理を実行不能の場合には、所定の割込処理において電源遮断処理を実行する。【選択図】図１
2008073935.tif 000002
【特許請求の範囲】
【請求項１】
電源をオン／オフするための制御信号を入力するための電源スイッチと、
前記電源スイッチからの電源オフを要求する制御信号に基づいて前記電源の遮断を制御する電源遮断処理を含むメイン処理と所定の割込処理とを実行する処理手段とを有し、
前記処理手段は、前記電源遮断処理を含むメイン処理を実行不能の場合には、前記所定の割込処理において前記電源遮断処理を実行する、ことを特徴とするプリンタ装置。
【請求項２】
前記所定の割込処理は、タイマによる割込処理である、ことを特徴とする請求項１に記載のプリンタ装置。
【請求項３】
前記処理手段は、前記タイマによる割込処理において前記電源スイッチのオフ操作の操作時間を検出し、検出した操作時間に基づいて、前記電源遮断処理を含むメイン処理を実行不能かを判断する、ことを特徴とする請求項２に記載のプリンタ装置。
【請求項４】
前記処理手段は、前記メイン処理を実行不能と判断した場合には、前記メイン処理の実行不能情報を報せる、ことを特徴とする請求項３に記載のプリンタ装置。
【請求項５】
前記処理手段は、ＬＥＤの点滅状態により前記メイン処理の実行不能情報を報せる、ことを特徴とする請求項４に記載のプリンタ装置。
【請求項６】
前記処理手段は、警報音により前記実行不能情報を報せる、ことを特徴とする請求項４に記載のプリンタ装置。
【請求項７】
前記処理手段は、前記所定の割込処理において前記電源遮断処理を実行する前に処理に関するデータをバックアップする、ことを特徴とする請求項１ないし６のいずれかに記載のプリンタ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯型のサーマルプリンタ等のプリンタ装置に関する。
【背景技術】
【０００２】
従来のサーマルプリンタでは、特に、電源としてバッテリを使用した携帯型サーマルプリンタは、プロセッサによるソフトウエア処理がいわゆるハングアップ状態等となった場合に、電源スイッチをオフ操作しても、電源が遮断できず、復旧するにはバッテリを抜き差しする必要があった。すなわち、電源スイッチの操作に応じてソフトウエア処理により電源のオン、オフが実行されるため、プロセッサによるソフトウエア処理が暴走すると、電源スイッチの操作によっては電源を強制的にオフすることができない。
特許文献１に開示された印字装置では、プロセッサが暴走した際に、プロセッサを使用せずに強制的に電源をオフできる技術を開示している。
【特許文献１】特許第３６１２９２８号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、サーマルプリンタにソフトウエア処理によらずに電源を遮断できる回路等の機構を新たに設けると、携帯型のサーマルプリンタの製造コストが高くなるという問題がある。
【０００４】
本発明は、上記の事情に鑑みて成されたものであり、その目的とするところは、製造コストを上昇させることなく、プロセッサによるソフトウエア処理が正常な状態でない場合にも、確実に電源を遮断できるプリンタ装置を提供することにある。
【課題を解決するための手段】
【０００５】
本発明に係るサーマルプリンタ装置は、電源をオン／オフするための制御信号を入力するための電源スイッチと、前記電源スイッチからの電源オフを要求する制御信号に基づいて前記電源の遮断を制御する電源遮断処理を含むメイン処理と、所定の割込処理とを実行する処理手段とを有し、前記処理手段は、前記電源遮断処理を含むメイン処理を実行不能の場合には、前記所定の割込処理において前記電源遮断処理を実行する、ことを特徴としている。
この構成によれば、メイン処理を実行不能の場合にも確実に電源遮断処理を実行できる。
【０００６】
上記構成において、前記所定の割込処理は、タイマによる割込処理である、構成を採用できる。
この構成によれば、メイン処理を実行不能の場合にも処理手段へのタイマ割込により割込処理が確実に実行される。
【０００７】
上記構成において、前記処理手段は、前記タイマによる割込処理において前記電源スイッチのオフ操作の操作時間を検出し、検出した操作時間に基づいて、前記電源遮断処理を含むメイン処理を実行不能かを判断する、構成を採用できる。
【０００８】
上記構成において、前記処理手段は、前記メイン処理を実行不能と判断した場合には、前記メイン処理の実行不能情報を報せる、構成を採用できる。
【０００９】
上記構成において、前記処理手段は、ＬＥＤの点滅状態により前記メイン処理の実行不能情報を報せる、あるいは、前記処理手段は、警報音により前記実行不能情報を報せる、構成を採用できる。
【００１０】
上記構成において、前記処理手段は、前記所定の割込処理において前記電源遮断処理を実行する前に処理に関するデータをバックアップする、構成を採用できる。
【発明の効果】
【００１１】
本発明によれば、製造コストを上昇させることなく、プロセッサによるソフトウエア処理が正常な状態でない場合にも、ソフトウエア処理により確実に電源を遮断できる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の最良の実施形態について、添付図面を参照しつつ説明する。
図１は、本発明の一実施形態に係るサーマルプリンタの機能ブロック図である。
このサーマルプリンタは、図１に示すように、オペレーションパネル１０、メカユニット２０、制御回路ユニット１００、電源としてのバッテリ２００等から構成されており、制御回路ユニット１００に備わる処理手段としてのＣＰＵ(Central Processing Unit)５０がＲＯＭ(Read Only Memory)１５０に記憶されたソフトウエアを内蔵する図示しないＲＡＭ（Random Access Memory）に読み出して実行することによりその動作が制御される。また、このサーマルプリンタは、上位側コンピュータから各種データを受けて、印刷を実行する。
【００１３】
オペレーションパネル１０は、電源スイッチ１１、ブザー１２、ＬＥＤ(Light emitting Diode)１３、フィードスイッチ１４等から構成される。
電源スイッチ１１は、ユーザにより操作されて、電源をオン／オフするための制御信号１１ｓをＣＰＵ５０へ出力する。この電源スイッチ１１としては、いわゆる押しボタン式のスイッチを用いることができる。
ブザー１２は、ＣＰＵ５０からの指令に応じて警報音を出力する。
ＬＥＤ(Light Emitting Diode)１３は、ＣＰＵ５０からの指令に応じて発光する。
フィードスイッチ１４は、ユーザによる用紙の送り操作のためのスイッチである。
【００１４】
メカユニット２０は、サーマルヘッド２１、ヘッド温度検出サーミスタ２２、用紙送りモータ２３、用紙無し検出センサ２４、カバーオープン検出スイッチ２５等から構成される。
サーマルヘッド２１は、直線的に並んだ発熱抵抗体に選択的に電位を与えて発熱させ、この熱により反応する用紙に文字や絵を印刷するためのものである。
ヘッド温度検出サーミスタ２２は、サーマルヘッド２１の温度をフィードバック制御するために、サーマルヘッド２１の温度を検出する。
用紙送りモータ２３は、ステッピングモータで構成されており、用紙を搬送するために使用される。
用紙無し検出センサ２４は、用紙切れを検出する。
カバーオープン検出スイッチ２５等から構成される。
【００１５】
制御回路ユニット１００は、上記したＣＰＵ５０、ＲＯＭ１５０に加えて、電源制御回路３０、サーマルヘッド駆動回路４０、ステッピングモータ駆動回路６０、Ａ／Ｄ変換器７０、センサ検出回路８０、オペレーションパネル制御回路９０、所定周波数のクロック信号をＣＰＵ５０へ供給する発振子１１０、リセット回路１２０、フラッシュメモリ１３０、ＢＴ通信モジュール制御回路１４０、フレームメモリ１６０等から構成されている。
【００１６】
電源制御回路３０は、ＣＰＵ５０の図示しないＩ／Ｏポートと接続されており、Ｉ／Ｏポートの出力状態に応じて、バッテリ２００から供給される電力の制御回路ユニット１００への供給を制御する。
サーマルヘッド駆動回路４０は、ＣＰＵ５０からの指令に応じて、サーマルヘッド２１を駆動する。
ステッピングモータ駆動回路は、ＣＰＵ５０からの指令に応じて、用紙送りモータ２３へ駆動電流を供給する。
Ａ／Ｄ変換器７０は、ヘッド温度検出サーミスタ２２、用紙無し検出センサ２４等の検出したアナログ信号をデジタル信号に変換してＣＰＵ５０へ出力する。
センサ検出回路８０は、カバーオープン検出スイッチ２５の検出したアナログ信号をデジタル信号に変換してＣＰＵ５０へ出力する。
オペレーションパネル制御回路９０は、ＣＰＵ５０からの指令に応じてブザー１２，ＬＥＤ１３等を制御すると共に、電源スイッチ１１，フィードスイッチ１４の制御信号を受けてＣＰＵ５０へ出力する。
リセット回路１２０は、プリンタ電源がオフされるとＣＰＵ５０にリセット要求信号を出力して初期状態にするための回路である。
フラッシュメモリ１３０は、プリンタ装置の制御に必要な各種データ等をバックアップするための不揮発性メモリである。
ＢＴ通信モジュール制御回路１４０は、ブルートゥースと呼ばれる携帯情報機器向けの無線通信技術を利用して外部の携帯情報機器との間で印刷用のデータ等を受信する。
フレームメモリ１６０は、外部から入力された印刷用の画像データを一時的に記憶するためのメモリである。
【００１７】
次に、制御回路ユニット１００におけるＣＰＵ５０の処理の一例について図２ないし図５に示すフローチャートを参照して説明する。
ここで、図２はメインルーチンの処理の一例を示すフローチャート、図３はメインルーチンの処理における電源遮断処理としての電源オフ処理の一例を示すフローチャート、図４はタイマ割込処理ルーチンの処理の一例を示すフローチャート、及び図５は電源オフ処理に関するタイマ割込処理ルーチンにおける電源遮断処理としての電源オフ処理の一例を示すフローチャートである。
なお、サーマルプリンタでは、図２に示すメインルーチンのループが実行中に図４に示すような各種のタイマ割込処理が実行され、各タイマ割込処理ルーチンにおいて各種タスクが実行される。
【００１８】
図２に示すように、電源スイッチ１１の操作によりプリンタ電源がオンされると（ステップＳＴ１）、初期化処理を実行する（ステップＳＴ２）。初期化処理は、動作に必要な各種情報をＣＰＵ５０の内部ＲＡＭに設定する。尚、サーマルプリンタの動作に応じて、内部ＲＡＭに設定した各種情報の値は変化する。
【００１９】
次いで、リセット回路１２０からリセット要求があったかを判断し（ステップＳＴ３）、リセット要求があった場合には、プリンタ状態遷移判定処理を実行する（ステップＳＴ４）。具体的には、サーマルプリンタの状態が変化したかの判定を行い、変化した場合には、図示しない上位側のコンピュータへ通知する。
【００２０】
次いで、電源オフの要求があるかを判断する（ステップＳＴ５）。この判断は、電源オフ要求フラグの状態（オン／オフ）で判断する。電源オフ要求フラグの状態は、後述するタイマ割込処理ルーチンにおいて検出される。電源オフの要求がある場合には、後述する電源オフ処理１を実行する（ステップＳＴ１０）。
電源オフの要求がない場合には、サーマルプリンタがエラー状態かを判断する（ステップＳＴ６）。サーマルプリンタのエラー状態は、後述するタイマ割込処理ルーチンにおいて検出される。
【００２１】
サーマルプリンタがエラー状態にない場合には、上位側のコンピュータから受信したデータがあれば、このデータから印刷に関する各コマンドを抽出して実行するためのコマンド解析処理を行う（ステップＳＴ７）。尚、上位側のコンピュータからのデータは、タイマ割込処理によって受信されて所定の領域に格納されるが、この処理の説明は省略する。
【００２２】
次いで、上位側のコンピュータからのデータに印字データがあるかを判断し（ステップＳＴ８）、印字データがある場合には印字起動処理を実行し、印字処理を開始する（ステップＳＴ９）。具体的には、印字データをサーマルヘッド２１に転送し、印字ステップ数を設定し、タイマ割込処理により用紙送りモータ２３のステップ数と同期させて印字を実行する。
【００２３】
上記したステップＳＴ１０における電源オフ処理１は、メインルーチンが正常に実行されているときに、電源オフ要求があると実行され、図３に示すように、印刷中かを判断し（ステップＳＴ１１）、印刷中の場合には、メインルーチンに復帰し、印刷中でない場合には、サーマルプリンタが動作中かを判断し（ステップＳＴ１２）、動作中の場合には、メインルーチンに復帰する。
ステップＳＴ１２において、サーマルプリンタが動作していない場合には、電源をオフするために、電源制御回路３０と接続されたＣＰＵ５０のＩ／Ｏポートの出力をオフする（ステップＳＴ１３）。
そして、ＣＰＵ５０に内蔵されたウォッチドッグタイマをクリアする処理を繰り返す（ステップＳＴ１４）。このループを実行中に、電源制御回路３０がオフ動作して電源がオフされる。
【００２４】
次に、電源オフ処理に関するタイマ割込処理について図４を参照して説明する。
このタイマ割込処理は、メインルーチンを実行中に周期的かつ強制的に実行され、各種の割込処理の中で一番優先順位が高いものである。
タイマ割込処理が起動されると、先ず、タスクカウンタを更新する（ステップＳＴ５１）。
次いで、そのタスクカウンタに対応するタスクが電源スイッチ１１の状態を検出する電源スイッチ検出タスクかを判断し（ステップＳＴ５２）、電源スイッチ検出タスクでない場合には、タスクカウンタに応じたエラーチェックを実行する（ステップＳＴ５８）。サーマルプリンタがエラー状態にある場合には、それが検出される。
【００２５】
電源スイッチ検出タスクの場合には、制御信号１１ｓの状態に基づいて電源スイッチ１１が操作されているかを判断する（ステップＳＴ５３）。
電源スイッチ１１が操作されている場合に、所定期間（１．５秒間）以上継続して電源スイッチ１１が操作されているかを判断する（ステップＳＴ５４）。１．５秒間という期間は、この程度の期間継続して電源スイッチ１１が操作されている場合には、ユーザが電源オフ操作を実行していると判断するために設定した期間であり、特に、この値に限定されるわけではない。
そして、電源スイッチ１１が１．５秒間以上操作されている場合には、電源オフ要求設定処理を実行する（ステップＳＴ５５）。この電源オフ要求設定処理は、上記の電源オフ要求フラグをオンする。これにより、メインルーチンが正常に実行されている場合には、上記した電源オフ処理１が実行される。
【００２６】
ここで、電源オフ要求設定処理を実行したのち、電源スイッチ１１がさらに継続して所定期間（３秒間）以上操作されているかを判断する（ステップＳＴ５５）。すなわち、正常時の電源オフ操作に加えてさらに所定期間の間、電源オフ操作が継続して実行されている場合には、メインルーチンが正常に実行されておらず、上記した電源オフ処理１が実行できない状態にあると判断する。尚、３秒間という期間は例示であり、これに限定されるわけではない。
【００２７】
電源スイッチ１１がさらに継続して３秒間以上操作されている場合には、電源オフ処理２を実行する（ステップＳＴ５７）。
【００２８】
電源オフ処理２は、図５に示すように、ＣＰＵ５０の内蔵ＲＡＭ上のデータをフラッシュメモリ１３０にバックアップする（ステップＳＴ６０）。電源遮断処理前の各種データをフラッシュメモリ１３０にバックアップするのは、このデータからメインルーチンが実行不能になった原因を判断するためである。
【００２９】
次いで、ＬＥＤ１３を所定の周期で点滅させると共に（ステップＳＴ６１）、ブザー１２で警報音を鳴らす（ステップＳＴ６２）。ユーザは、ＬＥＤ１３の点灯状態からメインルーチンが実行不能になったことを知ることができ、また、ブザー１２の鳴動によってもメインルーチンが実行不能になったことを知ることができる。
【００３０】
次いで、サーマルプリンタが動作していない場合には、電源をオフするために、電源制御回路３０と接続されたＣＰＵ５０のＩ／Ｏポートの出力をオフする（ステップＳＴ６３）。
そして、ＣＰＵ５０に内蔵されたウォッチドッグタイマをクリアする処理を繰り返す（ステップＳＴ６４）。このループを実行中に、電源制御回路３０がオフ動作して電源がオフされる。
【００３１】
以上のように、本実施形態によれば、電源遮断処理をメインルーチンだけでなく、割込処理ルーチンにおいても可能にしたので、メインルーチンがいわゆるハングアップした場合であっても、確実に電源遮断処理をソフトウエア処理により実行できる。
また、新たな異常検出機構を設けることなく、電源スイッチ１１の操作時間に基づいてメインルーチンが実行不能状態になっていることを検出できる。
【図面の簡単な説明】
【００３２】
【図１】本発明の一実施形態に係るサーマルプリンタの機能ブロック図である。
【図２】メインルーチンの処理の一例を示すフローチャートである。
【図３】メインルーチンの処理における電源オフ処理の一例を示すフローチャートである。
【図４】タイマ割込処理ルーチンの処理の一例を示すフローチャートである。
【図５】タイマ割込処理ルーチンにおける電源オフ処理の一例を示すフローチャートである。
【符号の説明】
【００３３】
１０…オペレーションパネル
１１…電源スイッチ
１２…ブザー
１３…ＬＥＤ
１４…フィードスイッチ
２０…メカユニット
２１…サーマルヘッド
２２…ヘッド温度検出サーミスタ
２３…用紙送りモータ
２４…用紙無し検出センサ
２５…カバーオープン検出スイッチ
３０…電源制御回路
４０…サーマルヘッド駆動回路
５０…ＣＰＵ
６０…ステッピングモータ駆動回路
７０…Ａ／Ｄ変換器
８０…センサ検出回路
９０…オペレーションパネル制御回路
１００…制御回路ユニット
１３０…フラッシュメモリ
１５０…ＲＯＭ
２００…バッテリ
【図１】
2008073935.tif 000003
【図２】
2008073935.tif 000004
【図３】
2008073935.tif 000005
【図４】
2008073935.tif 000006
【図５】
2008073935.tif 000007