(57)【要約】【課題】バーコードスキャナにおける運転モードとスリープモードの切替時におけるシステムタイマの計測精度を向上できるようにする。【解決手段】バーコードスキャナのＲＴＣ回路１９は、スリープモード及び運転モードで動作するBase回路１７からのクロック信号をカウントして所定のタイミングを生成し、このタイミングでシステムタイマ計測用の割り込みを要求する。これにより、例えば運転モードからスリープモードに移行してもカウントするクロック信号の周波数が３２ＫＨｚで変更されないので、システムタイマの計測精度を向上できるようになる。また、運転モードでは1msecでシステムタイマ計測用の割り込みを発生し、スリープモードでは20msecでシステムタイマ計測用の割り込みを発生する。これにより、スリープモードにおいてバッテリーの寿命を向上できる。【選択図】図２
2011059828.tif 000002
【特許請求の範囲】
【請求項１】
一部の機能を停止して消費電力を節約する状態をスリープモードとし、略全ての機能が動作可能な状態を運転モードとしたとき、
前記スリープモード及び前記運転モードで動作する基準クロック生成回路と、
前記基準クロック生成回路から入力したクロック信号をカウントして所定のタイミングを生成し、前記タイミングでシステムタイマ計測用の割り込みを要求するクロック回路とを備えることを特徴とする光学的情報読取装置。
【請求項２】
前記クロック回路は、リアルタイムクロックとして機能することを特徴とする請求項１に記載の光学的情報読取装置。
【請求項３】
前記スリープモードでは、前記運転モードよりも遅いタイミングで前記システムタイマ計測用の割り込みを発生することを特徴とする請求項１に記載の光学的情報読取装置。
【請求項４】
コード記号のような光反射率の異なる部分で構成される読取対象の情報を読み取る光学的情報読取装置を制御する方法であって、
前記光学的情報読取装置は、
一部の機能を停止して消費電力を節約する状態をスリープモードとし、略全ての機能が動作可能な状態を運転モードとしたとき、
前記スリープモード及び前記運転モードで動作する基準クロック生成回路によりクロック信号を生成するステップと、
前記クロック信号をカウントして所定のタイミングを生成するステップと、
前記タイミングでシステムタイマ計測用の割り込みを要求するステップと、
を有することを特徴とする光学的情報読取装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コード記号のような光反射率の異なる部分で構成される読取対象の情報を読み取る光学的情報読取装置およびその制御方法に関する。
【背景技術】
【０００２】
従来、商品の在庫管理及び販売管理等において、ホストコンピュータから商品情報を送受信すると共に、商品に貼付されたバーコード・二次元コード等のコード記号を読み取り、液晶ディスプレイにそれらの情報を表示し管理する情報端末が多く用いられている。それらは、ハンディターミナルと呼ばれ、作業者が持ち歩き、各商品棚から情報を収集したり、他の作業者と情報を確認しあったりすることができ非常に便利なものである。
【０００３】
しかし、その反面、機能が多様化し、その操作をするために消費電力が大きくなってしまう。ハンディターミナルでは、充電池を用いるので一台で使用する電力は限られている。そのため、なるべく消費電力を節約するようにいろいろな工夫が施されている。
【０００４】
例えば、特許文献１には、バーコード等を読み取る携帯型情報読取装置が開示されている。この携帯型情報読取装置によれば、電池を２つ備え、通常は１つの電池から電力を供給するが、高速読み取りなど大量に電力を使用する場合は、２つの電池から電力を供給するように切換を行うものである。これにより、特許文献１は、消費電力を抑制しながら、読み取りの高速処理等が必要な場合には、要求される電圧や電流の条件で電力を供給することができるようになる。
【０００５】
また、特許文献２にはバーコードリーダが開示されている。このバーコードリーダによれば、周囲照度を検出する照度検出手段を備え、使用場所の明るさによってバックライトやＬＥＤの明るさを制御するものである。このように、特許文献１,２によれば、消費電力を削減してバッテリーの寿命を長くするようにしている。
【０００６】
図５Ａ及び図５Ｂは、消費電力を節約する機能の一例として、従来例に係るハンディターミナルの運転モードおよびスリープ（sleep）モードの動作例を示す図である。図５Ａは、全ての機能が動作可能な状態である運転モードにおける動作であり、図５Ｂは、一部の機能を停止して消費電力を節約する状態であるスリープモードにおける動作である。図５Ａに示すＯＳＣ（oscillator）１５は発振して一定のクロック信号をＰＬＬ（Phase Locked Loop）回路１６に出力する。例えば、ＯＳＣ１５は、４ＭＨｚのクロック信号をＰＬＬ回路１６に出力する。
【０００７】
ＰＬＬ回路１６は、ＯＳＣ１５から入力したクロック信号を逓倍してタイマ１８に出力する。例えば、ＰＬＬ回路１６は、ＯＳＣ１５から入力した４ＭＨｚのクロック信号を１２倍に逓倍して４８ＭＨｚのクロック信号をタイマ１８に出力する。この例で、タイマ１８のタイマレジスタは、1msecを生成するようにカウント値が設定されている。タイマ１８は、ＰＬＬ回路１６から４８ＭＨｚのクロック信号を入力し、このクロック信号とタイマレジスタの第１のカウント値とを比較して1msecのタイミングを生成する。
【０００８】
図５Ｂに示すハンディターミナルのスリープモードにおいて、ＰＬＬ回路１６は停止（ＯＦＦ）している。この場合、タイマ１８は、Base回路（基準クロック生成回路）１７から３２ＫＨｚのクロック信号を入力し、このクロック信号とタイマレジスタの第２のカウント値とを比較して1msecのタイミングを生成する。タイマ１８により生成された1msecのタイマの割り込みの累積で、システムタイマの計測が実施される。
【０００９】
この例で、運転モードからスリープモードに切り替えたときに、タイマ１８を動作させるクロック信号の周波数は４８ＭＨｚから３２ＫＨｚに変更される。これは、タイマ１８が、運転モードではＰＬＬ回路１６からクロック信号を入力して1msecのタイミングを生成し、スリープモードではBase回路１７からクロック信号を入力して1msecのタイミングを生成するからである。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００６−２８５５３９号公報
【特許文献２】特開２００８−２８７６４７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
ところで、タイマ１８は、運転モードからスリープモードへの切替時に、ＰＬＬ回路１６がＯＮからＯＦＦに変更されて動作周波数が４８ＭＨｚから３２ＫＨｚに変更され、動作周波数の変更時に1msecの計測方法が変わる。ＰＬＬ回路１６がＯＮからＯＦＦに変更されるタイミングは一定ではないので、スリープモード切替時に誤差が生じる問題がある。同様に、スリープモードから運転モードに切り替える際に、ＰＬＬ回路１６がＯＦＦからＯＮに変更されて動作周波数が３２ＫＨｚから４８ＭＨｚに変更され、動作周波数の変更時に1msecの計測方法が変わる。ＰＬＬ回路１６がＯＦＦからＯＮに変更されるタイミングは一定ではないので、運転モード切替時に誤差が生じる問題がある。このように誤差が生じると、システムタイマの計測に影響し、その精度が極端に低下する。
【００１２】
そこで、本発明はこのような従来例に係る課題を解決したものであって、モード切替時におけるシステムタイマの計測精度を向上できるようにした光学的情報読取装置およびその制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決するために、本発明に係る光学的情報読取装置は、一部の機能を停止して消費電力を節約する状態をスリープモードとし、略全ての機能が動作可能な状態を運転モードとしたとき、前記スリープモード及び前記運転モードで動作する基準クロック生成回路と、前記基準クロック生成回路から入力したクロック信号をカウントして所定のタイミングを生成し、前記タイミングでシステムタイマ計測用の割り込みを要求するクロック回路とを備えるものである。
【００１４】
また、上述した課題を解決するために、本発明に係る光学的情報読取装置の制御方法は、コード記号のような光反射率の異なる部分で構成される読取対象の情報を読み取る光学的情報読取装置を制御する方法であって、前記光学的情報読取装置は、一部の機能を停止して消費電力を節約する状態をスリープモードとし、略全ての機能が動作可能な状態を運転モードとしたとき、前記スリープモード及び前記運転モードで動作する基準クロック生成回路によりクロック信号を生成するステップと、前記クロック信号をカウントして所定のタイミングを生成するステップと、前記タイミングでシステムタイマ計測用の割り込みを要求するステップとを有するものである。
【００１５】
本発明によれば、スリープモード及び運転モードで動作する基準クロック生成回路によりクロック信号を生成し、スリープモード及び運転モードにおいて、基準クロック生成回路により生成されたクロック信号をカウントして所定のタイミングを生成する。生成されたタイミングでシステムタイマ計測用の割り込みを要求する。このように、スリープモード及び運転モードにおいて、カウントするクロック信号の周波数が同一なので、例えば運転モードからスリープモードに移行してもシステムタイマの計測に誤差が生じない。
【発明の効果】
【００１６】
本発明に係る光学的情報読取装置およびその制御方法によれば、スリープモード及び運転モードで動作する基準クロック生成回路からのクロック信号をカウントして所定のタイミングを生成し、このタイミングでシステムタイマ計測用の割り込みを要求する。
【００１７】
これにより、例えば運転モードからスリープモードに移行してもカウントするクロック信号の周波数が変更されないので、システムタイマの計測精度を向上できるようになる。
【図面の簡単な説明】
【００１８】
【図１】バーコードスキャナ１００の構成例を示すブロック図である。
【図２】Ａは略全ての機能が動作可能な状態である運転モードにおける動作であり、Ｂは一部の機能を停止して消費電力を節約する状態であるスリープモードにおける動作である。
【図３】スリープモードにおけるバーコードスキャナ１００の動作例を示すフローチャートである。
【図４】バーコードスキャナ２００の構成例を示すブロック図である。
【図５】ＡおよびＢは、従来例に係るハンディターミナルの運転モードおよびスリープモードの動作例を示す図である。
【発明を実施するための形態】
【００１９】
続いて、図面を参照しながら本発明に係る光学的情報読取装置およびその制御方法を実施するための形態について説明する。本発明は、スリープモード及び運転モードで同一周波数のクロック信号を用いて所定のタイミングを生成し、このタイミングでシステムタイマ計測用の割り込みを要求することで、システムタイマの計測精度を向上できるようにしたものである。
【００２０】
図１に示すバーコードスキャナ１００は光学的情報読取装置の一例であり、バッテリー（充電電池）によって駆動する。バーコードスキャナ１００は、レーザ光源１、光学部２、信号処理回路３、ＣＰＵ４、ＲＡＭ（Random Access Memory）８、ＲＯＭ（Read Only Member）９、キーボード１０、ディスプレイ１１、スイッチ１２、電源１３、電源制御回路１４、ＯＳＣ（oscillator）１５、ＰＬＬ（Phase Locked Loop）回路１６及びＲＴＣ（Real Time Clock）回路１９を備えている。
【００２１】
スイッチ１２は、バーコードスキャナ１００の電源１３のＯＮ／ＯＦＦを切り替える。バーコードスキャナ１００は運転モードとスリープモードを備えている。スリープモードは一部の機能を停止して消費電力を節約する状態であり、運転モードは略全ての機能が動作可能な状態である。例えば、各モードの切替方法は、キーボード１０のファンクションキー（不図示）によって切り替えられる。各モードの切替方法はこれに限らず、バーコードスキャナ１００の無操作時間が一定時間経過すると自動的にスリープモードに切り替わり、センサ検知によりスリープモードから運転モードに切り替えるように制御しても良い。
【００２２】
電源制御回路１４は電源１３からＣＰＵ４に供給する電源電圧を制御する。例えば、スリープモードでは、電源制御回路１４はＣＰＵ４の一部の機能を停止して消費電力を節約する。この例で、スリープモードでは、電源制御回路１４は、ＯＳＣ１５およびＰＬＬ回路１６に供給する電源電圧を停止する。
【００２３】
レーザ光源１は、光反射率の異なる部分で構成されるコード記号の一例であるバーコードに向けて光を照射する。例えばレーザ光源１は、その発光点からレーザ光線を光学部２の集光レンズ２ａに向けて発光する。集光レンズ２ａは、レーザ光源１から発光されたレーザ光線を集光する。集光レンズ２ａの後段にはスキャンミラー２ｂが配置されている。スキャンミラー２ｂは、集光レンズ２ａにより集光されたレーザ光線を偏向する。
【００２４】
バーコードスキャナ１００がバーコードに向けられた状態で、スキャンミラー２ｂにより偏向されたレーザ光線はバーコードに照射されて当該バーコードを走査する。結像レンズ２ｃは、バーコードから反射された反射光を入射して信号処理回路３の光電変換器３ａ上に反射光を結像させる。光電変換器３ａは、反射光を受光して強度に応じた電気信号に変換して二値化処理部３ｂに出力する。二値化処理部３ｂは、この電気信号を微分して二値化信号を求める。例えば、二値化処理部３ｂは電気信号の増幅ゲイン調整やノイズ処理などを行い、当該電気信号を微分して微分信号を求める。二値化処理部３ｂは、この微分信号からバーコードの黒バーと白バーの境界を示す変曲点を求め、この変曲点から二値化信号を求めてＣＰＵ４に出力する。
【００２５】
ＣＰＵ４は、二値化信号のエッジのタイミングで割り込みを発生してバーコードの幅長を求める。ＣＰＵ４は、求めたバーコードの幅長と閾値とを比較して太いバー／細いバーなどを判別してバーコードキャラクタへ変換する。
【００２６】
この例でＣＰＵ４は、割込コントローラ５及びタイマ６を備えている。割込コントローラ５は、二値化信号における立ち上がりエッジのタイミングで割り込みをタイマ６に対して発生する。タイマ６は、割り込み発生時に二値化信号のエッジ間隔（時間間隔）を求め、このエッジ間隔からバーコードの幅長を求める。
【００２７】
図１に示すＯＳＣ１５は発振して一定のクロック信号をＰＬＬ回路１６に出力する。例えば、ＯＳＣ１５は、４ＭＨｚのクロック信号をＰＬＬ回路１６に出力する。ＰＬＬ回路１６は、ＯＳＣ１５から入力したクロック信号を逓倍する。例えば、ＰＬＬ回路１６は、ＯＳＣ１５から入力した４ＭＨｚのクロック信号を１２倍に逓倍して４８ＭＨｚのクロック信号を生成する。ＣＰＵ４は、このＰＬＬ回路１６により生成された４８ＭＨｚのクロック信号で動作する。
【００２８】
Base回路１７（図２参照）は、スリープモード及び運転モードで動作する。ＲＴＣ回路１９はクロック回路の一例であり、リアルタイムクロックとして機能する。ＲＴＣ回路１９は、Base回路１７から入力したクロック信号をカウントして所定のタイミングを生成し、このタイミングでシステムタイマ計測用の割り込みを要求する。これにより、例えば運転モードからスリープモードに移行してもカウントするクロック信号の周波数が変更されないので、システムタイマの計測精度を向上できるようになる。なお、Base回路１７は基準クロック生成回路の一例である。
【００２９】
ＲＯＭ９は、バーコードスキャナ１００のリアルタイムＯＳ（例えばμＩＴｒｏｎ）などが格納され、ＣＰＵ４により参照される。リアルタイム処理の実行単位は、タスクとハンドラに大別される。タスクは、リアルタイムＯＳにより起動、中断、再開、終了が行われる。一方、ハンドラは、ＣＰＵ４内外で発生する各種イベントによりＯＳを介さずに起動されるプログラム単位である。ＣＰＵ４は、割り込み発生を検出すると実行状態を割り込み処理実行状態に切り換え、ＣＰＵ４に登録されている割り込みハンドラを実行する。ＯＳは割り込みハンドラの実行制御が不可能であるから、ＣＰＵ４の通常実行状態が適用されるタスクよりも割り込みハンドラの優先順位が高い。
【００３０】
ＲＡＭ８はＣＰＵ４のワークメモリとして使用される。キーボード１０には、操作者から様々な指示が入力される。ディスプレイ１１は、バーコードスキャナ１００の動作状態や操作者の指示などを写し出す。
【００３１】
続いて、バーコードスキャナ１００の動作例について説明する。この例で、運転モードにおいて、ＲＴＣ回路１９は、Base回路１７（図２参照）から入力したクロック信号をカウントして所定のタイミング（例えば1msec）を生成し、このタイミングでシステムタイマ計測用の割り込みを割込コントローラ５に要求する。割込コントローラ５は、このシステムタイマ計測用の割り込み要求を受け付けるとＣＰＵ４に対して割り込みを発生する。
【００３２】
運転モードの状態で、操作者によりバーコードスキャナ１００をバーコードに向けて不図示のトリガスイッチがＯＮされると、バーコードスキャナ１００のレーザ光源１の発光点からレーザ光線が発光される。このレーザ光線は光学部２の集光レンズ２ａにより集光される。集光されたレーザ光線は、スキャンミラー２ｂにより偏向されてバーコードに照射されて当該バーコードを走査する。
【００３３】
バーコードから光が反射され、反射された反射光は結像レンズ２ｃにより光電変換器３ａ上に結像される。光電変換器３ａ上に結像された反射光は、光電変換器３ａにより強度に応じた電気信号に変換される。この電気信号が二値化処理部３ｂにより微分されて二値化信号が求められる。割込コントローラ５は、この二値化信号におけるエッジのタイミングでタイマ６にレーザ割り込みを発生する。タイマ６は、レーザ割り込み発生時に二値化信号のエッジ間隔（時間間隔）を求め、このエッジ間隔からバーコードの幅長を求める。
【００３４】
不図示のトリガスイッチがＯＦＦされると、レーザ光源１から発光されるレーザ光線が停止してバーコードのスキャン処理を停止する。
【００３５】
キーボード１０のファンクションキー（不図示）によりスリープモードに切り替えられると、電源制御回路１４はＣＰＵ４の一部の機能を停止して消費電力を節約する。この例で、スリープモードでは、電源制御回路１４は、ＯＳＣ１５およびＰＬＬ回路１６に供給する電源電圧を停止し、ＲＴＣ回路１９には電源電圧を供給する。
【００３６】
このスリープモードにおいて、ＲＴＣ回路１９は、Base回路１７（図２参照）から入力したクロック信号をカウントして所定のタイミングを生成し、このタイミングでシステムタイマ計測用の割り込みを割込コントローラ５に要求する。例えばスリープモードでは、運転モードよりも遅いタイミング（例えば20msec）でシステムタイマ計測用の割り込みを発生する。割込コントローラ５は、このシステムタイマ計測用の割り込み要求を受け付けるとＣＰＵ４に対して割り込みを発生する。ＣＰＵ４は、割り込みハンドラを起動してシステムタイマを計測する。
【００３７】
このように、本発明は、スリープモードおよび運転モードで同一周波数で駆動するＲＴＣ回路１９を使用してシステムタイマを計測する。これにより、運転モードからスリープモードに移行してもシステムタイマを計測するクロック信号の周波数が変更されないので、システムタイマの計測精度を向上できるようになる。また、スリープモードにおいて、20msecのタイミングでシステムタイマ計測用の割り込みを発生してスリープモードを長く保つので、1msecのタイミングでシステムタイマ計測用の割り込みを発生する場合に比べてバッテリーの寿命を向上できる。
【００３８】
続いて、図２Ａ及び図２Ｂを参照して運転モードおよびスリープモードにおけるシステムタイマ計測処理について説明する。図２Ａは、略全ての機能が動作可能な状態である運転モードにおける動作である。運転モードにおいて、図２Ａに示すＯＳＣ１５は発振して一定のクロック信号、例えば４ＭＨｚのクロック信号をＰＬＬ回路１６に出力する。ＰＬＬ回路１６は、ＯＳＣ１５から入力したクロック信号を例えば１２倍に逓倍して４８ＭＨｚのクロック信号を生成する。この４８ＭＨｚのクロック信号は、ＣＰＵ４の動作クロックとして使用される。
【００３９】
図２Ａに示すBase回路１７は、ＲＴＣ回路１９に３２ＫＨｚのクロック信号を出力する。ＲＴＣ回路１９は、Base回路１７から入力したクロック信号をカウントして1msecタイミングを生成し、このタイミングでシステムタイマ計測用の割り込みを割込コントローラ５（図１参照）に要求する。この例で、通常、１sec毎に割り込みを発生させるＲＴＣ回路１９の機能を１０００倍で動作させるために、ＲＴＣ回路１９のレジスタには1msec毎に割り込みを発生させる第１のカウント値が設定されている。ＲＴＣ回路１９は、Base回路１７から３２ＫＨｚのクロック信号を入力し、このクロック信号とレジスタの第１のカウント値とを比較して1msecのタイミングを生成する。ＲＴＣ回路１９により生成された1msecの割り込みの累積で、システムタイマの計測が実施される。
【００４０】
図２Ｂは、一部の機能を停止して消費電力を節約する状態であるスリープモードにおける動作である。スリープモードにおいて、図２Ｂに示すＯＳＣ１５およびＰＬＬ回路１６は停止し、Base回路１７およびＲＴＣ回路１９は駆動している。スリープモードにおいてＲＴＣ回路１９のレジスタには、20msec毎に割り込みを発生させる第２のカウント値が設定されている。ＲＴＣ回路１９は、Base回路１７から３２ＫＨｚのクロック信号を入力し、このクロック信号とレジスタの第２のカウント値とを比較して20msecのタイミングで割り込みを要求する。ＲＴＣ回路１９により生成された20msecのタイマの割り込みの累積で、システムタイマの計測が実施される。
【００４１】
この例で、運転モードからスリープモードに切り替えたときに、ＲＴＣ回路１９を動作させるクロック信号の周波数は３２ＫＨｚに統一され、図５Ａおよび図５Ｂに示したようにクロック信号の周波数が４８ＭＨｚから３２ＫＨｚに変更されない。これは、ＲＴＣ回路１９が、運転モードおよびスリープモードで同一のBase回路１７からクロック信号を入力しているからである。このように、運転モードからスリープモードに移行してもカウントするクロック信号の周波数が変更されないので、システムタイマの計測精度を向上できるようになる。また、スリープモードにおいて、20msecのタイミングでシステムタイマ計測用の割り込みを発生するので、1msecのタイミングでシステムタイマ計測用の割り込みを発生する場合に比べてバッテリーの寿命を向上できる。
【００４２】
続いて、図３を参照してスリープモードにおけるバーコードスキャナ１００の動作例について説明する。この例では、キーボード１０のファンクションキー（不図示）によりスリープモードに切り替えられる。スリープモードでは、図２Ｂに示すＯＳＣ１５およびＰＬＬ回路１６は停止し、Base回路１７およびＲＴＣ回路１９は駆動する。
【００４３】
スリープモードに切り替わると、図３に示すステップＳＴ１で、ＣＰＵ４は、20msec毎に割り込みを発生させる第２のカウント値をＲＴＣ回路１９のレジスタに設定してステップＳＴ２に移行する。
【００４４】
ステップＳＴ２で、電源制御回路１４は、ＯＳＣ１５およびＰＬＬ回路１６に供給する電源電圧を停止してステップＳＴ３に移行する。ステップＳＴ３で、ＯＳＣ１５およびＰＬＬ回路１６が停止し、Base回路１７およびＲＴＣ回路１９が駆動しているスリープモードが設定された状態となる。続いてステップＳＴ４に移行する。
【００４５】
ステップＳＴ４で、ＲＴＣ回路１９は、Base回路１７から３２ＫＨｚのクロック信号を入力し、このクロック信号とレジスタの第２のカウント値とを比較して20msecのタイミングで割り込みを割込コントローラ５に要求する。割込コントローラ５は、ＲＴＣ回路１９から割り込みの要求を受けてＣＰＵ４に対して割り込みを発生してステップＳＴ５に移行する。
【００４６】
ステップＳＴ５で、電源制御回路１４は、ＯＳＣ１５およびＰＬＬ回路１６に電源電圧を供給してステップＳＴ６に移行する。ステップＳＴ６で、ＣＰＵ４は、割込コントローラ５から入力した割り込みに基づいて割り込みハンドラを起動してシステムタイマを計測してステップＳＴ７に移行する。
【００４７】
ステップＳＴ７で、ＣＰＵ４は割り込みの原因を判定し、割り込みの原因がＲＴＣ割り込みの場合、ステップＳＴ２に戻り、スリープモードを維持すると共に20msec毎に割り込みを発生してシステムタイマを計測する。また、割り込みの原因がＲＴＣ割り込み以外の場合、ステップＳＴ８に移行する。ステップＳＴ８で、ＣＰＵ４は、1msec毎に割り込みを発生させる第１のカウント値をＲＴＣ回路１９のレジスタに設定してスリープモードの解除となる。
【００４８】
このように、本発明に係るバーコードスキャナ１００およびその制御方法によれば、ＲＴＣ回路１９は、スリープモード及び運転モードで動作するBase回路１７からのクロック信号をカウントして所定のタイミングを生成し、このタイミングでシステムタイマ計測用の割り込みを要求する。これにより、例えば運転モードからスリープモードに移行してもカウントするクロック信号の周波数が変更されないので、システムタイマの計測精度を向上できるようになる。
【００４９】
また、運転モードでは1msecでシステムタイマ計測用の割り込みを発生し、スリープモードでは20msecでシステムタイマ計測用の割り込みを発生する。これにより、スリープモードにおいてバッテリーの寿命を向上できる。例えば、スリープモードにおいて1msecでシステムタイマ計測用の割り込みを発生するとバッテリーの寿命が約７０時間であったが、スリープモードにおいて20msecでシステムタイマ計測用の割り込みを発生するとバッテリーの寿命が約１００時間に向上した。
【００５０】
なお、実施例では、μの仕様に基づいて説明したが、適用するリアルタイムＯＳはμＩＴｒｏｎに限定されるものではない。また、実施例では、走査ミラーを使用した光学部を用いたが、ＣＭＯＳセンサなどの固体撮像素子でコード記号を撮像するカメラモジュールを組み込んだ装置であっても、同様の効果が得られる。
【００５１】
例えば図４に示すバーコードスキャナ２００はＣＭＯＳセンサを備えた光学的情報読取装置の一例であり、レンズ２１、ＣＭＯＳセンサ２２、信号処理回路２３、ＣＰＵ４、ＲＡＭ８、ＲＯＭ９、キーボード１０、ディスプレイ１１、スイッチ１２、電源１３、電源制御回路１４、ＯＳＣ１５を備えている。なお、図１に示したバーコードスキャナ１００と同じ構成要素には同一符号を付し、その詳細な説明は省略する。
【００５２】
図４に示すレンズ２１は、不図示のＬＥＤなどにより照射されたバーコードの反射光をＣＭＯＳセンサ２２上に結像する。ＣＭＯＳセンサ２２は、この反射光を電気信号に変換して信号処理回路２３に出力する。信号処理回路２３は、電気信号を二値化処理して二値化信号をＣＰＵ４に出力する。ＣＰＵ４は、二値化信号のエッジのタイミングで割り込みを発生してバーコードの幅長を求める。ＣＰＵ４は、求めたバーコードの幅長と閾値とを比較して太いバー／細いバーなどを判別してバーコードキャラクタへ変換する。本発明は、このようなＣＭＯＳセンサなどの固体撮像素子でコード記号を撮像するカメラモジュールを組み込んだ装置であっても、同様の効果が得られる。
【産業上の利用可能性】
【００５３】
本発明は、コード記号のような光反射率の異なる部分で構成される読取対象の情報を読み取る光学的情報読取装置に適用して極めて好適である。
【符号の説明】
【００５４】
４・・・ＣＰＵ、５・・・割込コントローラ、１７・・・Base回路（基準クロック生成回路）、１９・・・ＲＴＣ回路（クロック回路）、１００・・・バーコードスキャナ（光学的情報読取装置）
【図１】
2011059828.tif 000003
【図２】
2011059828.tif 000004
【図３】
2011059828.tif 000005
【図４】
2011059828.tif 000006
【図５】
2011059828.tif 000007