日韩欧美自拍在线观看-欧美精品在线看片一区二区-高清性视频一区二区播放-欧美日韩女优制服另类-国产精品久久久久久av蜜臀-成人在线黄色av网站-肥臀熟妇一区二区三区-亚洲视频在线播放老色-在线成人激情自拍视频

FPGA開發(fā)中按鍵消抖與單脈沖發(fā)生器電路

出處:rock0008 發(fā)布于:2009-12-22 10:52:12

  FPGA開發(fā)中常用到單脈沖發(fā)生器。一些文章介紹過產(chǎn)生單脈沖的電路,產(chǎn)生的單脈沖脈寬和相位都不能與時(shí)鐘同步,只能用在要求不嚴(yán)格的場(chǎng)合。筆者目前從事的課題中需要一個(gè)與時(shí)鐘周期等寬,相位與時(shí)鐘周期相同的鍵控單脈沖發(fā)生器。鍵控單脈沖發(fā)生器需要按鍵產(chǎn)生單脈沖,但大多數(shù)帶有FPGA芯片開發(fā)板提供的是高頻時(shí)鐘脈沖,按鍵時(shí)會(huì)存在抖動(dòng)問題。為此筆者專門設(shè)計(jì)了按鍵消抖電路消除抖動(dòng),為產(chǎn)生單脈沖提供穩(wěn)定的按鍵信號(hào)。

  1 按鍵消抖電路原理

  為了使按鍵消抖電路模塊簡(jiǎn)潔,移植性好,在此用計(jì)數(shù)器的方式實(shí)現(xiàn)按鍵消抖的功能。

  計(jì)數(shù)器模值n根據(jù)抖動(dòng)信號(hào)的脈沖寬度和采樣脈沖信號(hào)CLK的周期大小決定。計(jì)數(shù)模值n=延時(shí)/脈沖信號(hào)采樣周期。一般按鍵抖動(dòng)時(shí)間為5~10 ms,甚至更長(zhǎng)。筆者用的開發(fā)板提供的系統(tǒng)時(shí)鐘為24 MHz,按公式計(jì)算,當(dāng)計(jì)數(shù)器模值取20位,計(jì)數(shù)到219即h8 0000時(shí),大約延時(shí)22 ms。計(jì)數(shù)期間認(rèn)為是按鍵的抖動(dòng)信號(hào),不做采樣;計(jì)數(shù)器停止計(jì)數(shù),認(rèn)為采樣信號(hào)為穩(wěn)定按鍵信號(hào)。這樣就可以把按鍵時(shí)間小于22 ms的抖動(dòng)信號(hào)濾掉。

  引入一個(gè)采樣脈沖信號(hào)CLK,并輸入按鍵信號(hào)KEY。KEY輸入低電平,計(jì)數(shù)器開始做加法計(jì)數(shù),當(dāng)計(jì)數(shù)到h8 0000即計(jì)數(shù)器中位Q19為1,計(jì)數(shù)器停止計(jì)數(shù),輸出Q19,作為按鍵的穩(wěn)定輸出,計(jì)數(shù)期間Q19輸出為0;KEY輸入高電平,計(jì)數(shù)器清零,Q19輸出為0。所以該電路需按鍵22 ms才會(huì)得到有效信號(hào)。

  2 鍵控單脈沖發(fā)生器電路原理

  鍵控單脈沖發(fā)生器利用上述電路解決按鍵消抖問題,得到穩(wěn)定的信號(hào)。用兩個(gè)D觸發(fā)器和一個(gè)與門產(chǎn)生單脈沖,如圖1所示。

  D觸發(fā)器U2A收到穩(wěn)定信號(hào)D1=1后被觸發(fā)。觸發(fā)器U2A中的Q1端得到與CLK同步的正向脈沖。輸出Q1到D觸發(fā)器U3A,得到比Q1延遲一個(gè)時(shí)鐘周期的的正向脈沖,將Q2端輸出取反得到一個(gè)負(fù)向脈沖。Q1與Qn2的輸出作為一個(gè)與門的輸入,會(huì)輸出一個(gè)脈寬是原時(shí)鐘周期2倍的單脈沖。

  為了使得出的單脈沖脈寬與時(shí)鐘周期相等,相位與時(shí)鐘周期相同,對(duì)圖1中電路設(shè)計(jì)做了改進(jìn),如圖2所示。

  圖2中時(shí)鐘送入D觸發(fā)器前加了非門,使Q1端產(chǎn)生與nCLK(CLK的反向脈沖信號(hào))同步的正向脈沖,與門輸出單脈沖與CLK差半個(gè)時(shí)鐘周期,作為D觸發(fā)器U4A的輸入D4,在CLK上升沿U4A被觸發(fā),使單脈沖脈寬與時(shí)鐘周期相同,實(shí)現(xiàn)了等脈寬。并延遲了半個(gè)時(shí)鐘周期使輸出脈沖與時(shí)鐘周期對(duì)應(yīng),實(shí)現(xiàn)了相位調(diào)整。整個(gè)單脈沖發(fā)生器的時(shí)序圖如圖3所示(圖3中的t1,t2是任意鍵按下與鍵抬起時(shí)刻)。


  3 基于FPGA下的按鍵消抖計(jì)數(shù)器和單脈沖發(fā)生器的Verilog HDL語言描述

  圖1中的按鍵消抖計(jì)數(shù)器電路,其進(jìn)行描述的Verilog HDL語言代碼如下:

  代碼中的復(fù)位n_rst和按鍵n_Kd都是低電平有效。鍵控單脈沖發(fā)生器的Verilog HDL語言代碼如下:

  代碼中還用到了D觸發(fā)器DFF,實(shí)現(xiàn)這個(gè)模塊的代碼比較簡(jiǎn)單,此處從略。

  4 結(jié) 語

  該文中的設(shè)計(jì),實(shí)現(xiàn)了鍵控單脈沖發(fā)生器,產(chǎn)生脈寬等于時(shí)鐘脈沖,輸出脈沖與時(shí)鐘周期對(duì)應(yīng)的單脈沖,并解決了按鍵消抖問題,可以應(yīng)用到各種需要產(chǎn)生單脈沖的FPGA電路設(shè)計(jì)中。按鍵消抖電路可獨(dú)立地應(yīng)用于其他FPGA電路設(shè)計(jì)中。本文中設(shè)計(jì)的20 b計(jì)數(shù)器是根據(jù)筆者課題需要而定。其他設(shè)計(jì)中可以根據(jù)按鍵抖動(dòng)時(shí)間可利用公式計(jì)算出計(jì)數(shù)器模值設(shè)計(jì)計(jì)數(shù)器。


  
關(guān)鍵詞:FPGA開發(fā)中按鍵消抖與單脈沖發(fā)生器電路FPGA

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

1000萬的FPGA芯片長(zhǎng)什么樣?
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機(jī)號(hào)碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時(shí)間周一至周五
9:00-17:30

關(guān)注官方微信號(hào),
第一時(shí)間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動(dòng)力!意見一經(jīng)采納,將有感恩紅包奉上哦!