<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 51單片機學(xué)習之5-獨立按鍵和矩陣鍵盤(pán)

51單片機學(xué)習之5-獨立按鍵和矩陣鍵盤(pán)

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò ) 收藏
第14集

本文引用地址:http://dyxdggzs.com/article/201611/323867.htm

鍵盤(pán)的原理

鍵盤(pán)分編碼鍵盤(pán)(例如電腦鍵盤(pán))和非編碼鍵盤(pán)(自己用程序去識別)。

非編碼鍵盤(pán)分:獨立式非編碼鍵盤(pán)(獨立按鍵)、行列式非編碼鍵盤(pán)(4*4陣列鍵盤(pán))

獨立鍵盤(pán)的電路圖。

因為51單片機的IO口不是雙向口而是準雙向口,要讓IO口具備輸入功能,必須將IO口置1,置1之后當按鍵按下時(shí)IO口的電平會(huì )被拉低,即被置0。當檢測到IO口為0時(shí)即可判斷該按鍵已經(jīng)按下。按鍵按下時(shí)會(huì )有一個(gè)抖動(dòng)的過(guò)程(彈片會(huì )抖動(dòng)),由于單片機檢測IO口速度非???,超過(guò)彈片抖動(dòng)的頻率,所以當單片機檢測到IO口為0時(shí)需延時(shí)一小段時(shí)間再檢測IO是否為0,如果仍為0就確認該按鈕被按下。因為IO口里面有上拉電阻,所以當松開(kāi)按鈕時(shí),IO口又被拉高。

例程:

#include

#defineuintunsignedint

#defineucharunsignedchar

sbitKey=P3^4;//按鍵

sbitLed=P1^0;//Led燈

voiddelay(uintz);

/********主函數********/

voidmain()

{

while(1)

{

if(!Key)

{

delay(10);//消抖操作

if(!Key)

Led=0;//按下時(shí)Led亮

else

Led=1;

}

}

}

voiddelay(uintz)

{

uintx,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

第15集

4*4矩陣鍵盤(pán)

上圖中,1個(gè)按鍵占用一個(gè)IO口,如果有16個(gè)按鍵就占用了16個(gè)IO口。為了減少I(mǎi)O口的使用,就需要用矩陣的方式連線(xiàn)。如下圖


矩陣掃描原理

從圖可以看出P30、P31、P32、P33為行(低四位),P34、P35、P36、P37為列(高四位)。

假設我們按下的是S6按鈕。


上一頁(yè) 1 2 下一頁(yè)

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>