(57)【要約】【課題】節電用モード中にＣＰＵが一時停止状態になっても、節電用モードが所定時間継続すれば、携帯型プリンターを停止状態にすることができる携帯型プリンターを提供すること。【解決手段】ＢＴモジュールのスリープモード中にマイクロコントローラのＣＰＵが一時停止状態になるので（Ｓ１０３，Ｓ１１５，Ｓ１１８）、節電モードであるスリープモード中であっても消費電力をさらに抑えることが可能であり、しかも、ＢＴモジュールのスリープモード中は、発振回路の割込信号がある毎に、ＣＰＵが一時停止状態から動作可能となることを繰り返し（Ｓ１１１）、発振回路からのパルス信号が割込信号としてＣＰＵに入力される毎に「１」がインクリメントされるカウント値とスリープカウント値との比較により（Ｓ１１６，Ｓ１１７）、ＢＴモジュールのスリープモードの継続時間を計測する。【選択図】図６
2011076206.tif 000002
【特許請求の範囲】
【請求項１】
短距離無線通信の制御を行うための通信モジュールを有する携帯型プリンターにおいて、
所定間隔で信号を繰り返し発生させるように設計された発振回路と、
第１設定時間と第２設定時間とが記憶された主記憶装置と、
ＣＰＵと内蔵記憶装置とを有するとともに、前記携帯型プリンターのアイドル状態の継続時間が前記第１設定時間に到達すると、前記ＣＰＵにより前記通信モジュールをスリープモードに移行させるとともに、前記ＣＰＵが一時停止状態となるマイクロコントローラと、を備え、
前記マイクロコントローラでは、前記ＣＰＵが一時停止状態中に、前記ＣＰＵに割込信号の入力があると、前記ＣＰＵが動作可能となり、前記内蔵記憶装置を使用して以下（１ａ）〜（１ｂ）の処理を前記ＣＰＵが実行し、
（１ａ）前記割込信号が前記発振回路の信号であればカウント値をインクリメントし、
（１ｂ）前記発振回路の所定間隔の時間で前記第２設定時間を除することにより算出されるスリープカウント値に前記カウント値が到達していなければ、前記ＣＰＵ自身を再び一時停止状態とする一方、前記スリープカウント値に前記カウント値が到達していれば、前記携帯型プリンターを停止状態にする、
ことを特徴とする携帯型プリンター。
【請求項２】
請求項１に記載する携帯型プリンターであって、
前記マイクロコントローラでは、内蔵タイマが設けられるとともに、以下（２ａ）〜（２ｂ）の処理を前記ＣＰＵが実行し、
（２ａ）前記携帯型プリンターのアイドル状態の継続時間が前記第１設定時間に到達する直前の所定時間内において、当該アイドル状態が継続していれば、前記発振回路の信号による割込入力がある毎に当該割込入力時刻を前記内蔵タイマを利用して取得するとともに、割込入力回数をカウントし、
（２ｂ）前記携帯型プリンターのアイドル状態の継続時間が前記第１設定時間に到達したときに、前記割込入力回数が２回以上であれば、前記割込入力時刻の各々と前記割込入力回数とに基づいて算出される割込入力間隔の平均時間を前記発振回路の所定間隔の時間として前記（１ｂ）で使用する、
ことを特徴とする携帯型プリンター。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、節電用モードに移行することにより消費電力を抑えた携帯型プリンターに関するものである。
【背景技術】
【０００２】
従来の携帯型プリンターには、例えば、下記特許文献１に記載されているように、通信手段や印字部に対して節電用モードをそれぞれ備えたものがある。
【０００３】
そのような携帯型プリンターでは、所定時間使用されていないと、通信手段や印字部がそれぞれの節電用モードに移行することによって、節電を行い、消費電力を抑えている。さらに、節電用モードが所定時間継続すると、自動的に電源が切られ、携帯型プリンターが停止状態になる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−９９９６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
もっとも、節電用モード中のロジック系回路では、ＣＰＵは通常電力で稼働し、ＣＰＵ以外は省電力で稼働しているため、消費電力をさらに抑えることが可能な余地があった。しかしながら、節電用モード中のロジック系回路を非通電状態にすれば、一時的であっても、節電用モードの継続時間を計測することができなくなることから、節電用モードが所定時間継続しても、携帯型プリンターを停止状態にすることができなくなる。
【０００６】
そこで、本発明は、上述した点を鑑みてなされたものであり、節電用モード中にＣＰＵが一時停止状態になっても、節電用モードが所定時間継続すれば、携帯型プリンターを停止状態にすることができる携帯型プリンターを提供することを課題とする。
【課題を解決するための手段】
【０００７】
この課題を解決するためになされた請求項１に係る発明は、短距離無線通信の制御を行うための通信モジュールを有する携帯型プリンターにおいて、所定間隔で信号を繰り返し発生させるように設計された発振回路と、第１設定時間と第２設定時間とが記憶された主記憶装置と、ＣＰＵと内蔵記憶装置とを有するとともに、前記携帯型プリンターのアイドル状態の継続時間が前記第１設定時間に到達すると、前記ＣＰＵにより前記通信モジュールをスリープモードに移行させるとともに、前記ＣＰＵが一時停止状態となるマイクロコントローラと、を備え、前記マイクロコントローラでは、前記ＣＰＵが一時停止状態中に、前記ＣＰＵに割込信号の入力があると、前記ＣＰＵが動作可能となり、前記内蔵記憶装置を使用して以下（１ａ）〜（１ｂ）の処理を前記ＣＰＵが実行し、（１ａ）前記割込信号が前記発振回路の信号であればカウント値をインクリメントし、（１ｂ）前記発振回路の所定間隔の時間で前記第２設定時間を除することにより算出されるスリープカウント値に前記カウント値が到達していなければ、前記ＣＰＵ自身を再び一時停止状態とする一方、前記スリープカウント値に前記カウント値が到達していれば、前記携帯型プリンターを停止状態にする、ことを特徴とする。
【０００８】
本発明の携帯型プリンターでは、携帯型プリンターのアイドル状態の継続時間が第１設定時間に到達すると、マイクロコントローラのＣＰＵによって通信モジュールが節電用モードであるスリープモードに移行するとともに、ＣＰＵが一時停止状態となる。但し、通信モジュールがスリープモードに移行していても、所定間隔で信号を繰り返し発生させるように設計された発振回路は通電状態にある。そして、ＣＰＵが一時停止状態中に、ＣＰＵに割込信号の入力があると、ＣＰＵが動作可能となり、マイクロコントローラの内蔵記憶装置を使用して、（１ａ）〜（１ｂ）の処理をＣＰＵが実行する。つまり、（１ａ）その割込信号が発振回路からの信号であれば、携帯型プリンターのアイドル状態が維持されているとして、カウント値がインクリメントされる。その後、（１ｂ）カウント値がスリープカウント値に到達していなければ、ＣＰＵ自身を再び一時停止状態とする一方、カウント値がスリープカウント値に到達していれば、携帯型プリンターを停止状態にする。
【０００９】
この点、スリープカウント値は、発振回路の所定間隔の時間で第２設定時間を除することにより算出されたものである。従って、通信モジュールがスリープモードに移行した後も、携帯型プリンターのアイドル状態が第２設定時間継続されていれば、発振回路からの信号が割込信号としてＣＰＵに入力される毎にカウントされるカウント値がスリープカウント値に到達し、携帯型プリンターは停止状態になる。
【００１０】
尚、スリープカウント値の算出タイミングは、（１ｂ）の処理の時点に限るものでなく、例えば、（１ａ）〜（１ｂ）の処理が繰り返し実行される以前のいずれかの時点であってもよい。
【発明の効果】
【００１１】
すなわち、本発明の携帯型プリンターでは、通信モジュールのスリープモード中にマイクロコントローラのＣＰＵが一時停止状態になるので、節電モードであるスリープモード中であっても消費電力をさらに抑えることが可能であり、しかも、通信モジュールのスリープモード中は、発振回路の割込信号がある毎に、ＣＰＵが一時停止状態から動作可能となることを繰り返し、発振回路からの信号が割込信号としてＣＰＵに入力される毎にインクリメントされるカウント値とスリープカウント値との比較により、通信モジュールのスリープモードの継続時間を計測するので、通信モジュールのスリープモードが第２設定時間継続すれば、携帯型プリンターを停止状態にすることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態に係る携帯型プリンターの斜視図である。
【図２】同実施形態に係る携帯型プリンターのブロック図である。
【図３】同実施形態に係る携帯型プリンターが有する発振回路が繰り返し発生する信号の波形を示した図である。
【図４】同実施形態に係る携帯型プリンターが有する発振回路の回路図である。
【図５】同実施形態に係る携帯型プリンターで実施される動作処理のフローチャート図である。
【図６】同実施形態に係る携帯型プリンターで実施されるスリープ処理のフローチャート図である。
【図７】同実施形態に係る携帯型プリンターで実施されるパワーオフ時間補正処理のフローチャート図である。
【図８】同実施形態に係る携帯型プリンターが有するテーブル（スリープカウント値の算出用）を示した図である。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について図面を参照して説明する。本発明の一実施形態に携帯型プリンターは、ブルートゥース（登録商標）の通信技術やＵＳＢコードでホスト端末と接続し、感熱式の印刷を行うモバイルプリンタである。図１は、本実施形態に係る携帯型プリンター１の斜視図である。図１に示すように、本実施形態に係る携帯型プリンター１は、本体２を有している。本体２には、電源キー３やＵＳＢコネクタ４等が設けられている。
【００１４】
図２は、本実施形態に係る携帯型プリンター１のブロック図である。図２に示すように、本実施形態に係る携帯型プリンター１は、マイクロコントローラ１１を有している。マイクロコントローラ１１は、ＣＰＵ１２、内蔵ＲＯＭ１３、内蔵ＲＡＭ１４、及び内蔵タイマ１５を有している。また、マイクロコントローラ１１に対しては、電源キー３、ＥＥＰＲＯＭ２１、Ｆｌａｓｈ  ＲＯＭ２２、ＳＤＲＡＭ２３、上記ＵＳＢコネクタ４と接続するＵＳＢコントローラ２４、ＢＴモジュール３１、発振回路３２等が接続されている。
尚、感熱式の印刷関連の電気的構成については省略している。
【００１５】
ＢＴモジュール３１は、ブルートゥース（登録商標）の通信技術により印刷指令や印刷データ等をホスト端末（不図示）から受信するためのものであり、また、省電力で稼働して節電を行うスリープモードを備えている。
【００１６】
図３は、発振回路３２が繰り返し発生する信号の波形を示した図である。図３に示すように、発振回路３２は、所定間隔Ｔｙｐでパルス信号を繰り返し発生させるように設計されている。ここでは、所定間隔Ｔｙｐの時間を２２秒としている。図４は、発振回路３２の回路図である。図４に示すように、発振回路３２は、集積回路４１、抵抗４２，４３，４４、及びコンデンサ４５，４６等から構成されている。
【００１７】
尚、発振回路３２は、温度やこれらの構成部品のばらつき等によって、パルス信号の発生間隔である所定間隔Ｔｙｐの時間に誤差が生じることがある。その誤差を考慮すると、パルス信号の発生間隔である所定間隔Ｔｙｐの時間については、２２秒と設計されている本実施形態では、例えば、１５秒〜２９秒の範囲内にばらつくと考えられる。
【００１８】
次に、本実施形態に係る携帯型プリンター１で実施される動作処理について説明する。図５は、本実施形態に係る携帯型プリンター１で実施される動作処理のフローチャート図である。尚、図５に示すフローチャートを実現するプログラムは、ＥＥＰＲＯＭ２１に記憶されており、電源が入ると、ＣＰＵ１２により、ＳＤＲＡＭ２３にコピーされて行われる。
【００１９】
電源キー３が押下され、電源が入ると、図５に示すように、Ｓ１において、ＣＰＵ１２は初期化処理を行う。この初期化処理では、内蔵タイマ１５により、本実施形態に係る携帯型プリンター１についてアイドル状態の継続時間の計測が開始される。また、ＣＵＰ１２自身については、発振回路３２からのパルス信号を割込信号として入力することが許可されていない状態にされる。また、後述する割込入力回数Ｎやカウント値Ｋには「０」が代入され、後述する割込信号入力時刻Ｔ（Ｎ）があれば消去される。さらに、ＢＴモジュール３１がスリープモードにあれば、そのスリープモードは解除される。その後は、Ｓ２進む。
【００２０】
Ｓ２では、ＣＰＵ１２は、電源キー３がオフか否かを判定する。この判定は、電源キー３が押下されたことにより発生する信号に基づいて行われる。ここで、電源キー３がオフであると判定された場合には（Ｓ２：ＹＥＳ）、Ｓ３に進む。Ｓ３では、ＣＰＵ１２は停止処理を行う。この停止処理では、電源が切られ、本実施形態に係る携帯型プリンター１が停止状態になる。一方、電源キー３がオフでないと判定された場合には（Ｓ２：ＮＯ）、Ｓ４に進む。
【００２１】
Ｓ４では、ＣＰＵ１２は、本実施形態に係る携帯型プリンター１についてアイドル状態の継続時間が第１設定時間Ｔｓ１を経過したか否かを判定する。尚、第１設定時間Ｔｓ１（例えば、３分）は、ＥＥＰＲＯＭ２１に記憶されており、最小時間以上であれば、ＵＳＢコントローラ２４やＢＴモジュール３１を介したソフトウエアでユーザが変更させることができる。また、第１設定時間Ｔｓ１の最小時間は、発振回路３２のパルス信号の発生間隔である所定間隔Ｔｙｐを数倍以上にした時間に定められており、ここでは、１分としている。
【００２２】
ここで、本実施形態に係る携帯型プリンター１についてアイドル状態の継続時間が第１設定時間Ｔｓ１を経過していると判断された場合には（Ｓ４：ＹＥＳ）、後述するＳ８のスリープ処理に進む。これに対して、本実施形態に係る携帯型プリンター１についてアイドル状態の継続時間が第１設定時間Ｔｓ１を経過していないと判断された場合には（Ｓ４：ＮＯ）、Ｓ５に進む。
【００２３】
Ｓ５では、ＣＰＵ１２は、本実施形態に係る携帯型プリンター１についてアイドル状態の継続時間が第１設定時間Ｔｓ１を経過する直前の所定時間Ｔａ以内にあるか否かを判定する。尚、所定時間Ｔａは、ＥＥＰＲＯＭ２１に記憶されており、第１設定時間Ｔｓ１を超えない時間とされるが、ここでは、第１設定時間Ｔｓ１の最小時間（１分）に等しくされている。ここで、本実施形態に係る携帯型プリンター１についてアイドル状態の継続時間が第１設定時間Ｔｓ１を経過する直前の所定時間Ｔａ以内にあると判定された場合には（Ｓ５：ＹＥＳ）、後述するＳ９のパワーオフ時間補正処理を行う。これに対して、本実施形態に係る携帯型プリンター１についてアイドル状態の継続時間が第１設定時間Ｔｓ１を経過する直前の所定時間Ｔａ以内にないと判定された場合には（Ｓ５：ＮＯ）、Ｓ６に進む。
【００２４】
Ｓ６では、ＣＰＵ１２は、ホスト端末（不図示）からの印刷指令があるか否かを判定する。この判定は、ＵＳＢコントローラ２４やＢＴモジュール３１からの信号に基づいて行われる。ここで、ホスト端末（不図示）からの印刷指令がないと判定した場合には（Ｓ６：ＮＯ）、上記Ｓ２に戻る。これに対して、ホスト端末（不図示）からの印刷指令があると判定した場合には（Ｓ６：ＹＥＳ）、Ｓ７に進む。
【００２５】
Ｓ７では、ＣＰＵ１２は、印刷動作処理を行う。この印刷動作処理では、ＵＳＢコントローラ２４やＢＴモジュール３１からの印刷指令や印刷データ等に基づいて、感熱式の印刷動作が行われる。その後は、上記Ｓ２に戻る。このとき、本実施形態に係る携帯型プリンター１についてのアイドル状態の継続時間の計測は、リセットされ、再び開始される。さらに、ＣＰＵ１２は、後述するカウント値Ｋや割込入力回数Ｎに「０」を代入し、後述する割込信号入力時刻Ｔ（Ｎ）があれば消去する。
【００２６】
次に、上記Ｓ９のパワーオフ時間補正処理について説明する。図７は、パワーオフ時間補正処理のフローチャート図である。図７に示すパワーオフ時間補正処理では、Ｓ２１１において、ＣＵＰ１２に対して発振回路３２からのパルス信号を割込信号として入力することが許可されている状態にあるか否かをＣＵＰ１２自身が判定する。ここで、ＣＵＰ１２に対して発振回路３２からのパルス信号を割込信号として入力することが許可されていない状態にあると判定された場合には（Ｓ２１１：ＮＯ）、Ｓ２１５に進む。Ｓ２１５では、ＣＰＵ１２は、割込許可処理を行う。この割込許可処理では、ＣＵＰ１２は、ＣＵＰ１２自身に対して発振回路３２からのパルス信号を割込信号として入力することが許可されている状態にする。その後は、上記図５のＳ６に進む。
【００２７】
一方、ＣＵＰ１２に対して発振回路３２からのパルス信号を割込信号として入力することが許可されている状態にあると判定された場合には（Ｓ２１１：ＹＥＳ）、Ｓ２１２に進む。Ｓ２１２では、ＣＰＵ１２は、発振回路３２からのパルス信号が割込信号として入力されたか否かを判定する。ここで、発振回路３２からのパルス信号が割込信号として入力されていないと判定された場合には（Ｓ２１２：ＮＯ）、上記図５のＳ６に進む。これに対して、発振回路３２からのパルス信号が割込信号として入力されていると判定された場合には（Ｓ２１２：ＹＥＳ）、Ｓ２１３に進む。
【００２８】
Ｓ２１３では、ＣＰＵ１２は、割込入力回数の加算処理を行う。この割込入力回数の加算処理では、ＣＰＵ１２は、割込入力回数Ｎに「１」をインクリメントする。その後は、Ｓ２１４に進む。Ｓ２１４では、ＣＰＵ１２は、割込信号入力時刻Ｔ（Ｎ）として、発振回路３２からのパルス信号が割込信号として入力された時刻を内蔵タイマ１５を使用して取得する。その後は、上記図５のＳ６に進む。
【００２９】
従って、Ｓ２１３及びＳ２１４がｎ回繰り返し行われると、割込入力回数Ｎは「ｎ」となり、ｎ個の割込信号入力時刻Ｔ（１），Ｔ（２），Ｔ（３），…，Ｔ（ｎ）が取得される。
【００３０】
次に、上記図５のＳ８のスリープ処理について説明する。図６は、スリープ処理のフローチャート図である。図６に示すスリープ処理では、Ｓ１０１において、ＣＰＵ１２は、ＢＴモジュール３１をスリープモードに移行させる。その後は、Ｓ１０２に進む。
【００３１】
Ｓ１０２では、ＣＰＵ１２は、スリープカウント値Ｓｃを算出する。ここでは、先ず、ＣＰＵ１２は、上記図７のＳ２１３で加算された割込入力回数Ｎと上記図７のＳ２１４で取得された割込信号入力時刻Ｔ（Ｎ）の各々を使用して、割込入力間隔の平均時間Ｍを算出する。すなわち、割込入力回数Ｎを「ｎ」とすると、（Ｔ（ｎ）−Ｔ（ｎ−１））＋…＋（Ｔ（２）−Ｔ（１））の和を「ｎ−１」で除することにより、割込入力間隔の平均時間Ｍを算出する。従って、割込入力間隔の平均時間Ｍとは、本実施形態に係る携帯型プリンター１のアイドル状態の継続時間が第１設定時間Ｔｓ１を経過する直前の所定時間Ｔａ以内において、ＣＰＵ１２に対して割込信号として入力された発振回路３２からのパルス信号の各々の入力間隔の平均時間を意味している。
【００３２】
そして、ＣＰＵ１２は、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２を割込入力間隔の平均時間Ｍで除することにより、スリープカウント値Ｓｃを算出する。もっとも、割込入力回数Ｎが「１」の場合には、割込入力間隔の平均時間Ｍに代えて、発振回路３２のパルス信号の発生間隔についての設計値である所定間隔Ｔｙｐの時間を使用して、スリープカウント値Ｓｃが算出される。算出されたスリープカウント値Ｓｃは、下記Ｓ１１１〜Ｓ１１９までの各処理を行うためのプログラムとともに、マイクロコントローラ１１の内蔵ＲＡＭ１４に記憶される。
【００３３】
尚、第２設定時間Ｔｓ２は、ＥＥＰＲＯＭ２１に記憶されており、ＵＳＢコントローラ２４やＢＴモジュール３１を介したソフトウエアでユーザが変更させることができる。これにより、ＢＴモジュール３１のスリープモード継続時間をユーザが変更できるので、利便性が高くなる。
【００３４】
また、このようなスリープカウント値Ｓｃの算出は、テーブルを使用して行われるのが通常である。図８は、スリープカウント値Ｓｃの算出のためのテーブル５１Ａ，５１Ｂ，５１Ｃを示した図である。図８に示すテーブル５１Ａは、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２が６００秒（１０分）のときに使用されるものである。テーブル５１Ｂは、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２が１８００秒（３０分）のときに使用されるものである。テーブル５１Ｃは、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２が３６００秒（６０分）のときに使用されるものである。各テーブル５１Ａ，５１Ｂ，５１Ｃでは、右側のマトリックスが割込入力間隔の平均時間Ｍに相当し、左側のマトリックスがスリープカウント値Ｓｃに相当している。
【００３５】
従って、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２が６００秒（１０分）のときに使用されるテーブル５１Ａの場合には、割込入力間隔の平均時間Ｍが２０秒であれば、スリープカウント値Ｓｃは３０カウントとなる。また、割込入力間隔の平均時間Ｍが２２秒であれば、スリープカウント値Ｓｃは２７カウントとなる。
【００３６】
但し、このようなスリープカウント値Ｓｃの算出のためのテーブルは、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２に応じて用意されるが、ＥＥＰＲＯＭ２１の記憶容量によっては、設定可能な全ての第２設定時間Ｔｓ２に応じて用意することが困難な場合がある。
【００３７】
このような場合には、例えば、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２が６００秒（１０分）のときに使用されるテーブル５１ＡのみをＥＥＰＲＯＭ２１に記憶し、６００秒（１０分）の第２設定時間Ｔｓを基準にして計算によりスリープカウント値Ｓｃを算出する。具体的には、ＢＴモジュール３１のスリープモード継続時間である第２設定時間Ｔｓ２が３６００秒（６０分）に設定されている条件で、割込入力間隔の平均時間Ｍが２０秒であれば、スリープカウント値Ｓｃは３０カウント×３６００秒（６０分）／６００秒（１０分）＝１８０カウントとなる。また、同条件で、割込入力間隔の平均時間Ｍが２２秒であれば、スリープカウント値Ｓｃは２７カウント×３６００秒（６０分）／６００秒（１０分）＝１６２カウントとなる。
【００３８】
そして、スリープカウント値Ｓｃが算出された後は、Ｓ１０３に進む。Ｓ１０３では、ＣＰＵ１２は、ＣＰＵ一時停止処理を行う。このＣＰＵ一時停止処理では、ＣＰＵ１２は、ＣＰＵ１２自身を一時停止する。このとき、マイクロコントローラ１１では、内蔵タイマ１５は供給停止となるが、内蔵ＲＯＭ１３や内蔵ＲＡＭ１４の内部データは保持される。また、発振回路３２は通電状態が維持される。
【００３９】
その後は、ＣＰＵ１２は、内蔵ＲＡＭ１４に記憶されているプログラムにより、下記Ｓ１１１〜Ｓ１１９までの各処理を行う。すなわち、一時停止中のＣＰＵ１２に対して割込信号が入力されると、Ｓ１１１のＣＰＵ動作復帰処理において、ＣＰＵ１２が動作可能にされる。そして、Ｓ１１２に進むと、ＣＰＵ１２は、その割込信号が発振回路３２からのパルス信号であるか否かを判定する。ここで、その割込信号が発振回路３２からのパルス信号であると判定された場合には（Ｓ１１２：ＹＥＳ）、Ｓ１１６に進む。Ｓ１１６では、ＣＰＵ１２は、カウント値の加算処理を行う。このカウント値の加算処理では、ＣＰＵ１２は、カウント値Ｋに「１」をインクリメントする。その後は、Ｓ１１７に進む。
【００４０】
Ｓ１１７では、ＣＰＵ１２は、カウント値Ｋがスリープカウント値Ｓｃに到達したか否かを判定する。ここで、カウント値Ｋがスリープカウント値Ｓｃに到達していないと判定された場合には（Ｓ１１７：ＮＯ）、Ｓ１１８に進む。
【００４１】
Ｓ１１８では、ＣＰＵ１２は、ＣＰＵ一時停止処理を行う。このＣＰＵ一時停止処理では、ＣＰＵ１２は、ＣＰＵ１２自身を再び一時停止する。このとき、マイクロコントローラ１１では、内蔵タイマ１５は供給停止となるが、内蔵ＲＯＭ１３や内蔵ＲＡＭ１４の内部データは保持される。また、発振回路３２は通電状態が維持される。その後、一時停止中のＣＰＵ１２に対して割込信号が入力されると、上記Ｓ１１１が再び行われる。
【００４２】
一方、上記Ｓ１１７において、カウント値Ｋがスリープカウント値Ｓｃに到達していると判定された場合には（Ｓ１１７：ＹＥＳ）、Ｓ１１９に進む。Ｓ１１９では、ＣＰＵ１２は停止処理を行う。この停止処理では、電源が切られ、本実施形態に係る携帯型プリンター１が停止状態になる。
【００４３】
また、上記Ｓ１１２において、その割込信号が発振回路３２からのパルス信号でないと判定された場合には（Ｓ１１２：ＮＯ）、Ｓ１１３に進む。Ｓ１１３では、ＣＰＵ１２は、その割込信号が印刷指令であるか否かを判定する。ここで、その割込信号が印刷指令であると判定された場合には（Ｓ１１３：ＹＥＳ）、ＣＰＵ１２は、ＢＴモジュール３１のスリープモードを解除する。その後は、上記図５のＳ２に戻る。これに対して、その割込信号が印刷指令でないと判定された場合には（Ｓ１１３：ＮＯ）、Ｓ１１４に進む。
【００４４】
Ｓ１１４では、ＣＰＵ１２は、その割込信号が電源キー３からの信号であるか否かを判定する。ここで、その割込信号が電源キー３からの信号であると判定された場合には（Ｓ１１４：ＹＥＳ）、上記図５のＳ２に戻る。これに対して、その割込信号が電源キー３からの信号でないと判定された場合には（Ｓ１１４：ＮＯ）、Ｓ１１５に進む。
【００４５】
Ｓ１１５では、ＣＰＵ１２は、ＣＰＵ一時停止処理を行う。このＣＰＵ一時停止処理では、ＣＰＵ１２は、ＣＰＵ１２自身を再び一時停止する。このとき、マイクロコントローラ１１では、内蔵タイマ１５は供給停止となるが、内蔵ＲＯＭ１３や内蔵ＲＡＭ１４の内部データは保持される。また、発振回路３２は通電状態が維持される。その後、一時停止中のＣＰＵ１２に対して割込信号が入力されると、上記Ｓ１１１が再び行われる。
【００４６】
以上詳細に説明した通り、本実施の形態に係る携帯型プリンター１では、本実施の形態に係る携帯型プリンター１のアイドル状態の継続時間が第１設定時間Ｔｓ１に到達すると（Ｓ４：ＹＥＳ）、マイクロコントローラ１１のＣＰＵ１２によってＢＴモジュール３１が節電用モードであるスリープモードに移行するとともに（Ｓ８，Ｓ１０１）、ＣＰＵ１２が一時停止状態となる（Ｓ８，Ｓ１０３）。但し、ＢＴモジュール３１がスリープモードに移行していても、所定間隔Ｔｙｐでパルス信号を繰り返し発生させるように設計された発振回路３２は通電状態にある。
【００４７】
そして、ＣＰＵ１２が一時停止状態中に、ＣＰＵ１２に割込信号の入力があると、ＣＰＵ１２が動作可能となり（Ｓ８，Ｓ１１１）、マイクロコントローラ１１の内蔵ＲＡＭ１４を使用して、以下（１ａ）〜（１ｂ）の処理をＣＰＵ１２が行う。つまり、（１ａ）その割込信号が発振回路３２からのパルス信号であれば、本実施の形態に係る携帯型プリンター１についてアイドル状態が維持されているとして、カウント値Ｋに対し「１」がインクリメントされる（Ｓ８，Ｓ１１６）。その後、（１ｂ）カウント値Ｋがスリープカウント値Ｓｃに到達していなければ（Ｓ８，Ｓ１１７：ＮＯ）、ＣＰＵ１２自身を再び一時停止状態とする一方（Ｓ８，Ｓ１１８）、カウント値Ｋがスリープカウント値Ｓｃに到達していれば（Ｓ８，Ｓ１１７：ＹＥＳ）、本実施の形態に係る携帯型プリンター１を停止状態にする（Ｓ８，Ｓ１１９）。
【００４８】
この点、スリープカウント値Ｓｃは、割込入力回数Ｎが「１」の場合には、発振回路３２の所定間隔Ｔｙｐの時間で第２設定時間Ｔｓ２を除することにより算出されたものである（Ｓ８，Ｓ１０２）。従って、ＢＴモジュール３１がスリープモードに移行した後も、本実施の形態に係る携帯型プリンター１のアイドル状態が第２設定時間Ｔｓ２継続されていれば、発振回路３２からのパルス信号が割込信号としてＣＰＵ１２に入力される毎にカウントされるカウント値Ｋがスリープカウント値Ｓｃに到達し（Ｓ８，Ｓ１１６，Ｓ１１７：ＹＥＳ）、本実施の形態に係る携帯型プリンター１は停止状態になる。
【００４９】
すなわち、本実施の形態に係る携帯型プリンター１では、ＢＴモジュール３１のスリープモード中にマイクロコントローラ１１のＣＰＵ１２が一時停止状態になるので（Ｓ８，Ｓ１０３，Ｓ１１５，Ｓ１１８）、節電モードであるスリープモード中であっても消費電力をさらに抑えることが可能であり、しかも、ＢＴモジュール３１のスリープモード中は、発振回路３２の割込信号がある毎に、ＣＰＵ１２が一時停止状態から動作可能となることを繰り返し（Ｓ８，Ｓ１１１）、発振回路３２からのパルス信号が割込信号としてＣＰＵ１２に入力される毎に「１」がインクリメントされるカウント値Ｋとスリープカウント値Ｓｃとの比較により（Ｓ８，Ｓ１１６，Ｓ１１７）、ＢＴモジュール３１のスリープモードの継続時間を計測するので、ＢＴモジュール３１のスリープモードが第２設定時間Ｔｓ２継続すれば（Ｓ８，Ｓ１１７：ＹＥＳ）、本実施の形態に係る携帯型プリンター１を停止状態にすることができる（Ｓ８，Ｓ１１９）。
【００５０】
尚、発振回路３２は、上述したように、所定間隔Ｔｙｐでパルス信号を繰り返し発生させるように設計されたものであるが（図３参照）、温度変化や構成部品（集積回路４１、抵抗４２，４３，４４、及びコンデンサ４５，４６等）のばらつき等によって、誤差が生じやすい。
【００５１】
しかしながら、本実施の形態に係る携帯型プリンター１では、以下（２ａ）〜（２ｂ）の処理をＣＰＵ１２が行っている。つまり、（２ａ）本実施の形態に係る携帯型プリンター１のアイドル状態の継続時間が第１設定時間Ｔｓ１に到達する直前の所定時間Ｔａ以内において（Ｓ５：ＹＥＳ）、本実施の形態に係る携帯型プリンター１のアイドル状態が継続していれば、発振回路３２からのパルス信号による割込入力がある毎に当該割込入力時刻Ｔ（Ｎ）がマイクロコントローラ１１の内蔵タイマ１５から取得されるとともに（Ｓ９，Ｓ２１４）、割込入力回数Ｎがカウントされ（Ｓ９，Ｓ２１３）、（２ｂ）本実施の形態に係る携帯型プリンター１のアイドル状態の継続時間が第１設定時間Ｔｓ１に到達したときに（Ｓ４：ＹＥＳ）、割込入力回数Ｎが２回以上であれば、割込入力時刻Ｔ（Ｎ）の各々と割込入力回数Ｎとに基づいて算出される割込入力間隔の平均時間Ｍを発振回路３２の所定間隔Ｔｙｐの時間として前記（１ｂ）で使用されるようにして、スリープカウント値Ｓｃを算出している（Ｓ８，Ｓ１０２）。
【００５２】
すなわち、本実施の形態に係る携帯型プリンター１では、上述したように、割込入力回数Ｎが１回であれば、発振回路３２が繰り返し発生させるパルス信号の所定間隔Ｔｙｐの時間に基づいて、ＢＴモジュール３１のスリープモードの継続時間を計測しているが（Ｓ８）、割込入力回数Ｎが２回以上であれば、本実施の形態に係る携帯型プリンター１についてアイドル状態の継続時間が第１設定時間Ｔｓ１に到達する直前の所定時間Ｔａ以内（Ｓ５：ＹＥＳ）においてＣＰＵ１２に対して実際に発振回路３２から割込入力があった割込入力時刻Ｔ（Ｎ）の各々と割込入力回数Ｎとに基づいて割込入力間隔の平均時間Ｍを算出し、その算出された割込入力間隔の平均時間Ｍを発振回路３２の所定間隔Ｔｙｐの時間として使用していることから（Ｓ８，Ｓ１０２）、発振回路３２が繰り返し発生させるパルス信号の所定間隔Ｔｙｐの時間に誤差が生じても補正されるので、ＢＴモジュール３１のスリープモードの継続時間を正確に計測することができる。
【００５３】
尚、本発明は上記実施の形態に限定されるものでなく、その趣旨を逸脱しない範囲で様々な変更が可能である。
例えば、発振回路３２の所定間隔Ｔｙｐの時間における誤差を考慮しないのであれば、割込入力回数Ｎが２回以上でも、割込入力間隔の平均時間Ｍを使用することなく、それに代わって、常に、発振回路３２の所定間隔Ｔｙｐの時間を使用して、スリープカウント値Ｓｃを算出してもよい（Ｓ８，Ｓ１０２）。
【００５４】
また、スリープカウント値Ｓｃの算出タイミングは、上記（１ａ）〜（１ｂ）の処理（Ｓ１１１〜Ｓ１１９）が繰り返し行われる以前である図６のＳ１０２に限るものでなく、例えば、本実施の形態に係る携帯型プリンター１のアイドル状態の継続時間が第１設定時間Ｔｓ１に到達したとき（Ｓ４：ＹＥＳ）から図６のＳ１０３の処理が行われる間のいずれかの時点で行ってもよく、あるいは、図６のＳ１１７が行われる度にスリープカウント値Ｓｃの算出を行ってもよい。
【００５５】
また、請求項２に係る発明において、割込入力間隔の平均時間Ｍの算出タイミングは、上記（２ｂ）の処理の時点に限るものでなく、スリープカウント値Ｓｃの算出タイミング以前であれば、例えば、上記（２ｂ）の処理以後から上記（１ａ）〜（１ｂ）の処理が繰り返し行われる以前のいずれかの時点であってもよいし、上記（１ｂ）の処理が繰り返し行われる時点であってもよい。具体的に言えば、割込入力間隔の平均時間Ｍの算出タイミングは、図６のＳ１０２に限るものでなく、スリープカウント値Ｓｃの算出タイミング以前であれば、例えば、本実施の形態に係る携帯型プリンター１のアイドル状態の継続時間が第１設定時間Ｔｓ１に到達したとき（Ｓ４：ＹＥＳ）から図６のＳ１０３の処理が行われる間のいずれかの時点で行ってもよく、あるいは、図６のＳ１１７が行われる度に割込入力間隔の平均時間Ｍの算出を行ってもよい。
【符号の説明】
【００５６】
１  携帯型プリンター
１１  マイクロコントローラ
１２  ＣＰＵ
１３  内蔵ＲＯＭ
１４  内蔵ＲＡＭ
１５  内蔵タイマ
２１  ＥＥＰＲＯＭ
２２  Ｆｌａｓｈ  ＲＯＭ
２３  ＳＤＲＡＭ
３１  ＢＴモジュール（通信モジュール）
３２  発振回路
Ｋ  カウント値
Ｍ  割込入力間隔の平均時間
Ｎ  割込入力回数
Ｓｃ  スリープカウント値
Ｔａ  所定時間
Ｔｓ１  第１設定時間
Ｔｓ２  第２設定時間
Ｔｙｐ  所定間隔
Ｔ（Ｎ）  割込入力時刻
【図１】
2011076206.tif 000003
【図２】
2011076206.tif 000004
【図３】
2011076206.tif 000005
【図４】
2011076206.tif 000006
【図５】
2011076206.tif 000007
【図６】
2011076206.tif 000008
【図７】
2011076206.tif 000009
【図８】
2011076206.tif 000010