单片机矩阵键盘行列扫描程序.doc

单片机矩阵键盘行列扫描程序.doc

ID:56396150

大小:15.00 KB

页数:2页

时间:2020-06-23

单片机矩阵键盘行列扫描程序.doc_第1页
单片机矩阵键盘行列扫描程序.doc_第2页
资源描述:

《单片机矩阵键盘行列扫描程序.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、//行列扫描程序,可以自己定义端口和扫描方式,这里做简单介绍#include//包含头文件#defineucharunsignedchar#defineuintunsignedintunsignedcharconstdofly[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//0-Fucharkeyscan(void);voiddelay(uinti);voidmain(){ucharke

2、y;P2=0x00;//1数码管亮按相应的按键,会显示按键上的字符while(1){key=keyscan();//调用键盘扫描,switch(key){case0x7e:P0=dofly[0];break;//0按下相应的键显示相对应的码值case0x7d:P0=dofly[1];break;//1case0x7b:P0=dofly[2];break;//2case0x77:P0=dofly[3];break;//3case0xbe:P0=dofly[4];break;//4case0xbd:P0=dofly[5];brea

3、k;//5case0xbb:P0=dofly[6];break;//6case0xb7:P0=dofly[7];break;//7case0xde:P0=dofly[8];break;//8case0xdd:P0=dofly[9];break;//9case0xdb:P0=dofly[10];break;//acase0xd7:P0=dofly[11];break;//bcase0xee:P0=dofly[12];break;//ccase0xed:P0=dofly[13];break;//dcase0xeb:P0=dofly

4、[14];break;//ecase0xe7:P0=dofly[15];break;//f}}}ucharkeyscan(void)//键盘扫描函数,使用行列反转扫描法{ucharcord_h,cord_l;//行列值P3=0x0f;//行线输出全为0cord_h=P3&0x0f;//读入列线值if(cord_h!=0x0f)//先检测有无按键按下{delay(100);//去抖if(cord_h!=0x0f){cord_h=P3&0x0f;//读入列线值P3=cord_h

5、0xf0;//输出当前列线值cord_l=P3&0x

6、f0;//读入行线值return(cord_h+cord_l);//键盘最后组合码值}}return(0xff);//返回该值}voiddelay(uinti)//延时函数{while(i--);}

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

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

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