免费预览已结束,剩余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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第一节 理解父母教学设计初中心理健康七年级下册北京版
- Unit 21 A very big cat教学设计小学英语3B新概念英语(青少版)
- 高中地理 第六章 人类与海洋协调发展 第3节 维护海洋权益 加强国际合作教学设计 新人教版选修2
- 初中数学人教版(2024)七年级下册(2024)7.2.1平行线的概念教学设计
- 慢性乙型肝炎(大三阳)护理查房
- 初中人教版(2024)学会自我保护公开课教学设计
- 第3课 横折教学设计小学书法练习指导三年级下册西泠版
- 2026年巡察脱贫攻坚知识测试题及答案
- 2026年春天野草长测试题及答案
- 2026年管理综合素质测试题及答案
- GB/T 6003.2-2024试验筛技术要求和检验第2部分:金属穿孔板试验筛
- 经典导读与欣赏智慧树知到期末考试答案2024年
- 如何阐述自己的观点 高中语文统编版必修下册第一单元写作课课件
- 农村环保培训课件讲解
- 人工智能原理与方法智慧树知到课后章节答案2023年下哈尔滨工程大学
- GB/T 42430-2023血液、尿液中乙醇、甲醇、正丙醇、丙酮、异丙醇和正丁醇检验
- 走进舞蹈艺术-首都师范大学中国大学mooc课后章节答案期末考试题库2023年
- 小型挖掘机工况介绍
- 饲料原料知识和品控
- GB/T 4937.3-2012半导体器件机械和气候试验方法第3部分:外部目检
- GB/T 37356-2019色漆和清漆涂层目视评定的光照条件和方法
评论
0/150
提交评论