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年出生,在讀碩士研究生。主要研究方向為計算機應用技術。

主站蜘蛛池模板: 91精品国产91久无码网站| 成人国产免费| 久久精品人人做人人爽电影蜜月 | 亚洲中文在线看视频一区| 四虎精品免费久久| 精品无码视频在线观看| 亚洲首页在线观看| 国产精品视频第一专区| 中文字幕乱码二三区免费| 亚洲国产精品久久久久秋霞影院| 精品少妇人妻一区二区| 久久亚洲国产最新网站| 亚洲视频无码| 久久一色本道亚洲| 囯产av无码片毛片一级| 国产喷水视频| 亚洲精品国产首次亮相| 国产99视频精品免费视频7 | 国产免费人成视频网| 男人的天堂久久精品激情| 亚洲娇小与黑人巨大交| 久久99国产乱子伦精品免| 国产亚洲欧美在线专区| 久草性视频| 国产91色在线| 国精品91人妻无码一区二区三区| 中文字幕亚洲专区第19页| 99精品伊人久久久大香线蕉| 男女男免费视频网站国产| 无码高潮喷水在线观看| 99热国产这里只有精品9九| 国产精品爽爽va在线无码观看| 国产不卡一级毛片视频| 亚洲精品天堂自在久久77| 国产区福利小视频在线观看尤物| 在线精品欧美日韩| 啪啪国产视频| 欧美日韩另类在线| a级毛片网| 欧美精品1区| 麻豆国产原创视频在线播放| 国产成人乱码一区二区三区在线| 一级不卡毛片| 成人福利在线免费观看| 一级爆乳无码av| 精品少妇三级亚洲| 国产视频你懂得| 色综合网址| 久久精品一品道久久精品| 尤物亚洲最大AV无码网站| 日本人真淫视频一区二区三区| 亚洲久悠悠色悠在线播放| 久久这里只精品热免费99| 99热这里都是国产精品| 久久一日本道色综合久久| 免费 国产 无码久久久| 不卡无码网| 日韩毛片视频| 色悠久久久| 国产精品白浆无码流出在线看| 亚洲av无码人妻| 午夜小视频在线| 日本草草视频在线观看| 制服丝袜一区| 国产一二视频| 欧美成人免费一区在线播放| 亚洲av无码牛牛影视在线二区| 午夜毛片免费看| 国内精品免费| 国产男女XX00免费观看| 激情网址在线观看| 国产精品观看视频免费完整版| 999国产精品| 热思思久久免费视频| 亚洲精品欧美日韩在线| 久久综合一个色综合网| 国产精品区视频中文字幕| 亚洲午夜天堂| 四虎成人免费毛片| 97视频免费在线观看| www.91中文字幕| 国产免费人成视频网|