详细信息

4x4鍵盤的设计与制作 下载

文件类型:
单片机开发,单片机原理,单片机教程,单片机学习
文件大小:
672 KB
下载次数:
[744次]
日期:
07-03
解压密码:
www.dianzi6.com
Tag:
单片机学习,单片机开发,单片机原理,单片机教程   
运行平台:
txt/doc/word/ppt/pdf 等
星级:
简介:

4x4鍵盤的设计与制作为http://www.dianzi6.com整理发布,类型为单片机学习,本站还有更多关于单片机开发,单片机原理,单片机教程,单片机学习的资料。
正文:

三種方法讀取鍵值
􀂄 使用者設計行列鍵盤介面,一般常採用三種方法讀取鍵值。
􀂉 中斷式
􀂄 在鍵盤按下時產生一個外部中斷通知CPU,並由中斷處理程式通過不
同位址讀資料線上的狀態判斷哪個按鍵被按下。
􀂄 本實驗採用中斷式實現使用者鍵盤介面。
􀂉 掃描法
􀂄 對鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值
中有一位是低,表明該行與低電位對應列的鍵被按下。否則掃描下一
行。
􀂉 反轉法
􀂄 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵
按下;接著所有列掃描線輸出低電位,再讀行值。
􀂄 根據讀到的值組合就可以查表得到鍵碼。
4x4鍵盤按4行4列組成如圖電路結構。按鍵按
下將會使行列連成通路,這也是見的使用者鍵
盤設計電路。

//-----------4X4键盘程序--------------//
uchar keboard(void)
{ uchar xxa,yyb,i,key;
if((PINC&0x0f)!=0x0f) //是否有按键按下
{delayms(1); //延时去抖动
if((PINC&0x0f)!=0x0f) //有按下则判断
{ xxa=~(PINC|0xf0); //0000xxxx
DDRC=0x0f;
PORTC=0xf0;
delay_1ms();
yyb=~(PINC|0x0f); //xxxx0000
DDRC=0xf0; //复位
PORTC=0x0f;
while((PINC&0x0f)!=0x0f) //按键是否放开
{ display(data); }
i=4; //计算返回码
while(xxa!=0)
{ xxa=xxa>>1;
i--; }
if(yyb==0x80)
key=i;
else if(yyb==0x40)
key=4+i;
else if(yyb==0x20)
key=8+i;
else if(yyb==0x10)
key=12+i;
return key; //返回按下的键盘码
}
}
else return 17; //没有按键按下
}


如果觉得《4x4鍵盤的设计与制作》不错,可以推荐给好友哦。
相关单片机学习资料


温馨提示; 本站的资料全部免费下载,为方便下次找到本站记得将本站加入收藏夹哦,牢记网址http://www.dianzi6.com

下载说明事项

本站备有多台下载服务器,请点击上列地址进行下载4x4鍵盤的设计与制作_单片机学习,如下载过慢或下载不了请选用另外几台服务器进行下载。
本站提供的资源均为网上搜集,如果该资源4x4鍵盤的设计与制作_单片机学习涉及或无意中侵害到您的版权请与我们联系。

此页提供4x4鍵盤的设计与制作单片机开发,单片机原理,单片机教程, 单片机学习参考。本站还有更多的单片机学习相关资料分享。
Copyright© www.dianzi6.com Inc. All rights reserved 。 1 2 3 4 5 6 7 8