新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 怎樣在FPGA中處理開(kāi)關(guān)控制信號(hào)

怎樣在FPGA中處理開(kāi)關(guān)控制信號(hào)

作者: 時(shí)間:2010-12-10 來(lái)源:網(wǎng)絡(luò) 收藏

本系統(tǒng)設(shè)計(jì)利用間接2塊MAX4312選通所需要的視頻通道,實(shí)現(xiàn)各個(gè)視頻通道間相互切換。根據(jù)的設(shè)計(jì)思想在中對(duì)撥動(dòng)輸入做去抖動(dòng),然后對(duì)不同的操作進(jìn)行編碼,最后將送給DSP進(jìn)行

l 系統(tǒng)總體結(jié)構(gòu)
系統(tǒng)總體結(jié)構(gòu)如圖1所示。在1臺(tái)工業(yè)織布機(jī)上安裝了16個(gè)CCD圖像傳感器對(duì)布匹進(jìn)行圖像監(jiān)控,通過(guò)2片MAX4312選擇16路圖像視頻信號(hào)中的一路,經(jīng)可編程視頻輸入器件SAA7111后從VP0輸出數(shù)字圖像信號(hào)。同時(shí)SAA7111輸出相應(yīng)的行、場(chǎng)同步信號(hào)HS,VS以及與HS鎖定的時(shí)鐘信號(hào)LLC、LLC2,利用這些信號(hào)在EP3C25F324C8中對(duì)圖像進(jìn)行預(yù)處理。然后將處理后的圖像通過(guò)PPI口送給BF561中進(jìn)行算法處理,最后將處理結(jié)果送給報(bào)警和狀態(tài)指示裝置,實(shí)現(xiàn)織布機(jī)告警功能。為了使圖像監(jiān)控更方便,該系統(tǒng)設(shè)計(jì)增添了電平撥動(dòng)開(kāi)關(guān)和脈沖撥動(dòng)開(kāi)關(guān)。電平開(kāi)關(guān)使輸入圖像停止切換,固定于其中一路視頻輸人圖像。脈沖開(kāi)關(guān)可以左右撥動(dòng),每次向左或向右撥動(dòng)都會(huì)產(chǎn)生一個(gè)很短的上升沿脈沖,同時(shí)圖像向前或向后進(jìn)行切換,實(shí)現(xiàn)手動(dòng)選擇視頻輸入通道的功能。

本文引用地址:http://butianyuan.cn/article/151262.htm



2 軟件模塊設(shè)計(jì)
2.1 開(kāi)關(guān)信號(hào)

實(shí)際工程中,BF56l連接在上的PF引腳比較少。為了節(jié)約資源,只通過(guò)BF561中的BF9來(lái)識(shí)別2個(gè)撥動(dòng)開(kāi)關(guān)的動(dòng)作。因此首先需要將2個(gè)撥動(dòng)開(kāi)關(guān)輸入信號(hào)在FPGA中進(jìn)行處理整合,得到合適的信號(hào)。
本系統(tǒng)開(kāi)關(guān)控制信號(hào)的設(shè)計(jì)思想:由于設(shè)計(jì)這個(gè)信號(hào)的目的是識(shí)別開(kāi)關(guān)控制動(dòng)作。因此,只要任何一個(gè)開(kāi)關(guān)發(fā)生了動(dòng)作就需要產(chǎn)生一個(gè)脈沖。如果只有脈沖信號(hào)就只能知道開(kāi)關(guān)發(fā)生了動(dòng)作,而不知道是哪個(gè)開(kāi)關(guān)發(fā)生了什么動(dòng)作。所以,要識(shí)別具體是哪個(gè)開(kāi)關(guān)發(fā)生了什么動(dòng)作就必須配合雙口RAM中的數(shù)據(jù)進(jìn)行解碼。該系統(tǒng)設(shè)計(jì)的脈沖持續(xù)時(shí)間對(duì)BF561來(lái)說(shuō)并不重要,只要BF561能識(shí)別這個(gè)脈沖即可。由于系統(tǒng)中的2個(gè)撥動(dòng)開(kāi)關(guān),一個(gè)是電平撥動(dòng)開(kāi)關(guān),另一個(gè)是脈沖撥動(dòng)開(kāi)關(guān),因此,只要根據(jù)電平撥動(dòng)開(kāi)關(guān)的動(dòng)作制作相應(yīng)的脈沖信號(hào),再用這個(gè)信號(hào)與脈沖撥動(dòng)開(kāi)關(guān)產(chǎn)生的原始信號(hào)邏輯相與,就能得到所需要的目的信號(hào)。


由于撥動(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)模塊中的部分代碼如下:


上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