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

基于單片機的一種消抖方法及應用

2014-09-24 00:07:42楊立宏
無線互聯科技 2014年7期
關鍵詞:單片機方法

楊立宏

摘要:鍵盤電路是單片機應用中的常用電路,本文給出了一種基于單片機的利用定時器中斷進行按鍵軟件消抖的方法,在不改變定時器定時時間的情況下可以實現任意消抖延時時間的設定。

關鍵詞:按鍵;軟件消抖;單片機在微型計算機和工業控制應用領域中,開關是必不可少的輸入設備。本文在實際應用的基礎上介紹一種利用單片機定時器產生中斷的方法來實現按鍵的消抖。特點是節省CPU資源,同時對延時時間可自由控制,而不需要改變定時器的定時時間。

1消抖原理

一個按鍵開關在閉合或者斷開時不會馬上穩定,均伴隨有一連串的抖動,抖動的時間長短由按鍵的機械特性決定,一般為5ms~10ms。

軟件消抖主要采用延時或者中斷實現:一種是用延時子程序,首先讀取按鍵的狀態為低電平,然后調用延時子程序,執行完延時之后,再次判斷此時按鍵的狀態,如果和上次相同則證明被按下,否則被認為是抖動,但此種方法延時時一直占用CPU資源,在多任務的系統中不適合采用此法。另外一種方法則是用中斷的方法,每一次中斷讀取按鍵的狀態,如果與上次讀取的數據不一致則說明當前讀取的是前沿抖動數據,將當前的數據保留,等待下次定時器中斷,如果當前讀取的數據和前次讀取的數據相同則說明讀取的是穩定狀態下的數據,則認為真正有鍵按下。本文同樣也是采用中斷的方法進行消抖。

2按鍵消抖硬件電路及軟件設計

單片機有著豐富的定時器資源,此處使用定時器。實現的方法是:設定定時器定時時間為5ms,定時器定時時間到后,進入中斷處理程序,在中斷處理程序中判斷按鍵的狀態,并預先設定一個字節k[i](初始化為0xff)來存放按鍵的狀態,如果按鍵被按下則將k[i]的最后一位置為0,同時將k[i]左移一位,再將最后一位置1,等待下次定時滿后再判斷。延時時間可以設定為5ms的整數倍。方便之處在于不改變定時器定時時間的情況下可以實現任意消抖延時時間的設定。

⑴自鎖鍵消抖方法:自鎖鍵的特點是按下后一直保持按下的狀態,因此不宜采用中斷的方法,可以采用定時掃描的方法。定義k[i]存放按鍵的狀態。如果按鍵被按下,將k[i]的最后一位置0,并對端口為低電平的次數計數的計數器加1,對端口為高電平的次數計數的計數器清零,將k[i]左移一位,然后將最后一位置成1,并判斷此時計數器是否記滿,記滿則將按下的狀態送出,同時對端口為低電平的次數計數的計數器減1,如此循環。

具體實現程序如下:

if(np10==0)

{

k[5]&=0xfe;

cnt10=cnt10+1;

cnt11=0;

k[5]=k[5]<<1;

k[5]|=0x01;

if(cnt10==4)//如果檢測到連續的4個0,說明此鍵按下,相當于延時20ms

{

ram[1]|=0x01;

cnt10=cnt10-1;

}

}

else

{

k[5]|=0x01;

cnt11=cnt11+1;

cnt10=0;

k[5]=k[5]<<1;

k[5]|=0x01;

if(cnt11==20) //如果1記數器檢測到連續的4個1,則說明按鍵抬起

{

ram[1]&=0xfe;

cnt11=cnt11-1;

}

}

⑵彈起按鍵消抖方法:彈起按鍵的特點是按下,當手松開后又自動彈起,因此按鍵的判斷宜采用中斷的方法。MSP430的P2口具有中斷功能,在按鍵按下的下降沿產生一個中斷,設置標志,然后通過每一次的定時中斷來讀取按鍵狀態,達到消抖的目的。實現方法是:按鍵下降沿進入中斷處理程序,在中斷處理程序中將k[i]最后一位置0,計數器設置為1。然后在定時器中斷程序中讀取按鍵的狀態,如果定時器的4次中斷仍為按下狀態,則認為按鍵按下,送按鍵狀態到相應單元,執行相應操作。具體實現程序如下:

