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