999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

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

2010-01-20 01:44:00邢自茹史明健
現代電子技術 2009年21期

邢自茹 史明健

摘 要:在介紹FPGA開發中按鍵消抖電路和單脈沖發生器電路原理的基礎上,設計實現了鍵控單脈沖發生器,利用計數器解決了按鍵高頻消抖問題,并通過按鍵產生與時鐘脈沖完全相同的單脈沖。該單脈沖鍵控發生器可獨立應用于其他FPGA電路設計中。在Quartus環境下給出Verilog HDL語言的行為及描述,并進行仿真實驗,結果顯示該電路合理可行。

關鍵詞:單脈沖發生器;按鍵消抖;FPGA;Verilog HDL

中圖分類號:TN782 文獻標識碼:A

文章編號:1004-373X(2009)21-171-02

Elimination Buffeting of Keystroke and Single Pulse Generator

Circuit in FPGA Development Process

XING Ziru,SHI Mingjian

(Inner Mongolia University of Technology,Huhhot,010051,China)

Abstract:The circuit principle of elimination buffeting of keystroke and a single pulse generator in FPGA development are introduced,and keying single pulse generator is achieved.It solves eliminating high-frequency buffeting problem by a counter and produces the single pulse which has the same pulse width and same phase with clock cycle.Keying a single pulse generator can be applied to other independent FPGA design.The behavior and description based on Verilog HDL language are given and it is simulated in Quartus software,the method is proved logical and feasible as a result.

Keywords:single pulse generator;elimination buffeting of keystroke;FPGA;Verilog HDL

FPGA開發中常用到單脈沖發生器。一些文章介紹過產生單脈沖的電路,產生的單脈沖脈寬和相位都不能與時鐘同步,只能用在要求不嚴格的場合。筆者目前從事的課題中需要一個與時鐘周期等寬,相位與時鐘周期相同的鍵控單脈沖發生器。鍵控單脈沖發生器需要按鍵產生單脈沖,但大多數帶有FPGA芯片的開發板提供的是高頻時鐘脈沖,按鍵時會存在抖動問題。為此筆者專門設計了按鍵消抖電路消除抖動,為產生單脈沖提供穩定的按鍵信號。

1 按鍵消抖電路原理[1]

為了使按鍵消抖電路模塊簡潔,移植性好,在此用計數器的方式實現按鍵消抖的功能。

計數器模值n根據抖動信號的脈沖寬度和采樣脈沖信號CLK的周期大小決定。計數器模值n=延時/脈沖信號采樣周期。一般按鍵抖動時間為5~10 ms,甚至更長。筆者用的開發板提供的系統時鐘為24 MHz,按公式計算,當計數器模值取20位,計數到219即h8_0000時,大約延時22 ms。計數期間認為是按鍵的抖動信號,不做采樣;計數器停止計數,認為采樣信號為穩定按鍵信號。這樣就可以把按鍵時間小于22 ms的抖動信號濾掉。

引入一個采樣脈沖信號CLK,并輸入按鍵信號KEY。KEY輸入低電平,計數器開始做加法計數,當計數到h8_0000即計數器中最高位Q19為1,計數器停止計數,輸出Q19,作為按鍵的穩定輸出,計數期間Q19輸出為0;KEY輸入高電平,計數器清零,Q19輸出為0。所以該電路需按鍵22 ms才會得到有效信號。

2 鍵控單脈沖發生器電路原理[2,3]

鍵控單脈沖發生器 [4]利用上述電路解決按鍵消抖問題,得到穩定的信號。用兩個D觸發器[5]和一個與門產生單脈沖,如圖1所示。

圖1 鍵控單脈沖發生器電路圖

D觸發器U2A收到穩定信號D1=1后被觸發。觸發器U2A中的Q1端得到與CLK同步的正向脈沖。輸出Q1到D觸發器U3A,得到比Q1延遲一個時鐘周期的的正向脈沖,將Q2端輸出取反得到一個負向脈沖。Q1與Qn2的輸出作為一個與門的輸入,會輸出一個脈寬是原時鐘周期2倍的單脈沖。

為了使得出的單脈沖脈寬與時鐘周期相等,相位與時鐘周期相同,對圖1中電路設計做了改進,如圖2所示[6]。

圖2 相位調整后單脈沖發生器電路圖

圖2中時鐘送入D觸發器前加了非門,使Q1端產生與n_CLK(CLK的反向脈沖信號)同步的正向脈沖,與門輸出單脈沖與CLK差半個時鐘周期,作為D觸發器U4A的輸入D4,在CLK上升沿U4A被觸發,使單脈沖脈寬與時鐘周期相同,實現了等脈寬。并延遲了半個時鐘周期使輸出脈沖與時鐘周期對應,實現了相位調整。整個單脈沖發生器的時序圖如圖3所示(圖3中的t1,t2是任意鍵按下與鍵抬起時刻)。

圖3 單脈沖發生器時序圖

3 基于FPGA下的按鍵消抖計數器和單脈沖發生器的Verilog HDL語言描述[7,8]

圖1中的按鍵消抖計數器電路,其進行描述的Verilog HDL語言[9]代碼如下:

module kb_debounce(clk,n_rst,n_Kd,Krdy);

input clk,n_rst,n_Kd;

output Krdy;

reg[19:0] Q;

assign Krdy = Q[19];

always @ (posedge clk or negedge n_rst)

