(58)【調査した分野】(Int.Cl.,DB名)
前記オートスキャンロジックは、前記第2の所定長さの時間を越えるときに自動的スキャンを開始するように構成された探り出しタイマーを含む、請求項1に記載のタッチサブシステム。
前記オートスキャンロジックは、第3の所定長さの時間を越えるときに校正スキャンを開始するように構成された校正タイマーを含み、この校正スキャンは、1つ又は複数の行をスキャニングし、そして1つ又は複数の行に存在するドリフトについて校正することを含む、請求項1に記載のタッチサブシステム。
前記オートスキャンロジックは、センサパネルプロセッサをクロックするシステムクロックを制御するように構成されたクロックマネージャーを含む、請求項1に記載のタッチサブシステム。
前記クロックマネージャーは、前記センサパネルにおいてタッチ事象が検出されることなく第1の所定長さの時間を越えた後に、システムクロックをディスエイブルする、請求項4に記載のタッチサブシステム。
前記オートスキャンロジックは、第2の所定長さの時間が経過する前に、センサパネルに作動的に接続された1つ又は複数のドライバをアクチベートするように構成された電力管理タイマーを更に備えた、請求項1に記載のタッチサブシステム。
前記オートスキャンロジックは、前記センサパネル上で事象が検出されたときに、センサパネルプロセッサをアクチベートするように構成された、請求項1に記載のタッチサブシステム。
前記センサパネル上で事象が検出されずに第1の所定長さの時間が経過した後に前記センサパネルプロセッサをディスエイブルするステップを更に備えた、請求項8に記載の方法。
前記オートスキャンロジック回路は、前記第1の所定長さの時間にわたって前記センサパネル上で事象が感知されないときにオートスキャンモードに入る、請求項17に記載のデジタルオーディオプレーヤ。
前記オートスキャンロジックは、探り出しタイマーを備え、この探り出しタイマーは、これが第2の所定長さの時間に到達したときに前記パネルに生じる事象の有無を判定するために前記センサパネルのスキャンを開始する、請求項17に記載のデジタルオーディオプレーヤ。
前記オートスキャンロジックは、校正タイマーを更に備え、この校正タイマーは、これが前記第2の所定長さの時間より長い第3の所定長さの時間に到達したときにスキャンを自動的に開始する、請求項19に記載のデジタルオーディオプレーヤ。
前記オートスキャンロジックは、電力管理タイマーを備え、この電力管理タイマーは、前記探り出しタイマーが前記第2の所定長さの時間に到達する前に1つ又は複数の電圧ドライバへスタートアップ信号を送信する、請求項17に記載のデジタルオーディオプレーヤ。
前記オートスキャンロジックは、前記移動電話に組み込まれた1つ又は複数のクロックをディスエイブルし及びイネーブルすることのできるクロックマネージャーを備えた、請求項17に記載のデジタルオーディオプレーヤ。
【発明を実施するための形態】
【0011】
好ましい実施形態の以下の説明において、本発明が具現化される特定の実施形態が示された添付図面を参照する。他の実施形態が使用されてもよく、又、本発明の好ましい実施形態の範囲から逸脱せずに構造上の変更がなされ得ることを理解されたい。
【0012】
マルチタッチパネルの複数のタッチセンサは、コンピューティングシステムが、マルチタッチ事象(指又は他の物体がほぼ同時に異なる位置でタッチ感知表面にタッチする)を感知し、そしてタッチセンサ装置で従来得られなかった付加的な機能を遂行することができるようにする。
【0013】
ここでは、マルチタッチパネルの容量性タッチセンサに関して幾つかの実施形態を説明するが、本発明の実施形態は、これに限定されるものではなく、一般的には、抵抗性タッチセンサ、表面音波タッチセンサ、電磁タッチセンサ、近フィールド映像タッチセンサ、等を含むいかなる形式のマルチタッチセンサ技術の使用にも適用できることを理解されたい。更に、マルチタッチパネルのタッチセンサは、ここでは、行及び列を有するタッチセンサの直交アレーに関して説明するが、本発明の実施形態は、直交アレーに限定されず、一般的には、対角線、同心円、並びに三次元及びランダム方向を含めて、多数の次元及び方向に配列されたタッチセンサにも適用できることが理解されよう。
【0014】
一般的に、マルチタッチパネルは、同時に又はほぼ同時に生じる複数のタッチ(タッチ事象又は接触点)を検出し、そしてそれらの位置を識別し追跡することができる。マルチタッチパネルは、例えば、2004年5月6日に出願された“Multipoint Touchscreen”と題する本出願人の同時係争中の米国特許出願第10/842,862号で、2006年5月11日に米国出願公告第2006/0097991号として公告されたものに説明されており、その内容は、参考としてここに援用される。
【0015】
図1は、一実施形態によるタッチセンサを使用するコンピューティングシステム100を示す。コンピューティングシステム100は、パーソナルデジタルアシスタント(PDA)、デジタル音楽及び/又はビデオプレーヤ及び移動電話を含めて、デスクトップ、ラップトップ、タブレット又はハンドヘルドのようなコンピューティング装置に対応する。
又、コンピューティングシステム100は、情報キオスク、自動金銭預け払い機(ATM)、ポイントオブセールマシン(POS)、工業用マシン、ゲームマシン、アーケードマシン、自動販売機、エアラインeチケットターミナル、レストラン予約ターミナル、顧客サービスステーション、図書館ターミナル、学習装置、等の公共コンピュータシステムにも対応する。
【0016】
コンピューティングシステム100は、1つ以上のマルチタッチパネルプロセッサ102及び周辺装置104、並びにマルチタッチサブシステム106を備えている。1つ以上のプロセッサ102は、ARM968であるか、又は同様の機能及び能力を持つ他のプロセッサである。しかしながら、他の実施形態では、マルチタッチパネルプロセッサの機能は、ステートマシンのような専用ロジックにより実施される。周辺装置104は、これに限定されないが、ランダムアクセスメモリ(RAM)又は他の形式のメモリ又は記憶装置、ウオッチドッグタイマー、等を含む。マルチタッチサブシステム106は、これに限定されないが、1つ以上のアナログチャンネル108、チャンネルスキャンロジック110及びドライバロジック114を含む。チャンネルスキャンロジック110は、RAM112にアクセスし、アナログチャンネルからデータを自律的に読み取り、そしてアナログチャンネルの制御を与える。この制御は、アナログチャンネル108に対してマルチタッチパネル124のカラムをマルチプレクスすることを含む。更に、チャンネルスキャンロジック110は、マルチタッチパネル124の行に選択的に付与されるドライバロジック及び刺激信号を制御することができる。ある実施形態では、マルチタッチサブシステム106は、単一の特定用途向け集積回路(ASIC)に一体化される。
【0017】
ドライバロジック114は、複数のマルチタッチサブシステム出力116を与え、そして高電圧ドライバを駆動する独占的インターフェイスをなすことができ、高電圧ドライバは、デコーダ120と、それに続くレベルシフタ及びドライバ段118で構成されるが、レベルシフト機能は、デコーダ機能の前で行われてもよい。レベルシフタ及びドライバ118は、低電圧レベル(例えば、CMOSレベル)から高電圧レベルへのレベルシフトを与え、ノイズ減少の目的で良好な信号対雑音比(S/N)を与えることができる。デコーダ120は、ドライブインターフェイス信号を、N個の出力のうちの1つの出力へデコードすることができ、ここで、Nは、パネルにおける最大の行数である。デコーダ120は、高電圧ドライバとマルチタッチパネル124との間に必要な駆動ラインの数を減少するのに使用できる。各マルチタッチパネル行入力122は、マルチタッチパネル124における1つ以上の行を駆動することができる。ある実施形態では、ドライバ118及びデコーダ120を単一のASICへ一体化することができる。しかしながら、他の実施形態では、ドライバ118及びデコーダ120をドライバロジック114へ一体化することができ、そして更に別の実施形態では、ドライバ118及びデコーダ120を完全に排除することができる。
【0018】
マルチタッチパネル124は、ある実施形態では、複数の行トレース又は駆動ライン、及び複数の列トレース又は感知ラインを有する容量性感知媒体を含むことができるが、他の感知媒体を使用してもよい。行及び列トレースは、インジウムスズ酸化物(ITO)又はアンチモンスズ酸化物(ATO)のような透明な導電性媒体から形成できるが、他の透明及び非透明の材料、例えば、銅を使用することもできる。ある実施形態では、行及び列トレースは、誘電体材料の両側に形成することができ、そして互いに垂直にすることができるが、他の実施形態では、他の非直交方向も可能である。例えば、極座標系では、感知ラインは同心円であり、駆動ラインは半径方向に延びるラインである(その逆でもよい)。それ故、ここで使用する「行」及び「列」、「第1次元」及び「第2次元」、又は「第1軸」及び「第2軸」は、直交グリッドを含むだけでなく、第1及び第2次元を有する他の幾何学的構成の交差トレース(例えば、極座標配列の同心円及び半径方向線)も含むことが意図されることを理解されたい。又、他の実施形態では、行及び列は、基板の片面に形成することもできるし、或いは誘電体材料で分離された2つの個別の基板上に形成することもできることに注意されたい。ある実施形態では、誘電体材料は、ガラスのような透明なものでもよいし、マイラーのような他の材料で形成することもできる。付加的な誘電体カバー層を行又は列トレースの上に配置して、構造を強化すると共に、全アッセンブリをダメージから保護することができる。
【0019】
トレースが互いに上下を通過する(が、互いに直接的に電気的接触はしない)トレースの「交差点」において、トレースは、本質的に2つの電極を形成する(が、3つ以上のトレースが交差することもできる)。行及び列トレースの各交差点は、容量性感知ノードを表し、そして画素(ピクセル)126として見ることができ、これは、マルチタッチパネル124がタッチの「映像」を捕獲するものとして見られるときに特に有用である。(換言すれば、マルチタッチパネルの各タッチセンサにおいてタッチ事象が検出されたかどうかマルチタッチサブシステム106が判定した後に、タッチ事象が発生したマルチタッチパネルのタッチセンサのパターンをタッチの「映像」(例えば、指がパネルにタッチするパターン)として見ることができる。)行及び列電極間のキャパシタンスは、所与の行がDCに保持されるときには全ての列における漂遊キャパシタンスとして現れ、そして所与の行がAC信号で刺激されるときには相互キャパシタンスCsigとして現れる。マルチタッチパネル又はその付近での指又は他のオブジェクトの存在は、Csigに対する変化を測定することにより検出できる。マルチタッチパネル124の列は、マルチタッチサブシステム106における1つ以上のアナログチャンネル108(ここでは、事象検出及び復調回路とも称される)を駆動することができる。ある実施形態では、各列は、1つの専用のアナログチャンネル108に結合される。しかしながら、他の実施形態では、列は、アナログスイッチを経て少数のアナログチャンネル108に結合することができる。
【0020】
又、コンピューティングシステム100は、マルチタッチパネルプロセッサ102からの出力を受け取りそしてその出力に基づいてアクションを遂行するためのホストプロセッサ128も備え、このアクションは、カーソル又はポインタのようなオブジェクトを移動し、スクロール又はパンを行い、制御設定を調整し、ファイル又はドキュメントをオープンし、メニューを見、選択を行い、インストラクションを実行し、ホスト装置に接続された周辺装置を動作し、電話コールに応答し、電話コールを発信し、電話コールを終了し、ボリューム又はオーディオ設定を変更し、電話通信、例えば、アドレス、頻繁にダイヤルされる番号、受信したコール、逸したコールに関連した情報を記憶し、コンピュータ又はコンピュータネットワークへログオンし、コンピュータ又はコンピュータネットワークの限定エリアへの許可された個人のアクセスを許し、ユーザが好むコンピュータディスクトップの構成に関連したユーザプロフィールをロードし、ウェブコンテンツへのアクセスを許し、特定のプログラムを起動し、メッセージを暗号化又はデコードし、等々を含むが、これらに限定されない。又、ホストプロセッサ128は、マルチタッチパネルの処理に関連しない付加的なファンクションも遂行し、そしてプログラム記憶装置132及びディスプレイ装置130、例えば、装置のユーザにユーザインターフェイス(UI)を与えるためのLCDディスプレイ、に結合することができる。
【0021】
図2aは、容量性マルチタッチパネル200を例示している。
図2aは、行204及び列206のトレースの交差点に位置する各ピクセル202の漂遊キャパシタンスCstrayの存在を示す(が、図面を簡単にする目的で
図2には1つの列のCstrayしか示されていない)。
図2aは、行204及び列206が実質的に垂直であることを示すが、上述したように、そのように整列される必要はない。
図2aの例では、AC刺激Vstim214が1つの行に印加され、他の全ての行は、DCに接続される。この刺激は、交差点の相互キャパシタンスを通して列電極に電荷を注入させる。この電荷は、Qsig=Csig xVstmである。列206の各々は、1つ以上のアナログチャンネル(
図1のアナログチャンネル108を参照)に選択的に接続することができる。
【0022】
図2bは、定常(無タッチ)状態における例示的ピクセル202の側面図である。
図2bにおいて、誘電体210により分離された列206及び行204のトレース又は電極間の相互キャパシタンスの電界線208の電界は、行及び列電極間の信号キャパシタンスCsigを表し、刺激された行から列電極へ注入される電荷を止めることができる。Csigは、仮想接地点を参照するものであるから、漂遊キャパシタンスも形成する。例えば、列電極の合計漂遊キャパシタンスは、所与の列電極と全ての行電極との間の全信号キャパシタンスCsigの和である。Csigが例えば0.75pFであり、そして列電極が15個の行電極により交差されていると仮定すれば、その列電極の合計漂遊キャパシタンスは、少なくとも15x0.75pF=11.25pFとなる。しかしながら、実際には、合計漂遊キャパシタンスは、システム内のマルチタッチASIC又は他の漂遊キャパシタンスに対する列電極のトレース漂遊キャパシタンスのために、おそらく、より大きなものとなる。
【0023】
図2cは、動的(タッチ)状態における例示的ピクセル202の側面図である。
図2cにおいて、指212がピクセル202の付近に置かれている。指212は、信号周波数において低インピーダンス物体であり、経身体キャパシタンスCbodyに対するCA接地戻り路を表す。身体は、接地に対する自己キャパシタンスCbodyを有し、これは、とりわけ、身体のサイズ及び形状の関数である。指212が行電極と列電極との間のある程度の電界線208(誘電体を出て空気中を行電極の上へと進む縁電界)を遮断する場合に、これらの電界線が、指及び身体に本来あるキャパシタンス路を経て接地点へと分路し、その結果、定常信号キャパシタンスCsigがCsig_senceだけ減少される。換言すれば、身体及び指の合成キャパシタンスは、Csigを量ΔCsig(ここでは、Csig_senceとも称される)だけ減少するように働き、そして接地点への分路又は動的戻り路として働いて、ある程度の電界を遮断し、減少した正味信号キャパシタンスを生じさせることができる。ピクセルにおける信号キャパシタンスは、Csig−ΔCsigとなり、ここで、Csigは、静的(無タッチ)成分を表し、そしてΔCsigは、動的(タッチ)成分を表す。Csig−ΔCsigは、指や手のひらや他の物体で全ての電界を遮断することができず、特に、誘電体材料内に完全に留まる電界があるために、常に、非ゼロであることに注意されたい。更に、指でマルチタッチパネルをより強く又はより完全に押すと、指が平らになる傾向があり、益々多くの電界を遮断し、従って、ΔCsigは、可変であり、指でパネルをいかに完全に押し付けたか(即ち、「無タッチ」から「全タッチ」までの範囲)を表すことを理解されたい。
【0024】
図2aを再び参照すると、上述したように、Vstim信号214をマルチタッチパネル200の行に印加し、指や手のひらや他の物体が存在するときに信号キャパシタンスの変化を検出することができる。Vstim信号214は、特定の周波数において1つ以上のパルス列216を含むことができ、各パルス列は、多数のパルスを含む。パルス列216は、方形波として示されているが、正弦波のような他の波形を使用することもできる。異なる周波数における複数のパルス列216をノイズ減少の目的で送信してノイズ源の影響を最小にすることができる。Vstim信号214は、本質的に、信号キャパシタンスCsigを経て行へ電荷を注入し、一度に1つの、マルチタッチパネル200の行にこの信号を印加する間に、他の全ての行をDCレベルに保持することができる。しかしながら、他の実施形態では、マルチタッチパネルを2つ以上の区分に分割し、Vstim信号214を各区分の1つの行に同時に印加し、そしてその領域区分の他の全ての行をDC電圧に保持してもよい。
【0025】
列に結合された各アナログチャンネルは、刺激されている行と、その行が接続された列との間の相互キャパシタンスを表す結果を与えることができる。特に、この相互キャパシタンスは、信号キャパシタンスCsigと、指や手のひらや他の身体部分又は物体の存在によるその信号キャパシタンスの変化Csig_senceとで構成される。アナログチャンネルにより与えられるこれら列の値は、1つの行が刺激される間に並列に与えられてもよいし、又は直列に与えられてもよい。列に対する信号キャパシタンスを表す全ての値が得られた場合には、マルチタッチパネル200の別の行を、他の全てをDC電圧に保持した状態で刺激することができ、そして列信号キャパシタンスの測定を繰り返すことができる。最終的に、Vstimが全ての行に印加され、そして全ての行における全ての列に対する信号キャパシタンス値が捕獲された(即ち、全マルチタッチパネル200が「スキャン」された)場合には、全マルチタッチパネル200に対する全ピクセル値の「スナップショット」を得ることができる。このスナップショットデータは、最初に、マルチタッチサブシステムにセーブされ、その後、ホストプロセッサのようなコンピューティングシステム内の他の装置により解釈するために転送することができる。複数のスナップショットが得られ、セーブされそしてコンピューティングシステムにより解釈されるので、複数のタッチを検出し、追跡し、そしてそれを使用して他の機能を遂行することができる。
【0026】
図3aは、アナログチャンネル又は事象検出及び復調回路300を例示している。マルチタッチサブシステムには、1つ以上のアナログチャンネル300を存在させることができる。マルチタッチパネルからの1つ以上の列を各アナログチャンネル300に接続することができる。各アナログチャンネル300は、仮想接地電荷増幅器302と、信号ミクサ304と、オフセット補償306と、整流器332と、減算器334と、アナログ/デジタルコンバータ(ADC)308とを備えることができる。又、
図3aは、入力刺激Vstimがマルチタッチパネルの行に印加され且つ指も手のひらも他の物体も存在しないときにアナログチャンネル300に接続されたマルチタッチパネルの列により貢献できる定常信号キャパシタンスCsigと、指、手のひら又は他の物体が存在するときに現れる動的信号キャパシタンスCsig−ΔCsigとを破線で示している。
【0027】
マルチタッチパネルの行に印加されるVstimは、方形波のバースト又はDC信号における他の非DCシグナリングとして発生することができるが、ある実施形態では、Vstimを表す方形波の前後に他の非DCシグナリングが続くようにしてもよい。Vstimが行に印加され、そしてアナログチャンネル300に接続された列に信号キャパシタンスが存在する場合には、電荷増幅器302の出力は、Vrefを中心とするパルス列310であり、定常状態におけるそのピーク・ピーク(p−p)振幅は、Vstimのp−p振幅の分数であり、この分数は、電荷増幅器302の利得に対応し、これは、信号キャパシタンスCsigと、前置増幅器フィードバックキャパシタンスCfbとの比に等しい。例えば、Vstimが18Vp−pパルスを含みそして電荷増幅器の利得が0.1である場合には、電荷増幅器の出力は、1.8Vp−pパルスとなる。この出力は、信号ミクサ304において、復調波形Fstim316と混合することができる。
【0028】
刺激信号は、方形波であるから、方形波の高調波を除去するために正弦波の復調波形を使用するのが好都合である。所与の刺激周波数においてミクサのストップバンドリップルを減少するために、ガウス整形された正弦波を使用するのが好都合である。復調波形は、刺激Vstimと同じ周波数を有し、ルックアップテーブルから合成することができ、いかなる形状の復調波形も発生することができる。ガウス整形された正弦波に加えて、ミクサのフィルタ特性を同調するように他の波形をプログラムすることもできる。ある実施形態では、Fstim316は、LUT312において異なるデジタル波形を選択するか、又は他のデジタルロジックを使用して波形を別様に発生することにより、周波数及び振幅を同調することができる。信号ミクサ304は、電荷増幅器の出力310からFstim316を減算することによりその出力を復調して、良好なノイズ除去を与えることができる。信号ミクサ304は、通過帯域以外の全ての周波数を除去し、通過帯域は、一例では、Fstimの周りの約±30kHzである。このノイズ除去は、敏感な(フェムトファラッドレベル)アナログチャンネル300と干渉し得るある特性周波数を各々有する802.11、ブルーツース、等の多数のノイズ源を伴うノイズの多い環境において有益である。信号ミクサへ送り込まれる信号の周波数は、同じ周波数をもつことができるので、信号ミクサは、同期整流器と考えることができ、信号ミクサの出力は、本質的に、整流された波形となる。
【0029】
次いで、オフセット補償306を信号ミクサの出力314に適用することができ、これは、静的Csigの作用を除去し、ΔCsigの作用のみを残して、結果324として現れるようにする。オフセット補償306は、オフセットミクサ330を使用して実施することができる。整流器332を使用してFstim316を整流しそしてオフセットミクサ330において整流器出力336をデジタル/アナログコンバータ(DAC)320からのアナログ電圧と混合することにより、オフセット補償出力322を発生することができる。DAC320は、アナログチャンネル300のダイナミックレンジを増加するように選択されたデジタル値に基づいてアナログ電圧を発生することができる。次いで、DAC320からのアナログ電圧に比例するオフセット補償出力322を、減算器334を使用して信号ミクサ出力314から減算して、減算器出力338を発生することができ、これは、刺激される行の容量性センサにタッチしたときに生じる信号キャパシタンスの変化ΔCsigを表すものである。減算器出力338は、次いで、積分され、ADC308によりデジタル値へ変換することができる。ある実施形態では、積分器及びADCの機能が合成され、ADC308は、シグマ−デルタADCのような積分ADCでよく、これは、多数の連続的デジタル値を加算してそれらを平均化し、結果324を発生することができる。
【0030】
図3bは、アナログチャンネルの入力にある電荷増幅器(仮想接地増幅器)302と、マルチタッチパネル(破線を参照)により貢献でき且つ電荷増幅器により見られるキャパシタンスとをより詳細に示している。上述したように、マルチタッチパネルの各ピクセルには固有の漂遊キャパシタンスCstrayが存在する。+(非反転)入力がVrefに結合された仮想接地増幅器302では、−(反転)入力もVrefへと駆動され、そしてDCオペレーティングポイントが確立される。それ故、どれほど多くのCsigが存在するかに関わらず、−入力は常にVrefへ駆動される。仮想接地増幅器302の特性のために、Cstrayに蓄積される電荷Qstrayは、一定である。というのは、Cstrayにまたがる電圧が電荷増幅器により一定に保持されるからである。それ故、どれほど多くの漂遊キャパシタンスCstrayが−入力に加えられても、Cstrayへの正味の電荷は、常に、ゼロとなる。従って、入力電荷Qsig_sense=(Csig−ΔCsig_sense)Vstimは、それに対応する行がDCに保持されるときにはゼロであり、そしてそれに対応する行が刺激されるときには単純にCsig及びVstimの関数となる。いずれにせよ、Csigにまたがる電荷はないから、漂遊キャパシタンスが除去され、本質的に方程式から省かれる。従って、マルチタッチパネルの上に手があっても、Cstrayは、増加できるが、Cstrayの変化による出力への影響はない。
【0031】
仮想接地増幅器302の利得は、通常、小さなものであり(例えば、0.1)、Csig(例えば、2pF)とフィードバックキャパシタCfb(例えば、20pF)との比に等しい。調整可能なフィードバックキャパシタCfbは、電荷Qsigを電圧Voutへ変換する。それ故、仮想接地増幅器302の出力Voutは、−Csig/Cfbの比にVrefを参照するVstimを乗算したものに等しい電圧である。それ故、高電圧Vstimパルスは、参照文字326により示された振幅を有する非常に小さなパルスとして、仮想接地増幅器302の出力に現れる。しかしながら、指が存在するときには、出力の振幅を、参照文字328で示すように減少することができる。というのは、信号キャパシタンスがΔCsigだけ減少されるからである。
【0032】
ノイズ除去の目的で、マルチタッチパネルを複数の異なる周波数で駆動するのが望ましい。ノイズは典型的に特定の周波数に存在する(例えば、ほとんどのワイヤレス装置は、特定の周波数でバーストを送信する)ので、スキャニングパターンを変化させることで、ノイズに対するシステムの感受性を減少することができる。従って、ある実施形態では、マルチタッチパネルのチャンネル(例えば、行)を、複数のパルス列バーストで刺激することができる。周波数除去の目的で、パルス列の周波数は、ある周波数から他の周波数へ変化してもよい。
【0033】
図3cは、各々固定数のパルスを有するが、異なる周波数Fstim(例えば、140kHz、200kHz、及び260kHz)を有する複数のパルス列330a、330b、330cをもつ例示的刺激信号Vstimを示している。異なる周波数における複数のパルス列では、各周波数において異なる結果が得られる。従って、静的な干渉が特定の周波数に存在する場合には、その周波数における信号の結果が、他の周波数の信号から得られた結果に比して歪んだものとなる。その歪んだ結果(1つ又は複数)を排除しそして残りの結果を使用して最終的な結果を計算してもよいし、或いは又全ての結果を使用してもよい。
【0034】
一実施形態では、システム100は、オートスキャンロジックを含む。このオートスキャンロジックは、マルチタッチサブシステム106のチャンネルスキャンロジックブロック110内に存在してもよいし、マルチタッチサブシステム106のチャンネルスキャンロジック110とは個別であってもよいし、或いはマルチタッチサブシステム106とは完全に個別であってもよい。
【0035】
一般的に、オートスキャンロジックは、アナログチャンネル108からデータを自律的に読み取りそしてアナログチャンネル108の制御を与えることができる。これは、「オートスキャンモード」と称される。従って、オートスキャンモードは、1つ以上のシステムクロックがディスエイブルされる間にシステム100がマルチタッチプロセッサ102からの介在なしにマルチタッチパネル124をスキャンできるようにする。これは、マルチタッチシステム100が、オートスキャンモードにある間に、電力を節約し又はコンポーネント(プロセッサ102のような)を解放して、他のタスクを遂行できるようにする。
【0036】
例えば、ユーザはタッチパネル124にデータを入力し続けることはないので、システム100がタッチ事象を感知することなく所定長さの時間が経過した後にオートスキャンモードを開始することが望まれる。このようにすることで、システム100は、データが入力されない間に電力を節約できる(オートスキャンモードがイネーブルされるので)が、ユーザがデータの入力を再開すると、電力バックアップを行う。
【0037】
図4は、オートスキャンロジック400の一実施形態のブロック図である。図示されたように、オートスキャンロジック400は、とりわけ、行アドレス及びチャンネルタイミング機能を制御できるオートスキャン制御器402を備えることができる。一実施形態では、オートスキャン制御器402は、マルチタッチパネル124のスキャニングを制御するための行アドレスステートマシン及びチャンネルタイミングステートマシンを含むことができる。当業者であれば、明らかなように、オートスキャン制御器402の種々の機能及びコンポーネントは、チャンネルスキャンロジック110及びドライバロジック114と分担又は重畳させることができる。
【0038】
図4を更に参照すれば、探り出し(sniff)タイマー404及び校正タイマー406は、発振器408によってクロックすることができる。発振器は、低周波数発振器でも高周波数発振器でもよいが、電力節約の理由で、低周波数発振器が望ましい。低周波数発振器は、マルチタッチサブシステム106内に存在してもよいし、マルチタッチサブシステム106以外に存在してもよい。
【0039】
所定長さの時間(「探り出し時間(sniff time)」と称される)の後に、探り出しタイマー404は、スキャンシーケンスを開始する。オートスキャンモードは、2つの個々のシステム状態、即ち低周波数発振器及び探り出し時間だけがアクティブである実際の探り出しインターバルと、マルチタッチパネルがアクティブにスキャンされるスキャンシーケンスとで構成されることに注意されたい。2つのシステム状態でオートスキャンモードを形成することができる。
【0040】
一実施形態では、高周波数発振器421が瞬間的にウェイクアップする。高周波数発振器のウェイクアップが速いほど、システムがパネルのアクティブなスキャンに費やす時間が短い。高周波数発振器に関する更なる詳細が、参考としてここに内容をそのまま援用する本出願人の現在出願中の“Automatic Frequency Calibration”と題する米国特許出願第11/649,966号に説明されている。一実施形態では、高周波数発振器421は、システムが低電力管理状態からウェイクアップしてマルチタッチパネルをスキャンした後に高速ロックを許す高速スタートアップ発振器である。ウェイクアップし、マルチタッチパネルをスキャニングしそして低電力状態に戻る時間を短縮するためには、発振信号が比較的短い時間内に安定状態となり、システムがアクティブである時間を最小にし、ひいては、電力を節約することが有効である。多くの結晶発振器は、安定化するまでに数ミリ秒を要する。しかしながら、高速スタートアップ発振回路は、数十マイクロ秒以内に安定化することができ、従って、このシステムは、例えば、低速安定化結晶発振器により駆動されるシステムより著しく速く低電力管理状態へ戻ることができる。
【0041】
一般的に、オートスキャンプロセスは、先ず、オートスキャン制御器402をイネーブルし、次いで、プロセッサを割り込み状態の待機に入れることにより、イネーブルすることができる。クロックマネージャー414は、高周波数発振器421を遮断し、そして探り出しタイマー404を始動し、このタイマーは、探り出し時間切れの後に、クロックマネージャー414が高周波数発振器421をイネーブルするようにさせ、次いで、スキャンを行うがプロセッサをインアクティブに保持するための要求をチャンネルスキャンロジック110へ送信する。チャンネルスキャンロジック110は、次いで、適当なレジスタをプログラミングすることで指定できるピクセル位置のマルチタッチ映像を取得する。アナログチャンネル430(
図3Aのアナログチャンネル300でよい)からのマルチタッチ映像結果は、減算器417において、基線RAM419に記憶された基線映像によって減算される。次いで、減算結果を、比較器410によりスレッシュホールド値と比較することができる。それにより得られる値がプログラム可能なスレッシュホールド値より高い場合には、割り込みがセットされ、プロセッサがウェイクアップされる。それにより得られる値がスレッシュホールド値より低い場合には、システムは、校正時間が経過するか、又は外部割り込みが発生するまで、オートスキャンモードに留まる。
【0042】
従って、オートスキャンモードは、プロセッサがインアクティブである間にマルチタッチパネル124からマルチタッチデータ入力を読み取ることができるようにする。一実施形態では、探り出しタイマー404は、それがオートスキャンシーケンスを開始するたびにリセットされる。探り出し時間は、8ミリ秒から2秒の範囲であり、例えば、50ミリ秒である。
【0043】
校正タイマー406は、以下に詳細に述べるように、スレッシュホールドを越えるタッチ事象がタッチパネル124において検出されずにオートスキャンロジック400が長時間にわたってオートスキャンモードに留まったときにプロセッサ102をウェイクアップすることができる。一実施形態では、校正タイマー406は、所定長さの時間(校正時間)が経過したときに「校正」を開始する。「校正」は、高周波数発振器をウェイクアップさせ、そしてシステムクロック及びプロセッサ102をアクチベートして、マルチタッチパネル102のスキャンを遂行することを含む。又、校正は、センサパネル124におけるドリフトを考慮するような校正機能を含むこともできる。一実施形態では、校正時間は、探り出し時間より長く、2秒から300秒の範囲でよい。
【0044】
図4を更に参照すれば、比較器410は、オフセット補償された結果を、上述したスレッシュホールド値と比較する。一実施形態において、スレッシュホールド値を越える場合には、パネル124において検出される1つ以上のタッチ事象が生じて、システム100をオートスキャンモードからアクティブなスキャンモードへ入れる。スレッシュホールド値と、補償された結果との比較は、チャンネルごと、行ごとに行うことができる。一実施形態では、スレッシュホールド値をスレッシュホールド値レジスタにプログラムすることができる。
【0045】
校正タイマー406及び比較器410の出力路の間にORゲート412を含ませることができる。従って、校正タイマー406の校正時間又は比較器410のスレッシュホールド値のいずれかを越えるときには、プロセッサ102及びクロックを再イネーブルする目的でORゲートがプロセッサ102及びクロックマネージャー414への割り込み信号の送信を開始することができる。
【0046】
クロックマネージャー414は、システム100の1つ以上のクロックを制御することができる。一般的に、所与の時間にいずれかのクロックが必要でなくなったときは、クロックマネージャー414がそれらのクロックをディスエイブルして電力を節約することができ、そしてディスエイブルされたクロックが必要になったときは、クロックマネージャー414がそれらのクロックをイネーブルすることができる。一実施形態では、クロックマネージャー414は、低周波数発振器408と、高周波数発振器(図示せず)と、プロセッサ102をクロックするシステムクロック(図示せず)とを制御することができる。
【0047】
オートスキャンロジック400には電力管理タイマー416を含ませることができる。
この電力管理タイマー416は、探り出し時間から遅延時間だけ少ないものに等しい時間までカウントアップする。遅延時間とは、マルチタッチシステム100が、スキャンを行う前に、スキャン「沈静(settle)」高電圧ドライバ118を遂行する(即ち、電圧の安定供給を与える)準備をするのに要する時間長さである。この遅延時間は、電力マネージャーレジスタを経て調整することができ、スキャンされるチャンネル108ごとに異なるものでよい。
【0048】
環境ノイズによる偽のウェイクアップを防止するために、ノイズ管理ブロック424を含ませることができる。偽のウェイクアップは、プロセッサが割り込み待機状態から退出してパネルをアクティブにスキャンするようにさせる。更に、繰り返しの偽のトリガーは、システムの全電力消費を実質的に増加させる。ノイズ管理ブロック424は、スレッシュホールドを越えたのは、例えば、指がパネルにタッチしたためか又はノイズがスキャン周波数の1つを歪めたためかを効果的に見分けることができる。
【0049】
一実施形態において、オートスキャンロジック400は、2つ以上の周波数においてスキャンを行い、そして得られたデータをノイズ管理ブロック424へ転送することができる。ノイズ計算ブロック427は、異なるスキャン周波数について取得した結果データの履歴に基づいてノイズレベルを計算し、そしてノイズレベルRAM425を使用して、ノイズレベル及び関連周波数の履歴を保持することができる。制御及び判断ロジック428は、異なる周波数での1つの行スキャンについて取得したADC結果を比較することができる。例えば、スキャン周波数に対するADC結果データが、あるウインドウ内で互いに追跡し合う場合には、おそらく、タッチ状態がスレッシュホールドをタッチ状態として越えさせている。というのは、タッチは、全てのスキャン周波数に対して結果の値に影響するからである。しかしながら、特定の周波数に対する結果データが歪められた場合には、個々のスキャン周波数における結果データが、おそらく、他のスキャン周波数を追跡せず、従って、タッチ状態ではなく、過剰なノイズがスレッシュホールドを越えさせることを示す。後者のケースでは、制御及び判断ロジック428は、比較器410がプロセッサの割り込みを発生するのを防止するために阻止(holdoff)信号435を発生することができる。ノイズの多い周波数チャンネルが検出された場合には、その周波数を周波数ホッピングテーブル426及びIOブロック429から除去することができる。周波数ホッピングテーブル426は、きれいな周波数チャンネルを表すデータを含み、そして工場での校正中にプログラムすることができる。スキャンが完了すると、IOブロック429は、スキャン周波数データの新たなセットをチャンネルタイミングロジック110へ送信することができる。周波数データは、次のチャンネルタイミングシーケンスに対するスキャン周波数を決定することができる。ノイズ環境に基づいてスキャン周波数を周期的に変化することで、オートスキャンロジック400をより健全なものにし、最終的に、電力の減少に役立つことができる。
【0050】
低電力状態に到達するために、各アナログチャンネル430の電荷増幅器(電荷増幅器302のような)は、漂遊キャパシタンスモードで動作するよう構成することができる。
一実施形態では、チャンネルスキャンロジック110は、漂遊キャパシタンスモード開始信号をアナログチャンネル430へ送信することにより漂遊キャパシタンスモードを開始することができる。マルチタッチパネル装置の漂遊キャパシタンス測定を開始することは、参考としてここに全内容を援用する“Analog Boundary Scanning Based on Stray Capacitance”と題する本出願人の同時係争中の米国特許出願第11/650,511号に詳細に説明されている。
【0051】
しかしながら、一実施形態では、漂遊キャパシタンスモードを使用することは、パネル124のどこでタッチ事象が生じたかの正確な位置を与えるものではない。というのは、漂遊キャパシタンスモードは、スキャンされている列の1つ又はその付近で1つ以上のタッチ事象が生じたという指示しか与えないからである。一方、漂遊キャパシタンスモードを使用することは、マルチタッチパネル124上でタッチ事象が生じたかどうか判定するのに1つのスキャンしか必要としないために効果的であり、これと対照的に、相互キャパシタンスモードを使用すると、複数のスキャンが必要になることがある。従って、より少ないスキャンを使用することで、パネル124をスキャンするのに消費される電力の量を著しく減少することができる。例えば、一実施形態において、漂遊キャパシタンスモードを使用するスキャンは、マルチタッチシステムに存在する漏れ電流により消散される電力量とほぼ同じ電力量を使用することが分かった。
【0052】
一実施形態による例示的なオートスキャンプロセス500が
図5のフローチャートに示されている。当業者であれば、明瞭化のためにこのフローチャートから種々のタイミング及びメモリ記憶の事柄が省略されていることが明らかであろう。
【0053】
オートスキャンプロセス500は、ブロック502において、システム100がアクティブなスキャンモードにある状態で開始される。ここで、プロセッサ102がイネーブルされ、そしてシステム100は、マルチタッチパネル124をアクティブにスキャニングする。まだアクティブなスキャンモードにある間に、プロセス500は、ブロック504において、所定長さの時間(例えば、1msから数分までの範囲)内にタッチパネル上に充分なタッチ事象が生じたかどうか判定する。この判断は、例えば、プロセッサ102によって行うことができる。或いは又、個別のプロセッサ又は専用のロジック、例えば、チャンネルスキャンロジック110が、このタスクを行うことができる。充分なタッチアクティビティがあったことが分かると、プロセス500は、ブロック502へ戻り、システム100は、アクティブなスキャンモードに留まる。他方、充分なタッチアクティビティがなかったと判定されると、ブロック506において、オートスキャンモードがイネーブルされる。
【0054】
一実施形態では、オートスキャンモードは、プロセッサ102がオートスキャンイネーブル信号をオートスキャン制御器402へ送信することにより、イネーブルすることができる。別の実施形態では、オートスキャンモードは、オートスキャン制御器402により監視されるオートスキャンレジスタのオートスキャンイネーブルビットをプロセッサ102がセットすることで、イネーブルすることができる。当業者に明らかなように、オートスキャンモードをイネーブルする更に別の変形を使用することもできる。
【0055】
オートスキャンモードがイネーブルされると、プロセッサ102は、ブロック508においてディスエイブルされ(例えば、アイドルモードに入れられ)、システムクロックがターンオフされ(ブロック510)、そして高周波数発振器がターンオフされる(ブロック510)。ブロック508、510及び512は、マルチタッチパネル124が使用中でないときに電力を節約するように働く。
図4に示す実施形態では、オートスキャンロジック400は、クロックマネージャー414を経てこれらコンポーネントの1つ以上をディスエイブルすることができる。
【0056】
更に
図5を参照すれば、探り出しタイマー404がアクチベート及びリセットされ(ブロック514)、そして校正タイマー406がアクチベート及びリセットされる(ブロック516)。アクチベート及びリセット機能は、オートスキャン制御器402により開始することができる。次いで、プロセス500は、判断ブロック518へ進み、スレッシュホールドを越えたことを指示する比較器410からの信号のような割り込み信号が受信されたかどうか判定する。割り込みが受信された場合には、オートスキャンモード中にターンオフされたクロックがターンオンされ、そしてプロセッサ102がイネーブルされる(ブロック520)。プロセス500は、次いで、ブロック502のアクティブなスキャニングモードに戻る。
【0057】
割り込みが検出されない場合には、プロセス500は、探り出しタイマー604が探り出し時間を越えたかどうか判定する(ブロック522)。探り出し時間を越えない場合には、プロセス500は、ブロック518に戻る。探り出し時間を越えた場合には、プロセス500は、校正タイマー406が校正時間を越えたかどうか判定する(ブロック520)。校正時間を越えた場合には、クロック及びプロセッサがイネーブルされ(ブロック514)、そしてアクティブなスキャンモードがイネーブルされる(ブロック502)。
【0058】
校正時間を越えない場合には、高周波数発振器が、ブロック526において、ウェイクアップされ(即ち、イネーブルされ)、そしてマルチタッチパネル124の映像が取得される(ブロック528)。ブロック524において映像を取得するのに種々の実施形態を使用することができ、これについては、以下に詳細に述べる。
【0059】
一実施形態において、ブロック524で取得された映像は、プロセッサ102がディスエイブルされる間に処理される。映像がブロック528において取得されると、プロセス500は、プログラム可能なスレッシュホールドを越えたかどうか判定する(ブロック530)。これは、ADC308(
図3a)から受け取られたオフセット補償結果324をスレッシュホールド値と比較することにより行うことができる。スレッシュホールドを越えた場合には、クロック及びプロセッサ102がイネーブルされ(ブロック514)、そしてプロセス500は、アクティブなスキャンモードへ戻る(ブロック502)。スレッシュホールドを越えない場合には、プロセス500は、ブロック512へ戻る(高周波数クロックをターンオフする)。
【0060】
更に、ブロック524については、種々の実施形態を使用して、マルチタッチ映像を取得することができる。例えば、相互キャパシタンス又は漂遊キャパシタンスのいずれかを測定する映像を取得することができる。
【0061】
相互キャパシタンスを測定するときには(「相互キャパシタンスモード」と称される)、システム100は、
図3b及び3cを参照して上述したように、マルチタッチパネルの各ノードにおけるキャパシタンスの変化を検出する。従って、相互キャパシタンスモードを使用してマルチタッチパネル124の映像を取得するために、各行が典型的にスキャニングされる。別の実施形態では、エネルギーを節約するために選択行のみがスキャニングされる。例えば、1つおきの行をスキャニングするか、或いはマルチタッチパネル124のあるエリア、例えば、マルチタッチパネルの頂部、底部又は中間エリアに位置する行をスキャニングする。更に別の実施形態では、マルチタッチパネル124の選択フレームが相互キャパシタンスモードを使用してスキャニングされる。
【0062】
或いは又、相互キャパシタンスモードに代わって又はそれと組み合わせて、漂遊キャパシタンスの測定を使用することができる(「漂遊キャパシタンスモード」と称される)。
マルチタッチパネル装置における漂遊キャパシタンスの測定は、参考としてここに全内容を援用する“Analog Boundary Scanning Based on Stray Capacitance”と題する本出願人の同時係争中の米国特許出願第11/650,511号に詳細に説明されている。好都合なことに、漂遊キャパシタンスモードは、マルチタッチパネル124の全ての列の出力を1回のスキャンで測定することができる。
【0063】
図6は、本発明の一実施形態によるオートスキャンサイクルの電力管理プロフィール600である。1つの完全なオートスキャンサイクルは、例えば、50msである。探り出しモード中には、低周波数クロック408、探り出しタイマー404、及び校正タイマー406しかアクティブでないから、非常に僅かな電力が使用されるだけである。探り出し時間を越えると、
図6にスキャンアクティビティの周期として示されたオートスキャンが遂行される。この時間中には、マルチタッチパネル124は、プロセッサ102からの介在なしにスキャニングされる。従って、低周波数クロック404、高周波数クロック、オートスキャン制御器402、及びオートスキャンを行うのに必要な他のコンポーネントが電力供給される。これにより生じる電力消費は、探り出し時間中に生じるものより大きいが、プロセッサ102及び他のクロックがアクティブである場合(例えば、アクティブなスキャンモード中)よりは低い。
【0064】
図6を更に参照すれば、相互キャパシタンスモードが使用される場合には、マルチタッチパネル124の1つ以上の行をスキャニングすることができる。1つの実施形態では、48行がスキャニングされ、各行のスキャニングは、それを遂行するのに約0.1msを要する。従って、各行をスキャニングするのに、合計約4.8msを要する。漂遊キャパシタンスモードが使用される場合には、1つのスキャニングを遂行するだけでよい。このスキャニングは、これを行うのに約0.1msを要する。従って、漂遊キャパシタンスモードを使用すると、より速くなり(この例では、4.8msに対して0.1ms)、且つより少ない電力(この例で述べた相互キャパシタンスモードに使用される電力の約2%)の使用でよくなる。
【0065】
漂遊キャパシタンスモードは、マルチタッチパネル124のどこにタッチしたかの正確な位置を決定することができないので、一実施形態ではハイブリッドモードを使用することができる。ハイブリッドモードは、最初に、漂遊キャパシタンスモードを使用して、マルチタッチパネル124上のタッチ事象を検出し、そしてタッチ事象が検出された場合には、相互キャパシタンスモードを使用して、タッチ事象が生じた正確な位置を与えることを含む。
【0066】
更に、システム100の一実施形態では、スレッシュホールドを越えるためにはタッチ事象が所定の仕方で起きることが要求される。例えば、システムは、同時又はほぼ同時のタッチ事象が特定の位置又は特定の仕方(例えば、模擬ダイヤル回し運動)で生じることを要求する。スレッシュホールドを越えた場合には、プロセス500で述べたように、オートスキャンモードを続けることができる(例えば、ブロック512へ戻る)。
【0067】
一実施形態では、オートスキャンモードは、単一の周波数帯域でスキャンを行う。これは、電力を節約することができる。或いは又、オートスキャンモードは、
図3cを参照して述べたように、複数の異なる周波数においてスキャンを行うことができる。
【0068】
一実施形態では、オートスキャンロジックは、ノイズ管理ブロックを含む。このノイズ管理ブロックは、ユーザがマルチタッチスクリーンにタッチしないためではなく、ノイズが存在するためにスレッシュホールドレベルを越える場合に、プロセッサのウェイクアップを防止する。オートスキャンモードに留まることにより、電力がセーブされる。ノイズ管理ブロックは、多数のチャンネルに対してノイズレベルの測量を行うことができる。1つのチャンネルが過剰なCsigの読みを有する場合には、おそらく、そのチャンネルに干渉がある。全てのチャンネルの読みが同じである場合には、ユーザがパネルにタッチしたおそれが高い。ノイズレベルに基づいて、ノイズ管理ブロックは、周波数ホッピングテーブルを、きれいなチャンネルの周波数と共にチャンネルスキャンロジックに返送する。又、ノイズ管理ブロックは、ノイズの多いチャンネルへの発振器のドリフトを防止するために内部の高周波数発振器を再校正する校正エンジンも備えている。
【0069】
図7は、
図1のコンピューティングシステム100におけるマルチタッチパネル724、ディスプレイ装置730及び他のコンピューティングシステムブロックを含むことのできる例示的移動(例えば、セルラー)電話736を示している。
図7aの例において、ユーザの頬又は耳が1つ以上のマルチタッチパネルセンサにより検出された場合に、コンピューティングシステム100は、移動電話736がユーザの頭部に保持され、それ故、マルチタッチサブシステム106及びマルチタッチパネル724のいずれか又は全部をディスプレイ装置730と共にパワーダウンして電力を節約できると決定することができる。
【0070】
図8は、
図1のコンピューティングシステム100におけるマルチタッチパネル824、ディスプレイ装置830及び他のコンピューティングシステムブロックを含むことのできる例示的デジタルオーディオ/ビデオプレーヤを示す。
【0071】
本発明は、多数の好ましい実施形態に関して説明したが、本発明の範囲内に入る変更や置き換えや等効物がある。例えば、「コンピュータ」という語は、必ずしも、特定の種類の装置や、ハードウェア及び/又はソフトウェアの組み合わせを意味するものでもないし、又、多目的装置又は単一目的装置のいずれかに限定されると考えるべきものでもない。
その上、ここに示す実施形態は、タッチスクリーンに関連して説明したが、本発明の教示は、タッチパッド又は他のいかなるタッチ表面形式のセンサにも等しく適用することができる。
【0072】
例えば、本発明の実施形態は、主に、マルチタッチパネルに使用するものとして説明したが、「ホバー(hover)」事象又は状態を感知する接近センサパネルを使用して、アナログチャンネルにより検出するための変調出力信号を発生することもできる。接近センサパネルは、参考としてここに全体を援用する2007年1月3日に出願された“Proximity and Multi-Touch Sensor Detection and Demodulation”と題する本出願人の同時係争中の米国特許出願第11/649,998号に説明されている。ここで使用する「タッチ」事象又は状態とは、「ホバー」事象及び状態を包含するものと解釈されるべきで、集合的に「事象」と称されてもよい。又、「タッチ表面パネル」は、「接近センサパネル」を包含するものと解釈されるべきである。
【0073】
更に、この開示は、主に、容量性感知に向けられたが、ここに述べた特徴の幾つか又は全部を他の感知方法に適用できることにも注意されたい。又、本発明の方法及び装置を実施する多数の別の仕方があることにも注意されたい。それ故、特許請求の範囲は、本発明の真の精神及び範囲内に入るこのような全ての変更、置き換え及び等効物を包含するものと解釈することが意図される。