什么是開關(guān)彈跳,如何使用脫波電路防止它
什么是Switch bounce ?
當(dāng)我們按下按鈕或撥動開關(guān)或微動開關(guān)時,兩個金屬部件接觸以短路供電。但它們不會立即連接,而是在實(shí)際穩(wěn)定連接之前,金屬部分連接和斷開幾次。釋放按鈕時也會發(fā)生同樣的事情。這導(dǎo)致誤觸發(fā)或多次觸發(fā),如按鈕被按多次。這就像一個彈跳的球從高處落下,它一直在表面上彈跳,直到它靜止下來。
簡單地說,我們可以說開關(guān)彈跳是任何開關(guān)的非理想行為,它會產(chǎn)生單個輸入的多個躍遷。當(dāng)我們處理電源電路時,開關(guān)彈跳不是一個主要問題,但當(dāng)我們處理邏輯或數(shù)字電路時,它會引起問題。因此,為了消除電路的彈跳,使用開關(guān)去噪電路。
什么是軟件貶值?
軟件也會出現(xiàn)脫模,而編程人員會添加延遲來消除軟件脫模。添加延遲會迫使控制器停止一段特定的時間,但是在程序中添加延遲并不是一個好的選擇,因?yàn)樗鼤和3绦虿⒃黾犹幚頃r間。最好的方法是在軟件彈跳的代碼中使用中斷。Arduino有代碼來防止軟件反彈。
交換機(jī)脫扣方法
首先,我們將演示沒有開關(guān)脫殼的電路。
當(dāng)按鈕彈跳時,您還可以在示波器中看到波形。它顯示了在按鈕切換過程中發(fā)生了多少彈跳。
有三種常用的方法來防止電路的開關(guān)彈跳。
?硬件消除抖動
?RC消除抖動
?開關(guān)脫扣IC
1. 硬件消除抖動
在硬件脫波技術(shù)中,我們使用S-R觸發(fā)器來防止電路的開關(guān)反彈。這是最好的反駁方法。
組件的要求
?Nand Gate IC 74HC00
?撥動開關(guān)
?電阻(10k -2nos.)
?電容器(0.1 uf)
?LED
?電路試驗(yàn)板
線路圖
硬件脫雜電路的工作原理
電路由兩個Nand門(74HC00 IC)組成一個SR觸發(fā)器。正如您在電路圖中所看到的,每當(dāng)切換到A側(cè)時,輸出邏輯就會得到“HIGH”。在這里,我們使用示波器來檢測彈跳。并且,正如您在下面給出的波形中看到的那樣,邏輯是以輕微的曲線移動而不是彈跳。電路中使用的電阻是上拉電阻。
無論何時,開關(guān)在觸點(diǎn)之間移動以產(chǎn)生彈跳,觸發(fā)器保持輸出,因?yàn)椤?”從與門的輸出反饋。
2. 電阻-電容消除抖動
R-C僅由其名稱定義,該電路使用RC網(wǎng)絡(luò)保護(hù)開關(guān)反彈。電路中的電容對開關(guān)信號的瞬時變化進(jìn)行濾波。當(dāng)開關(guān)處于開路狀態(tài)時,電容器兩端的電壓保持為零。最初,當(dāng)開關(guān)打開時,電容器通過R1和R2電阻充電。
當(dāng)開關(guān)閉合時,電容器開始放電至零,因此反相施密特觸發(fā)器輸入端的電壓為零,因此輸出變?yōu)楦唠娖健?
在彈跳狀態(tài)下,電容器停止電壓在Vin,直到它達(dá)到Vcc或地。
為了提高RC脫殼的速度,我們可以連接一個二極管,如下圖所示。因此,它減少了電容器的充電時間。
3. 開關(guān)脫扣IC
市場上有用于開關(guān)開啟的ic。一些退出ic是MAX6816, MC14490和LS118。
下面是使用MAX6818進(jìn)行開關(guān)脫扣的電路圖。
所以在這里我們學(xué)習(xí)了按鈕如何創(chuàng)建開關(guān)彈跳效果,以及如何通過使用開關(guān)脫波電路來防止它。
本文編譯自circuitdigest