免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
按键矩阵识别技术实验说明如图2所示,把P1端口的8条I/O口分成4条列线4条行线交叉但不接触构成44键盘阵列,16个按键放置交叉位置,这样在单片机复杂系统需要较多按键时,这种接法可以节省单片机的硬件资源。1结合给出的电路原理图试分析4*4键盘矩阵识别原理,及LED动态扫描原理。(6分)2根据分析的键盘矩阵识别原理设计程序实现一下功能:当按下某个按键时在2个七段数码管上显示该按键的编号(注意考虑同时按下多个按键时程序处理过程)、按下某个按键使其弹起时对于消抖情况程序的处理。(9分)2.0相关原理图如下:3.0实验说明本试验给了1-8键判断方法。按1-8键中任意键,则数码管显示该键编号。想想怎样实现1-16个键的判断显示?参考程序见程序范例。/*描述: 按键距阵识别技术*编写: 秦立春*版本信息: V1.0 2008年4月20日*说明: sp1,sp2,SP3跳线向右;*/#include #define uchar unsigned char#define uint unsigned int#define ON 0#define OFF 1uchar bdata OUT;sbit JDQ=OUT0;sbit HF =OUT1;sbit BZ =OUT2;sbit AA =OUT3;sbit BB =OUT4;sbit CC =OUT5;sbit DD =OUT6;sbit X0=P20;sbit X1=P21;sbit X2=P22;sbit X3=P23;sbit Y0=P24;sbit Y1=P25;sbit Y2=P26;sbit Y3=P27;sbit RS=P17;sbit RW=P34;sbit E =P35;sbit HC574_LE=P33;/-void delay(unsigned int t) / 延时函数 for(;t!=0;t-) ;/-void HC574(void) / 74HC574控制输出; P0=OUT; HC574_LE=1; delay(2); HC574_LE=0;/=unsigned char Key_Scan(void) uchar a, key; P2=0xf0; if(!(Y0&Y1&Y2&Y3) P2=0xf0; delay(200); if(!(Y0&Y1&Y2&Y3) P2=0xff; X0=0; if(!(Y0&Y1&Y2&Y3)a=P2;a=(a&0xf0+0x0e);goto pp1; P2=0xff; X1=0; if(!(Y0&Y1&Y2&Y3)a=P2;a=(a&0xf0+0x0d);goto pp1; P2=0xff; X2=0; if(!(Y0&Y1&Y2&Y3)a=P2;a=(a&0xf0+0x0b);goto pp1; P2=0xff; X3=0; if(!(Y0&Y1&Y2&Y3)a=P2;a=(a&0xf0+0x07);goto pp1; else a=0xff; else a=0xff;pp1: key=a; return key;/-uchar key(void) uchar k, KEY; KEY=0xff; k=Key_Scan(); if(k!=0xff) while(k=Key_Scan(); switch(k) / 键码 case 0x7e: KEY=0x04;break; / 4 case 0x7d: KEY=0x08;break; / 8 case 0x7b: KEY=0x0b;break; / case 0x77: KEY=0x0f;break; / case 0xbe: KEY=0x03;break; / 3 case 0xbd: KEY=0x07;break; / 7 case 0xbb: KEY=0x0a;break; / case 0xb7: KEY=0x0e;break; / case 0xde: KEY=0x02;break; / 2 case 0xdd: KEY=0x06;break; / 6 case 0xdb: KEY=0x00;break; / 0 case 0xd7: KEY=0x0d;break; / case 0xee: KEY=0x01;break; / 1 case 0xed: KEY=0x05;break; / 5 case 0xeb: KEY=0x09;break; / 9 case 0xe7: KEY=0x0c;break; / default: KEY=0xff;break; / 无键按下 return KEY;main() uchar code shu12=0xc0,0xf9,0xa4,0xb0,0x99,/0,1,2,3,4, 0x92,0x82,0xf8,0x80,0x90,/5,6,7,8,9, 0x00,0xff; /灭 共阳极数码管显示段码 uchar i,k; uchar display2=0xff,0xff; RS=0; RW=0; E=0; OUT=0;HC574(); delay(60000); while(1)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 冰库安装施工方案
- 操场球场施工方案
- 绿化详细施工方案
- 宾馆洗浴出租合同范本
- 房屋打孔施工方案
- 贴砖挂网施工方案
- 关于时间的讲话稿
- 大型吊灯施工方案
- 医院培训合同范本
- 天然管道安装合同范本
- 回弹法检测水泥基灌浆材料抗压强度技术规程
- 2017数据中心设计规范
- 教科版六年级科学上册《生物多样性的意义》课件
- 湖北民族大学辅导员考试题库
- 2023年中考语文备考之说明文阅读训练:《盲盒背后的“上瘾密码”》
- 肿瘤科专业组药物临床试验管理制度及操作规程GCP
- 老年人照料设施建筑设计标准
- GB/T 5023.5-2008额定电压450/750 V及以下聚氯乙烯绝缘电缆第5部分:软电缆(软线)
- GB/T 41261-2022过程工业报警系统管理
- 2022年新整理《研究生中国特色社会主义理论与实践研究》考题附答案
- 农产品质量与安全知识讲座模板
评论
0/150
提交评论