基于FPGA的多路視頻通道控制
由于撥動開關(guān)是機械觸點,當其斷開、閉合時會有相應(yīng)的前沿、后沿抖動,為了使每次動作都只做一次響應(yīng),就必須對原始開關(guān)信號做去抖動處理。抖動信號可以分為2種:一種是時間很短的干擾信號,如高頻毛刺;另一種是時間較長的干擾信號,如開關(guān)抖動。這里的撥動開關(guān)都是人為操作,因此每次觸發(fā)的時間都不會很短,一般小于10 Hz。根據(jù)上述分析開關(guān)抖動信號屬于后一種。因此在每次開關(guān)操作后,對其產(chǎn)生的信號進行連續(xù)采樣,如果每次采樣都是低電平或者都是高電平,就認為此信號不是抖動,確實開關(guān)狀態(tài)發(fā)生了變化。整個設(shè)計過程使用Verilog硬件描述語言編寫,然后在QuartusⅡ平臺上編譯,并采用SignalTapⅡLogic Arlalvzer對信號采樣分析,調(diào)試通過后連同其他程序一起燒寫進FPGA的配置器件EPCSl6中。圖2~圖4分別是各個開關(guān)動作去抖動前和去抖動后的實時信號采樣圖。去抖動模塊中的部分代碼如下:
評論