延時時間T 太短( T < T’) ,濾波不完整,脈沖寬度大于T 的干擾信號仍然會造成電路的誤動作; 延時時間T 太長( T>>T’) ,會造成資源的浪費,降低電路的工作效率。
這里以某型號的扭子開關(guān)輸入信號為例來介紹如何確定延時時間T。由于扭子開關(guān)的機械觸點存在彈性作用,當(dāng)撥動開關(guān)時,都不可避免地要在觸點閉合及斷開的瞬間產(chǎn)生一連串的抖動。為了能夠更準(zhǔn)確地估測撥動開關(guān)時產(chǎn)生的干擾脈沖寬度T',可以用示波器對開關(guān)信號進(jìn)行多次測量,經(jīng)測量發(fā)現(xiàn)這種扭子開關(guān)信號的抖動時間不會超過1. 5ms。圖1 為沒有經(jīng)過濾波處理的開關(guān)信號波形。
圖1 中,橫坐標(biāo)表示時間,每格代表50 μs,縱坐標(biāo)表示電壓,每格表示1 V。從圖中可以明顯看出,在開關(guān)信號達(dá)到穩(wěn)定狀態(tài)之前,有一連串的抖動,抖動時間不到1. 5 ms。這里根據(jù)實際情況,確定延時時間T = 2 ms。
1. 2 延時濾波程序設(shè)計
延時濾波程序采用一個計數(shù)器來實現(xiàn),計數(shù)器的模值N 取決于延時時間T 和采樣時鐘CLK 的周期TCLK。若計數(shù)器的初始值為0 時,則N = T /TCLK -1。圖2 為編寫延時濾波程序的流程圖。
這里以某型號的扭子開關(guān)輸入信號為例來介紹如何確定延時時間T。由于扭子開關(guān)的機械觸點存在彈性作用,當(dāng)撥動開關(guān)時,都不可避免地要在觸點閉合及斷開的瞬間產(chǎn)生一連串的抖動。為了能夠更準(zhǔn)確地估測撥動開關(guān)時產(chǎn)生的干擾脈沖寬度T',可以用示波器對開關(guān)信號進(jìn)行多次測量,經(jīng)測量發(fā)現(xiàn)這種扭子開關(guān)信號的抖動時間不會超過1. 5ms。圖1 為沒有經(jīng)過濾波處理的開關(guān)信號波形。
圖1 中,橫坐標(biāo)表示時間,每格代表50 μs,縱坐標(biāo)表示電壓,每格表示1 V。從圖中可以明顯看出,在開關(guān)信號達(dá)到穩(wěn)定狀態(tài)之前,有一連串的抖動,抖動時間不到1. 5 ms。這里根據(jù)實際情況,確定延時時間T = 2 ms。
1. 2 延時濾波程序設(shè)計
延時濾波程序采用一個計數(shù)器來實現(xiàn),計數(shù)器的模值N 取決于延時時間T 和采樣時鐘CLK 的周期TCLK。若計數(shù)器的初始值為0 時,則N = T /TCLK -1。圖2 為編寫延時濾波程序的流程圖。