if(count0!=0)

{

if(!(k[0]&0x01))

{

k[0]=k[0]<<1;

k[0]|=0x01;

np20=P2IN&BIT0

if(np20==0)

{

k[0]&=0xfe;

count0=count0+1;

if(count0==21) //如果計數器值為5,則認為按下此鍵,即延時20ms

{

count0=0;

ram[2]&=0xf8;

ram[2]|=0x01;

P6OUT=0x08;

}

}

}

}

3結論

按鍵的消抖有很多方法,本文使用的是基于中斷的方法達到消抖的目的,優點是在不改變定時器定時時間的情況下可以自由設定消抖延時時間。本文介紹的軟件消抖的方法已經在實際應用中得到驗證,對按鍵的消抖達到了很好的效果。

[參考文獻]

[1]沈建華,楊艷琴,翟驍曙.MSP430系列16位超低功耗單片機原理與應用[M].北京:清華大學出版社,2004.11.

猜你喜歡
單片機方法
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
學習方法
小議PLC與單片機之間的串行通信及應用
電子制作(2018年12期)2018-08-01 00:48:04
基于單片機的平衡控制系統設計
電子制作(2017年19期)2017-02-02 07:08:27
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 午夜电影在线观看国产1区| 国产亚洲美日韩AV中文字幕无码成人| 中文无码日韩精品| 一级毛片免费播放视频| 国产亚洲美日韩AV中文字幕无码成人 | 日本亚洲欧美在线| 欧美高清国产| 国产无码精品在线播放 | 久久精品无码国产一区二区三区| 久久女人网| 日本亚洲成高清一区二区三区| 亚洲成人在线播放 | а∨天堂一区中文字幕| 久久精品亚洲热综合一区二区| 狂欢视频在线观看不卡| 国产丝袜第一页| 毛片一级在线| 无码日韩视频| 在线毛片网站| 99久久精品国产麻豆婷婷| 又爽又大又黄a级毛片在线视频 | 免费在线国产一区二区三区精品| 欧美日韩北条麻妃一区二区| 伊人久久综在合线亚洲91| 亚洲精品第五页| 亚洲三级成人| 日韩欧美中文在线| 久久国产精品嫖妓| 奇米精品一区二区三区在线观看| 欧美特级AAAAAA视频免费观看| 国产激情影院| 美女国内精品自产拍在线播放| 91亚洲免费视频| 亚洲区第一页| 久久青草视频| 999福利激情视频| 香蕉久久国产超碰青草| 国产av无码日韩av无码网站 | 狠狠色噜噜狠狠狠狠奇米777| 久久6免费视频| 91国内在线视频| 精品福利视频网| 91毛片网| 色国产视频| P尤物久久99国产综合精品| 国产福利小视频在线播放观看| 在线综合亚洲欧美网站| 日韩精品无码免费一区二区三区 | 潮喷在线无码白浆| 成年av福利永久免费观看| 欧美亚洲国产日韩电影在线| 欧美日韩91| 激情乱人伦| 毛片在线区| 播五月综合| 亚洲黄色网站视频| 亚洲 日韩 激情 无码 中出| 伊人福利视频| 色综合a怡红院怡红院首页| 亚洲天堂网站在线| 一区二区午夜| 日韩国产欧美精品在线| 免费一级毛片在线观看| 国产福利2021最新在线观看| 成人免费黄色小视频| 免费又黄又爽又猛大片午夜| 国产爽歪歪免费视频在线观看| 九色综合伊人久久富二代| 国内精品91| 色悠久久久| 久久黄色小视频| 欧美不卡视频在线观看| 国产熟女一级毛片| 福利在线免费视频| 伊伊人成亚洲综合人网7777| 欧美综合激情| 国产毛片基地| 亚卅精品无码久久毛片乌克兰| 亚洲男人的天堂在线观看| 午夜a视频| 国产精品私拍99pans大尺度| 国产极品粉嫩小泬免费看|