_键盘的控制参考资料

_键盘的控制参考资料

ID:35539845

大小:91.13 KB

页数:5页

时间:2019-03-25

_键盘的控制参考资料_第1页
_键盘的控制参考资料_第2页
_键盘的控制参考资料_第3页
_键盘的控制参考资料_第4页
_键盘的控制参考资料_第5页
资源描述:

《_键盘的控制参考资料》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、参考资料一:4X4矩阵键盘控制条形LED显示严名称:4X4矩阵键盘控制条形LED显示说明:运行本例时,按F的按键值越大点亮的LED越多。*/#include#includc#defineucharunsignedchar#defineuintunsignedint〃矩阵键盘按键特征码表ucharcodeKeyCodeTable[]={0x11,0x12,Ox14,Ox1&0x21,0x22,0x24,0x28,0x41,0x42,0x44,0x48,0x81,0x82,0x84,0x88};〃延时voidDelay

2、MS(uintx){uchari;while(x-)for(i=0;i<120;i++);〃键盘扫描ucharKeys_Scan(){ucharsCodc,kCodc,i,k;〃低4位置0,放入4行Pl=0xf0;〃若高4位出现(),则有键按下if((Pl&0xf0)!=0xf0)K!;k5;kL—厂—厂H亠«TM1、.汽JA、人KAV食-LLl三三三__rulDelayMS(2);if((Pl&0xf0)!=0xfD){sCodc=0xfc;〃行扫描码初值for(k=0;k<4;k++)〃对4行分别进行打描{Pl二sCode;if((Pl&0xf0)!

3、=0xf0){kCodc=〜Pl;for(i二0;iv16;i++)〃查表得到按键序号并返回if(kCode==KeyCodeTable[ij)return(i);}elsesCode=_crol_(sCode,1);retum(-l);//主程序voidmain(){uchari,P2_LED,P3_LED;ucharKeyNo=-l;〃按键序号,・1表示无按键while(l){KeyNo=Keys_Scan();〃扫描键盘获取按键序号KeyNoif(KeyNo!=-l){P2_LED=0xff;P3_LED=()xff;for(i=0;i<=KeyN

4、o;i++)〃键值越人,点亮的LED越多{if(i<8)P3_LED»=1;elseP2_LED»=1;}P3二P3_LED;〃点亮条形LEDP2=P2_LED;参考资料二:数码管显示4X4矩阵键盘按键号/*名称:数码管显示4X4矩阵键盘按键号说明:按下任意键时,数码管都会显示其键的序号,扫描程序首先判断按键发生在哪一列,然后根据所发牛•的行附加不同的值,从而得到按键的序号。*/#include#dcfincucharunsignedchar#defineuintunsignedint〃段码ucharcodeK0g厂-r一K2dQ•-・

5、「r-■

6、6;〃延时voidDelayMS(uintx)uchari;while(x-)for(i=0;i<120;i++);}〃矩阵键盘打描voidKeys_Scan(){ucharTmp;Pl=OxOf;//高4位置0,放入4行DclayMS(l);Tmp=PlA0x0f;//按键后Of变成0000XXXX,X中一个为0,3个仍为1,通过界或把3个1变为0,唯一的0变为1switch(Tmp)〃判断按键发生于0~3列的哪一•列{case1:KcyNo=0;brcak;case2:KeyNo=1;break;case4:KeyNo=2;break;case8:K

7、eyNo=3;break;dcfault:KcyNo=16;〃无键按下P1二OxfO;〃低4位置0,放入4列DelayMS(l);Tmp=Pl»4A0x0f;//按键后fO变成XXXX0000,X中冇1个为0,三个仍为1;高4位转移到低4位并异或得到改变的值switch(Tmp)〃对0〜3行分别附加起始值0,4,8,12case1case2case4case8KeyNo+=0;break;KeyNo+=4;break;KcyNo+=8;brcak;KeyNo+=12;〃蜂鸣器voidBccp(){uchari;for(i=0;i<100;i++){Dcl

8、ayMS(l);BEEP=〜BEEP;}BEEP=0;}〃主程序voidmain

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。