begin

if(!n_rst) Q <= 0;

else if(n_Kd == 1′b1)Q <= 0;

else if(Q<20′h8_0000) Q <= (Q+1)% 21′h10_0000;

end

endmodule

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

module kb_click(clk,n_rst,n_Kd,click);

input clk,n_rst,n_Kd;

output click;

wire click,U1,U2,U3,U4;

kb_debounce(.clk(clk),.n_rst(n_rst),.n_Kd(n_Kd),.Krdy(U1));

DFF (.clk(~clk),.n_rst(n_rst),.D(U1),.Q(U2));

DFF(.clk(~clk),.n_rst(n_rst),.D(U2),.Q(U3));

assign U4=(U2 &~U3);

DFF(.clk(clk),.n_rst(n_rst),.D(U4),.Q(click));

Endmodule

代碼中還用到了D觸發器DFF,實現這個模塊的代碼比較簡單,此處從略。

4 結 語

該文中的設計,實現了鍵控單脈沖發生器,產生脈寬等于時鐘脈沖,輸出脈沖與時鐘周期對應的單脈沖,并解決了按鍵消抖問題,可以應用到各種需要產生單脈沖的FPGA電路設計中。

按鍵消抖電路可獨立地應用于其他FPGA電路設計中。本文中設計的20 b計數器是根據筆者課題需要而定。其他設計中可以根據按鍵抖動時間可利用公式計算出計數器模值設計計數器。

參考文獻

[1]實用可控的按鍵抖動消除電路[EB/OL].http://www.ic37.com.

[2]余孟嘗.數字電子技術基礎[M].北京:高等教育出版社,1999.

[3]羅斯.數字系統設計與VHDL[M].金明錄,劉倩,譯.北京:電子工業出版社,2008.

[4]單脈沖發生器電路[EB/OL].http://www.dzcpkf.com.

[5]李亞伯.數字電路與系統 [M].北京:電子工業出版社,2001.

[6]王兢.數字電路與系統[M].北京:電子工業出版社,2007.

[7]夏宇聞.Verilog數字系統設計教程[M].北京:北京航空航天大學出版社,1996.

[8]楊恒.FPGA/VHDL快速工程實踐入門與提高[M].北京:北京航空航天大學出版社,2003.

[9]常曉明,李媛媛.Verilog-HDL工程實踐入門[M].北京:北京航空航天大學出版社,2005.

[10]王誠,吳繼華.Altera FPGA/CPLD設計[M].北京:人民郵電出版社,2005.

作者簡介 邢自茹 女,1982年出生,在讀碩士研究生。主要研究方向為計算機應用技術網絡與通訊。

史明健 男,1980年出生,在讀碩士研究生。主要研究方向為計算機應用技術。

主站蜘蛛池模板: 日本高清视频在线www色| 一级爱做片免费观看久久| 国产精品浪潮Av| 久久人人97超碰人人澡爱香蕉| 日韩成人午夜| 日韩黄色在线| 日本在线国产| 色婷婷成人| 国产成人精品一区二区三区| 国产精品偷伦视频免费观看国产 | 在线日韩日本国产亚洲| 欧美日韩亚洲国产主播第一区| 日韩乱码免费一区二区三区| 麻豆a级片| 久久这里只有精品免费| 精品自拍视频在线观看| 真实国产乱子伦视频| 国产男人的天堂| 欧美日韩精品一区二区在线线| 天天躁夜夜躁狠狠躁躁88| 伊人久久影视| 噜噜噜久久| 国产福利一区二区在线观看| 国产精品不卡永久免费| 99精品久久精品| 欧美高清视频一区二区三区| 国产女主播一区| 欧美性猛交一区二区三区| www欧美在线观看| 亚洲天堂久久新| 四虎亚洲精品| 亚洲av无码久久无遮挡| 无遮挡一级毛片呦女视频| 极品国产在线| 欧美视频在线观看第一页| 日韩毛片免费观看| 亚洲国产综合自在线另类| 国产地址二永久伊甸园| 午夜视频www| 午夜日本永久乱码免费播放片| 亚洲精品福利视频| 真实国产乱子伦视频| 毛片在线播放a| 日韩欧美国产另类| 国产高清精品在线91| 亚洲水蜜桃久久综合网站| а∨天堂一区中文字幕| 高清国产在线| 一级香蕉人体视频| 国产精品性| 日韩人妻精品一区| 啪啪永久免费av| AV老司机AV天堂| 久久久四虎成人永久免费网站| 久久大香香蕉国产免费网站| 国产精品手机视频一区二区| 亚洲人成影视在线观看| 欧美a在线看| 亚洲婷婷六月| 国产chinese男男gay视频网| 超清无码一区二区三区| 色呦呦手机在线精品| 日韩欧美一区在线观看| 美女被躁出白浆视频播放| 超清无码一区二区三区| 国产日韩欧美成人| 国产亚洲精品自在久久不卡 | 亚洲欧洲日产国码无码av喷潮| 幺女国产一级毛片| 国产h视频在线观看视频| 性视频久久| 伦精品一区二区三区视频| 国产精品成人一区二区不卡| 精品视频福利| 国产成人凹凸视频在线| 人人爱天天做夜夜爽| 伊人91在线| 国产黄色免费看| 国产偷国产偷在线高清| 91精品在线视频观看| 欧美激情综合| 欧美人人干|