電容觸摸傳感的理論框架
對(duì)于百分比按下檢測(cè),將繼續(xù)使用前面討論的求均值方案。但是,讀數(shù)變量將變換為如下形式:
本文引用地址:http://www.ex-cimer.com/article/96399.htmunsigned long percent;
percent = average – (reading*16);
if (percent < 0) {
percent = 0; // 忽略電容上升
} else {
percent = percent * 1000; // 乘以1000
percent = percent / average; // 結(jié)果使用100.0%的形式
}
結(jié)果變量percent包含0至1,000的值,更具體地說,值的范圍約為0至200(代表20.0%)。結(jié)果值保持單個(gè)小數(shù)位,因?yàn)楦嘈?shù)位并不會(huì)提高精度。
更換先前的“if”語句,產(chǎn)生類似于以下語句的“if”語句:
#define PCT_ON 50 // >5.0%,打開
#define PCT_OFF 30 // <3.0%,關(guān)閉
if (reading < PCT_ON) {
Buttons.SENSOR0 = PRESSED;
} else if (reading > PCT_OFF) {
Buttons.SENSOR0 = UNPRESSED;
}
下一個(gè)復(fù)雜解碼方案稱為“多鍵表決”。如前面所討論,傳感器不僅會(huì)與手指和周圍的地產(chǎn)生耦合,而且會(huì)相互耦合。因此,觸摸一個(gè)傳感器會(huì)影響另一個(gè)傳感器,但影響程度通常會(huì)低于其他意外激勵(lì)。如果即使影響程度較低,影響仍足以觸發(fā)按下狀態(tài),會(huì)發(fā)生什么情況?
開發(fā)多鍵表決系統(tǒng)可以幫助解決該問題,以及與小鍵盤污染關(guān)聯(lián)的其他問題。多鍵表決系統(tǒng)會(huì)選擇按下后受影響最大的按鍵,代價(jià)是多次按下動(dòng)作只能產(chǎn)生單個(gè)按鍵響應(yīng)。例如,如果觸摸會(huì)影響兩個(gè)按鍵,但手指按下的按鍵受到的影響最大,該算法將選擇受影響最大的按鍵。
該算法必須獲取來自所有可用傳感器的數(shù)據(jù)。舉例來說,假定使用了4個(gè)傳感器。算法還是使用百分比按下檢測(cè)方法,因?yàn)槊總€(gè)傳感器的讀數(shù)可能會(huì)稍有不同,采用相對(duì)與原始值的偏差可以起到一些幫助。系統(tǒng)必須掃描全部4個(gè)傳感器,并在掃描之后執(zhí)行以下步驟:
首先,掃描所有傳感器
在每次掃描期間,記錄每個(gè)傳感器的受影響百分比
根據(jù)受影響程度進(jìn)行排序
基于步驟3,對(duì)索引進(jìn)行排序
位于數(shù)組單元0的傳感器的受影響程度最高
評(píng)論