零 該程序產(chǎn)生的背景 話說2012年,小白菜要做一個(gè)三相電壓電流組合表,這個(gè)儀表需要進(jìn)行數(shù)據(jù)輸入(小白菜以前的項(xiàng)目也有輸入,但是小白菜沒有仔細(xì)的研究過),并且給出的時(shí)間很長,小白菜有時(shí)間來做一些“研究處理”。拿著以前寫的按鍵檢測(cè)程序,感覺漏洞百出,于是想著趁著有時(shí)間把這部分做出來,于是便用了一個(gè)星期(實(shí)際是5天,雙休思密達(dá))專門寫了這部分程序。 一 小白菜的應(yīng)用需求 小白菜的儀表僅需要單短擊(簡(jiǎn)稱單擊)和單長擊(簡(jiǎn)稱長擊),單短擊要在按鍵松開后才進(jìn)行識(shí)別,單長擊要在達(dá)到設(shè)定的時(shí)間閥值時(shí)進(jìn)行識(shí)別(這時(shí)按鍵未松開)。 不需要考慮的情況如下,不需要連擊(可以做為多次短擊)、不需要多鍵同時(shí)擊、暫時(shí)不需要考慮輸入數(shù)字時(shí)長按某鍵,數(shù)字快速自加或自減。 該檢測(cè)程序要滿目不依賴于任何一種單片機(jī),也不依賴按鍵連接方式,如獨(dú)立式,矩陣式(當(dāng)然你要用按鍵掃描芯片那就……你要用AD式鍵盤,我……好吧,你贏了~),能夠獨(dú)立存在。
二 按鍵過程分析 1 按鍵小思考 正常的按鍵過程(不考慮非法的按鍵狀態(tài))如圖2.1.1。
2249085zccjmnojx9qxeni.jpg (8.98 KB, 下載次數(shù): 219)
下載附件
2014-12-20 18:56 上傳
圖2.1.1 正常按鍵狀態(tài)示意圖 單擊和長擊只是時(shí)間上的區(qū)分而已,但是其識(shí)別時(shí)稍有區(qū)別,單擊是在按鍵松開時(shí)進(jìn)行識(shí)別的,長擊是在按鍵閉合時(shí)進(jìn)行識(shí)別的。見圖2.1.2。
224908h5c8rckfofjrg35j.jpg (14.99 KB, 下載次數(shù): 270)
下載附件
2014-12-20 18:56 上傳
圖2.1.2 長短擊按鍵狀態(tài)示意圖
2 各種可能出現(xiàn)的按鍵情況 合法情況不再贅述。下面把非法(僅在本應(yīng)用中非法)的情況列一下。 (1) 人為或干擾引起的單擊時(shí)間過短(主要為防干擾)。 (2) 單擊時(shí)間過長(與(1)對(duì)應(yīng),凡事有短就有長,要有度嘛~)。 (3) 按下了多個(gè)鍵(與我的應(yīng)用需要相悖,所以非法)。這里有可能是同時(shí)按的,也有可能是異步按下的。 (4) 快速多次按同一個(gè)鍵。這種情況可以歸結(jié)到(1)。 (5) 我覺得沒有了,元芳,你怎么看??
一種基于定時(shí)器按鍵檢測(cè)程序(已測(cè)試).rar
(527.02 KB, 下載次數(shù): 260)
2014-12-20 18:30 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|