最近2019年日本中文字幕免费,亚洲色久悠悠av在线观看,蜜桃成人无码区免费视频网站,秋霞鲁丝片成人无码

你的位置:首頁(yè) > 互連技術(shù) > 正文

技巧分享:如何在FPGA內(nèi)實(shí)現(xiàn)按鍵消抖?

發(fā)布時(shí)間:2015-01-08 責(zé)任編輯:sherryyu

【導(dǎo)讀】在FPGA內(nèi)實(shí)現(xiàn)按鍵消抖的方法多種多樣,但是最簡(jiǎn)單的是采用移位寄存器的方法進(jìn)行消抖。因?yàn)橐莆患拇嫫鞯姆椒ú恍枰獙?duì)時(shí)鐘進(jìn)行分頻,也不需要進(jìn)行延時(shí)等復(fù)雜操作。本文就為大家講解這種在FPGA內(nèi)實(shí)現(xiàn)按鍵消抖的方法。
 
抖動(dòng)的產(chǎn)生
 
通常的按鍵所用開(kāi)關(guān)為機(jī)械彈性開(kāi)關(guān),當(dāng)機(jī)械觸點(diǎn)斷開(kāi)、閉合時(shí),由于機(jī)械觸點(diǎn)的彈性作用,一個(gè)按鍵開(kāi)關(guān)在閉合時(shí)不會(huì)馬上穩(wěn)定地接通,在斷開(kāi)時(shí)也不會(huì)一下子斷開(kāi)。因而在閉合及斷開(kāi)的瞬間均伴隨有一連串的抖動(dòng),為了不產(chǎn)生這種現(xiàn)象而作的措施就是按鍵消抖。
 
抖動(dòng)時(shí)間
 
抖動(dòng)時(shí)間的長(zhǎng)短由按鍵的機(jī)械特性決定,一般為5ms~10ms。這是一個(gè)很重要的時(shí)間參數(shù),在很多場(chǎng)合都要用到按鍵穩(wěn)定閉合時(shí)間的長(zhǎng)短則是由操作人員的按鍵動(dòng)作決定的,一般為零點(diǎn)幾秒至數(shù)秒。鍵抖動(dòng)會(huì)引起一次按鍵被誤讀多次。為確保FPGA對(duì)鍵的一次閉合僅作一次處理,必須去除鍵抖動(dòng)。在鍵閉合穩(wěn)定時(shí)讀取鍵的狀態(tài),并且必須判別到鍵釋放穩(wěn)定后再作處理。
按鍵抖動(dòng)
圖1 按鍵抖動(dòng)
 
FPGA內(nèi)實(shí)現(xiàn)消抖的方法
 
在FPGA內(nèi)實(shí)現(xiàn)按鍵消抖的方法多種多樣,但是最簡(jiǎn)單的是采用移位寄存器的方法進(jìn)行消抖。因?yàn)橐莆患拇嫫鞯姆椒ú恍枰獙?duì)時(shí)鐘進(jìn)行分頻,也不需要進(jìn)行延時(shí)等復(fù)雜操作,即可實(shí)現(xiàn)對(duì)按鍵邊沿的檢測(cè)。假設(shè)未按下時(shí)鍵值=1.
 
1、在無(wú)鍵按下時(shí),移位寄存器samp[7:0]始終采集到高電平,即samp[7:0]=8''b1111_1111;
 
2、當(dāng)鍵按下時(shí),samp[7:0]將采集到低電平,數(shù)據(jù)的變化方式為samp[7:0]=8''b1111_1110-->8''b1111_1100-->8''b1111_1000--> ........——>8''b0000_0000;samp[7:0]=8''b1111_1110即為按鍵下降沿。
 
3、當(dāng)松開(kāi)按鍵時(shí),samp[7:0]將重新采集到高電平,數(shù)據(jù)變化方式為samp[7:0]=8''b0000_0001-->8''b0000_0011--> ........-->8''b1111_1111;當(dāng)samp[7:0]=8''b0111_1111時(shí),即為按鍵上升沿。
移位寄存器消抖原理圖
圖2 移位寄存器消抖原理圖
[page]

參考Verilog代碼
 
//模塊名:EdgeDetect,邊沿檢測(cè)
 
//button:按鍵,無(wú)鍵按下時(shí)為高電平//clk:10M時(shí)鐘
 
//rst:復(fù)位按鈕,低電平有效
 
//rise:檢測(cè)到上升沿,高電平有效,寬度為1個(gè)clk
 
//fall:檢測(cè)到下降沿,高電平有效,寬度為1個(gè)clk
 
module EdgeDetect(
 
input clk,
 
input rst,
 
input button,
 
output reg rise,
 
output reg fall
 
);
 
reg[7:0] samp;//移位寄存器采集button鍵值
 
//移位寄存器采集button信息
 
always@(posedge clk or negedge rst)
 
begin
 
if(!rst)
 
samp<=8''b1111_1111;
 
else
 
samp<={samp[7:1],button};
 
end
 
//產(chǎn)生上升沿信息
 
always@(posedge clk or negedge rst)
 
begin
 
if(!rst)
 
rise<=1''b0;
 
else if(samp==8''b1111_1110)
 
rise<=1''b1;
 
else
 
rise<=1''b0;
 
end
 
//產(chǎn)生下降沿信息
 
always@(posedge clk or negedge rst)
 
begin
 
if(!rst)
 
fall<=1''b0;
 
else if(samp==8''b0111_1111)
 
fall<=1''b1;
 
else
 
fall<=1''b0;
 
end
 
endmodule
 
要采購(gòu)移位寄存器么,點(diǎn)這里了解一下價(jià)格!
特別推薦
技術(shù)文章更多>>
技術(shù)白皮書(shū)下載更多>>
熱門(mén)搜索
?

關(guān)閉

?

關(guān)閉

色窝窝亚洲av网在线观看| 国产97在线 | 免费| 先锋影音亚洲中文字幕av| 双性受抽搐潮喷调教老师与学生| 人妻在卧室被老板疯狂进入| 国产综合在线观看| 人妻少妇av中文字幕乱码| 性一交一乱一色一视频| 无人区乱码一区二区三区| 国产又色又爽又刺激在线播放| 精品丝袜av在线观看视频| 一区二区三区在线 | 欧| 疯狂揉小泬到失禁高潮| 国产成人精品一区二区三区不卡| 久久精品国产亚洲av麻豆蜜芽 | a级毛片无码免费真人| 国产精品久久久久精品三级卜| 俄罗斯ve乳librederm| 亚洲国产精品无码中文字| 国产av无码专区亚洲版综合| 大胆人体艺术| 日本潮水rapper超多| 大肉蒂被嘬的好爽h娇门吟| 日韩av无码| 调教超级yin荡玩物学生男男| 又爽又色禁片1000视频免费看| 极品yin荡人妻合集h| 国精产品一区二区三区有限公司 | 驯服人妻hd中字日本| 歪歪漫画在线观看官网免费| AV香蕉内射区| 夜夜嗨av一区二区三区| 国产欧美精品区一区二区三区| 成人做爰视频www| 色偷偷88888欧美精品久久久| 婷婷亚洲五月色综合久久| 年轻丰满的继牳4伦理| 无码人妻精品一区二区蜜桃| 我的奶头被客人吸得又肿又红又痛| 久久精品久久久久观看99水蜜桃| 国产精品宾馆在线精品酒店 |