高傳輸量.高供電量. 兼容性強(qiáng).穩(wěn)定耐用
漢洋咨詢熱線
0769-82988901單片機(jī)撥動(dòng)開關(guān)接觸抖動(dòng)問題的解決方案
撥動(dòng)開關(guān)元件可以給單片機(jī)輸入引腳提供邏輯電平信號(hào)供單片機(jī)檢測(cè),是一種較為簡(jiǎn)單的輸入方式。在實(shí)踐中撥動(dòng)開關(guān)信號(hào)的輸入并不是那么簡(jiǎn)單,還需要考慮開關(guān)的接觸抖動(dòng)這樣一個(gè)常見問題。當(dāng)開關(guān)被按下的瞬間,由于存在機(jī)械反彈或者振動(dòng)或者觸點(diǎn)污垢而引起接觸抖動(dòng),會(huì)產(chǎn)生一系列毛刺脈沖,而不是產(chǎn)生一個(gè)理想的從低電平到高電平的跳變。
?
解決撥動(dòng)開關(guān)抖動(dòng)這個(gè)問題更簡(jiǎn)易的方法,是接入一個(gè)簡(jiǎn)單的RC濾波電路,濾除電壓的快速變化。由于開關(guān)的抖動(dòng)時(shí)間是不太確定的,因此RC電路的電阻值和電容值也就不能精準(zhǔn)地確定。一般情況下,建議采用電阻值為100kΩ的電阻和電容值為100nF的電容。
如果對(duì)于撥動(dòng)開關(guān)穩(wěn)定性要求更高,還可以采用一種更完善的解決措施。例如核心采用一片標(biāo)準(zhǔn)數(shù)字集成電路74HCO0構(gòu)成的一個(gè)RS觸發(fā)器,觸發(fā)器的兩個(gè)輸入端連接一只兩檔撥動(dòng)開關(guān)。觸發(fā)器一旦檢測(cè)到開關(guān)觸點(diǎn)產(chǎn)生的第一個(gè)脈沖,將立刻改變其輸出端的邏輯狀態(tài),并且會(huì)維持不變。這種解決方案成本較高,但是可以使撥動(dòng)開關(guān)的抖動(dòng)問題能夠有效徹底地根除。由于該電路中沒有采用電容元件,因此即使很短的有效脈沖也能夠保障可靠接收。
除了上述的這些硬件解決方案,也有一種簡(jiǎn)單的軟件解決方案。當(dāng)程序在檢查輸入引腳狀態(tài)時(shí)首次發(fā)現(xiàn)邏輯電平發(fā)生變化,就在等待一段延時(shí)之后再次進(jìn)行核驗(yàn)。如果電平變化被確認(rèn),這意味著一個(gè)撥動(dòng)開關(guān)確實(shí)改變了它的位置。這種方案的成本低,無(wú)噪聲,容錯(cuò)能力強(qiáng)。其缺點(diǎn)類似于阻容型消抖開關(guān),對(duì)于撥動(dòng)開關(guān)按下持續(xù)時(shí)間比程序延時(shí)更短的有效輸入脈沖,不能保證準(zhǔn)確接收。
?
掃一掃二維碼
掃一掃微信號(hào)