一種低功耗觸摸按鍵應(yīng)用的設(shè)計(jì)方法
此外,該系列PSoC®芯片包含8個(gè)數(shù)字模塊和6個(gè)模擬模塊,提供最多38個(gè)通用I/O, 16Kbyte Flash,1Kbyte的SRAM以及其它一些片上資源,包括10位SAR ADC,電壓參考源(VDAC),I2C通信模塊,硬件實(shí)時(shí)時(shí)鐘(RTC)[5]。硬件實(shí)現(xiàn)的觸摸按鍵掃描模塊和豐富的數(shù)字、模擬模塊資源,使得可以用一塊CY8C22x45芯片實(shí)現(xiàn)觸摸按鍵功能和系統(tǒng)主控操作。
CY8C22x45系列芯片休眠時(shí)的工作電流僅有3 uA[5],芯片內(nèi)包含一個(gè)休眠計(jì)數(shù)器,系統(tǒng)進(jìn)入休眠后計(jì)數(shù)器開(kāi)始遞減,當(dāng)計(jì)數(shù)值為零時(shí)產(chǎn)生中斷喚醒系統(tǒng)。喚醒系統(tǒng)后可以不做任何處理再次進(jìn)入休眠模式。這樣周而復(fù)始,達(dá)到所需要的整個(gè)休眠時(shí)間。在實(shí)際設(shè)計(jì)中,常常使用平均休眠電流替代公式2中的Isleep,即在每次休眠結(jié)束后,僅讓系統(tǒng)正常工作最短時(shí)間,該時(shí)間內(nèi)完成所有必須操作(僅是一次循環(huán)判斷),此時(shí)的電流即為該休眠時(shí)間下的平均休眠電流。表 1 列出了常用休眠時(shí)間的平均休眠電流。
表 1 常用休眠時(shí)間的平均休眠電流
本文引用地址:http://m.butianyuan.cn/article/181193.htm
圖 4是一個(gè)觸摸按鍵應(yīng)用中一次典型的按鍵波形,每個(gè)按鍵按下后,系統(tǒng)都需輸出對(duì)應(yīng)的電壓值以供其他系統(tǒng)檢測(cè)。該應(yīng)用要求響應(yīng)時(shí)間小于等于40ms,當(dāng)按鍵被長(zhǎng)按時(shí),需要一直輸出按鍵電壓,即使按鍵釋放后,仍需250 ms時(shí)間保持原有按鍵電壓,之后停止輸出按鍵電壓,進(jìn)入空閑狀態(tài)。系統(tǒng)共包含12個(gè)觸摸按鍵,當(dāng)多個(gè)按鍵被同時(shí)按下時(shí),系統(tǒng)不響應(yīng)。系統(tǒng)低功耗設(shè)計(jì)要求為,系統(tǒng)待機(jī)時(shí)沒(méi)有按鍵操作的平均電流應(yīng)至少小于1 mA。
使用示波器可以測(cè)出系統(tǒng)掃描12個(gè)按鍵所需時(shí)間大約為1.388 ms。同時(shí),可以測(cè)量到正常工作狀態(tài)下系統(tǒng)的工作電流大約為6mA。根據(jù)公式2以及表 1,若一次休眠1.92 ms,需要連續(xù)休眠5次(9.6 ms),才可以得到低于1mA的平均待機(jī)電流,約為0.875mA;若一次休眠15.6 ms,休眠一次即可滿足要求,平均待機(jī)電流約為0.52mA。實(shí)際工程中采用了第二種休眠方式,實(shí)際測(cè)量到的平均待機(jī)電流值為0.565mA,與計(jì)算值相近。
4. 降低功耗和喚醒方式的進(jìn)一步討論
以上實(shí)例中系統(tǒng)的平均待機(jī)電流是0.565mA,雖然這個(gè)功耗滿足了系統(tǒng)的設(shè)計(jì)要求,但是在很多使用電池供電的場(chǎng)合是不行的。這是因?yàn)樵诖龣C(jī)時(shí),系統(tǒng)掃描全部12個(gè)按鍵,用去了1.388ms的時(shí)間。如果能減小掃描按鍵的時(shí)間,那么還能夠降低系統(tǒng)的待機(jī)功耗。
固定按鍵喚醒系統(tǒng)
采用固定按鍵的方式喚醒系統(tǒng)能有效的降低系統(tǒng)掃描按鍵的時(shí)間。系統(tǒng)無(wú)需掃描所有的按鍵,只需掃描固定的一個(gè)按鍵,這可以大大降低在待機(jī)狀態(tài)下掃描按鍵的時(shí)間。以上述的應(yīng)用為例,CY8C22x45系列PSoC支持雙通道并行掃描,12個(gè)按鍵均勻分布在兩個(gè)通道上,因此掃描一個(gè)按鍵約為0.231 ms。 如果休眠15.6 ms, 可以計(jì)算出此時(shí)平均待機(jī)電流只有0.113 mA,相比之前的0.52 mA的計(jì)算值,僅是其21%。如果休眠時(shí)間增加至40ms, 從表 1可以推算出此時(shí)平均休眠電流約為9 uA, 此時(shí)計(jì)算出平均待機(jī)電流僅為0.043 mA。
任意按鍵喚醒系統(tǒng)
如果系統(tǒng)要求任意按鍵喚醒系統(tǒng),那么以上介紹的固定按鍵喚醒系統(tǒng)方法不能滿足。Cypress特有的內(nèi)部模擬總線的方式,可以將全部的按鍵組合成一個(gè)“大按鍵”。這樣系統(tǒng)待機(jī)時(shí),只需要對(duì)這個(gè)“大按鍵”掃描一次,就能判斷是否有手指觸摸到任何按鍵上。不論任何一個(gè)按鍵被手指觸摸,都可以喚醒系統(tǒng)。系統(tǒng)喚醒后,將“大按鍵”分解,進(jìn)行正常的按鍵掃描處理,區(qū)分哪個(gè)按鍵按下,進(jìn)行任務(wù)處理。使用這種方法,系統(tǒng)的待機(jī)平均電流與使用固定按鍵喚醒系統(tǒng)的方法相同。
手指接近喚醒系統(tǒng)
手指接近喚醒系統(tǒng)是Cypress的一項(xiàng)成熟的技術(shù)。此方法是建立在任意按鍵喚醒系統(tǒng)方法基礎(chǔ)之上的。在系統(tǒng)待機(jī)時(shí),也是使用一個(gè)“大按鍵”進(jìn)行掃描。與上個(gè)方法不同的地方在于:不是當(dāng)手指觸摸到鍵盤(pán)時(shí)喚醒系統(tǒng),而是當(dāng)手指靠近鍵盤(pán)時(shí)就喚醒系統(tǒng)。系統(tǒng)喚醒后立即將“大按鍵”分解為正常按鍵,進(jìn)行按鍵掃描。相對(duì)于任意按鍵喚醒系統(tǒng)方法,這種方法能加快系統(tǒng)對(duì)按鍵的相應(yīng)速度,還可以使產(chǎn)品增加豐富的功能特性。
5. 結(jié)語(yǔ)
應(yīng)用Cypress的CY8C22x45系列芯片以及獨(dú)有的CapSense技術(shù),設(shè)計(jì)者可以用更快的時(shí)間掃描大量按鍵,用更長(zhǎng)的時(shí)間讓系統(tǒng)休眠,結(jié)合其較低的休眠電流,在保證系統(tǒng)可靠性能的同時(shí),可以實(shí)現(xiàn)較低的待機(jī)功耗,為觸摸按鍵應(yīng)用的低功耗設(shè)計(jì)提供了一種良好的解決方案。
評(píng)論