快速響應(yīng)電容性觸摸屏裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]實(shí)施例一般涉及觸摸屏裝置。更特別地,實(shí)施例涉及快速響應(yīng)電容性觸摸屏裝置。
【背景技術(shù)】
[0002]觸摸屏在計(jì)算平臺(tái)上可以被用于執(zhí)行各個(gè)基于用戶界面(UI)的功能,比如光標(biāo)移動(dòng)、滾動(dòng)操作和縮放(zoom)操作。傳統(tǒng)上,手指進(jìn)入而接觸觸摸屏的面板可以發(fā)起軟件反應(yīng),比如從觸摸屏讀取硬件數(shù)據(jù)、創(chuàng)建新的軟件數(shù)據(jù)結(jié)構(gòu)和通知支持基于UI的功能的各個(gè)軟件層。實(shí)際上,軟件層可以又創(chuàng)建更多的數(shù)據(jù)結(jié)構(gòu)。這些軟件反應(yīng)發(fā)生所要求的時(shí)間可以較大地減慢觸摸屏裝置的響應(yīng)時(shí)間以及導(dǎo)致次優(yōu)的用戶體驗(yàn)。
【附圖說明】
[0003]通過閱讀以下說明書和隨附權(quán)利要求,以及通過參考附圖,實(shí)施例的各個(gè)優(yōu)點(diǎn)對(duì)于本領(lǐng)域的技術(shù)人員將變得顯而易見,所述附圖中:
圖1是依據(jù)一實(shí)施例的預(yù)觸摸情形的示例的圖示;
圖2是依據(jù)一實(shí)施例而加載與預(yù)觸摸情形相關(guān)的初步數(shù)據(jù)至軟件棧中的方法的示例的框圖;
圖3是依據(jù)一實(shí)施例而識(shí)別預(yù)觸摸情形的方法的示例的圖示;
圖4是依據(jù)一實(shí)施例而觸發(fā)觸摸事件的方法的示例的流程圖;以及圖5是依據(jù)一實(shí)施例的系統(tǒng)的示例的框圖。
【具體實(shí)施方式】
[0004]現(xiàn)轉(zhuǎn)至圖1,預(yù)觸摸情形場(chǎng)景被示出,其中,用戶的手指10來到觸摸屏14的電容性面板12的附近內(nèi)。在所示出的示例中,在手指10實(shí)際進(jìn)入而接觸觸摸屏14的面板12之前,在手指10和面板12之間的電容Cf的變化可以被探測(cè)到。如將更詳細(xì)討論的,識(shí)別所示的預(yù)接觸情形和利用(leverage)與預(yù)觸摸情形相關(guān)的初步數(shù)據(jù)可以使得觸摸屏14的響應(yīng)時(shí)間能夠被較大地減少。
[0005]例如,圖2示出一方法,其中,在用戶的手指實(shí)際進(jìn)入而接觸觸摸屏之前,與預(yù)觸摸情形相關(guān)的初步數(shù)據(jù)16被加載進(jìn)軟件棧18 (18a-18f)。初步數(shù)據(jù)16可以包括,例如,X-Y坐標(biāo)數(shù)據(jù)、電容值等等。加載初步數(shù)據(jù)16進(jìn)軟件棧18可以使得某些處理功能(比如,例如,從觸摸屏14讀取初步數(shù)據(jù)16、創(chuàng)建新的軟件數(shù)據(jù)結(jié)構(gòu)以及通知支持基于用戶界面(UI)的功能的各個(gè)軟件層)在關(guān)于觸摸屏14的實(shí)際觸摸情形的探測(cè)之前能夠被實(shí)施。
[0006]特別注意的是,初步數(shù)據(jù)16可以被阻止在UI中被呈現(xiàn),直到被證實(shí)的觸摸情形發(fā)生。此類方法可以避免如果后續(xù)觸摸情形沒有跟隨預(yù)觸摸情形則可能發(fā)生的假陽性(falsepositive)。不過,通過使得軟件桟18中的層(比如,例如,操作系統(tǒng)(0S)內(nèi)核層18b和/或應(yīng)用層18f)能夠預(yù)處理初步數(shù)據(jù)16和為潛在的觸摸事件在它們發(fā)生之前做準(zhǔn)備,大量的優(yōu)點(diǎn)可以被實(shí)現(xiàn)。其它層,比如硬件(服)/固件(FW)層18a、協(xié)議層18c、裝置驅(qū)動(dòng)程序?qū)?driver layer) 18d和/或中間件層18e可以具有受益于初步數(shù)據(jù)16的框架。阻止初步數(shù)據(jù)16在UI中被呈現(xiàn)可以通過向軟件棧18中的一個(gè)或更多層通知初步數(shù)據(jù)16是相關(guān)于預(yù)觸摸情形而不是觸摸情形來達(dá)到。例如,依據(jù)此類通知的接收,應(yīng)用層18f中的服務(wù)可能創(chuàng)建適當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu)來將接收到的坐標(biāo)轉(zhuǎn)變?yōu)檫m當(dāng)?shù)腏AVASCRIPT對(duì)象、方法和/或操作,但是抑制通過該服務(wù)的UI來完成初步數(shù)據(jù)16的處理,直到觸摸情形和/或事件的通知已被接收。
[0007]圖3示出,經(jīng)由本文所描述的預(yù)觸摸技術(shù),大量的性能優(yōu)點(diǎn)可以被獲得。大體上,對(duì)于其中用戶與觸摸屏的面板12互動(dòng)的場(chǎng)景,隨時(shí)間示出等效電容曲線。更特別地,預(yù)觸摸閾值20可以被建立,其中預(yù)觸摸閾值20大于噪聲閾值22而小于觸摸閾值24。在所示的示例中,手指10初始處于距離Di,其導(dǎo)致低于噪聲閾值22的電容值。從而,在時(shí)間t。之前的所示時(shí)間段期間,觸摸屏面板12可以被認(rèn)為是空閑的。但是,在時(shí)間t。,所示手指10來到觸摸屏面板12的足夠附近內(nèi)(例如,處于距離D2),而導(dǎo)致電容值超過預(yù)觸摸閾值20。因此,在時(shí)間t。,與預(yù)觸摸情形相關(guān)的初步數(shù)據(jù)(例如,坐標(biāo)數(shù)據(jù)、電容值)可以在時(shí)間t。被加載進(jìn)與觸摸屏面板12相關(guān)的軟件棧,其中加載初步數(shù)據(jù)可以使得軟件棧的一個(gè)或更多層能夠?qū)τ诤罄m(xù)觸摸情形做準(zhǔn)備。
[0008]在所示的示例中,手指10在時(shí)間h進(jìn)入而與觸摸屏面板12接觸,導(dǎo)致電容值超過觸摸閾值24以及觸摸情形被識(shí)別。因?yàn)槌醪綌?shù)據(jù)之前被加載以響應(yīng)預(yù)觸摸情形,觸摸事件在時(shí)間t2可以被觸發(fā),所述時(shí)間t2可以實(shí)際上是與時(shí)間t i相同的時(shí)間(或可忽略地不同)。因此,所示的解決方案使得觸摸事件能夠與實(shí)際的觸摸情形幾乎同時(shí)地被觸發(fā)。對(duì)照而言,在常規(guī)的解決方案下,在時(shí)間t。可能沒有處理發(fā)生,而大量的時(shí)間可存在于時(shí)間t JP 12之間。
[0009]現(xiàn)轉(zhuǎn)至圖4,觸發(fā)觸摸事件的方法26被示出。方法26可以被作為邏輯指令集而被實(shí)現(xiàn),所述邏輯指令集被存儲(chǔ)在機(jī)器或計(jì)算機(jī)可讀的存儲(chǔ)媒體(比如隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(R0M)、可編程ROM (PR0M)、固件、閃速存儲(chǔ)器等)中、被存儲(chǔ)在可配置邏輯(比如,例如,可編程邏輯陣列(PLA)、現(xiàn)場(chǎng)可編程門陣列(FPGA)、復(fù)雜可編程邏輯裝置(CPLD))中、被存儲(chǔ)在使用電路技術(shù)(比如,例如,專用集成電路(ASIC)、互補(bǔ)金屬氧化物半導(dǎo)體(CMOS)或者晶體管-晶體管邏輯(TTL)技術(shù))的固定功能性硬件(fixed-funct1nality hardware)邏輯中或其任何組合中。例如,執(zhí)行方法26中所示操作的計(jì)算機(jī)程序代碼可以用一個(gè)或更多編程語言的任何組合來編寫,包括面向?qū)ο缶幊陶Z言,比如Java、Smalltalk、C++或者諸如此類以及常規(guī)的過程編程語言,比如“C”編程語言或者類似的編程語言。
[0010]所示的處理框28提供對(duì)于來自觸摸屏的硬件通知的等待,所述觸摸屏比如是例如觸摸屏14 (圖1)。在一個(gè)示例中,硬件通知是可以由0S內(nèi)核例程來處理的中斷請(qǐng)求(IRQ)。硬件數(shù)據(jù)(例如,坐標(biāo)數(shù)據(jù)、電容值)可以在框30自觸摸屏讀取以響應(yīng)硬件通知,其中所示的框32確定引起硬件通知的情形的類型。在框32的確定因此可以涉及識(shí)別硬件通知的類型。
[0011]在這點(diǎn)上,與觸摸屏相關(guān)的硬件和/或固件可以通常被配置成確定預(yù)觸摸閾值或者觸摸閾值是否已被超過。因此,硬件通知的生成可以涉及將一個(gè)或更多電容值與閾值比較。如果比較由硬件實(shí)施,一組兩個(gè)硬件比較器可能被使用。如果比較通過固件實(shí)施,一個(gè)硬件比較器可以是足夠的。使用固件來確定預(yù)觸摸閾值或者觸摸閾值是否已被超過可以是有益的,因?yàn)楣碳梢允菃为?dú)的例程,其不占用主機(jī)處理器時(shí)間,也不占用OS或其它軟件的正在運(yùn)行的進(jìn)程、調(diào)度等等。
[0012]如果預(yù)觸摸情形被識(shí)別,則硬件數(shù)據(jù)(其可以被認(rèn)為是與預(yù)觸摸情形相關(guān)的初步數(shù)據(jù))可以被加載進(jìn)軟件棧和/或被更新(在框34)。加載初步數(shù)據(jù)至軟件棧中可以涉及,例如,寫初步數(shù)據(jù)至暴露于軟件棧的一個(gè)或更多寄存器和/或存儲(chǔ)位置。如果識(shí)別的預(yù)觸摸情形是隨后于之前的預(yù)觸摸情形,則更新初步數(shù)據(jù)可能發(fā)生。在此類情況中,最新近的初步數(shù)據(jù)可以被用來在適當(dāng)?shù)募拇嫫骱?或存儲(chǔ)位置中蓋寫(overwrite)或補(bǔ)充之前加載的初步數(shù)據(jù)。通過例如向軟件棧的一個(gè)或更多層通知數(shù)據(jù)在本質(zhì)上是初步的,可以阻止加載的和/或更新的初步數(shù)據(jù)在與軟件棧相關(guān)的UI中被呈現(xiàn)。所述層因此可以協(xié)作來保持初步數(shù)據(jù)躲開用戶的洞察。
[0013]在另一方面,如果在框32確定觸摸情形已被識(shí)別(例如,觸摸閾值已被超過,觸