




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、【Word版本下载可任意编辑】 单片机矩阵键盘与8051连接设计 众所周知,51单片机一般的键盘检测原理为非编码键盘检测,没有专门用来产生键编码号或键值的电路芯片;而我们使用的电脑键盘为编码键盘,通过编码电路芯片为每个按键产生一个编码号,可以通过串行总线把键值传输给电脑。在开展矩阵键盘检测时,书本或老师一般教的都是扫描检测,即一行一行地检测或者一列一列地检测,代码繁琐复杂,且缺点很多(例如执行效率较低)。 举例电路: 矩阵键盘与8051连接如上图所示,首先,令P3=0 x0f,检测P30、P31、P32、P33哪一行被按下,将此时P3的值存入存放器1。然后,令P3=0 xf0 | 存放器1,检
2、测P34、P35、P36、P37哪一列被按下,将此时P3的值存入存放器2。,把存放器1的值和存放器2的值组合起来即可得到矩阵键盘的编码。 代码如下: #includereg52.h unsigned char NUM=1; /* 特殊功能位定义 */ sbit L1=P00; sbit L2=P01; sbit L3=P02; sbit L4=P03; sbit L5=P04; sbit L6=P05; sbit L7=P06; sbit L8=P07; sbit DUAN=P26; sbit WEI=P27; /* 定时器0初始化函数 */ void init() EA=1; ET0=1;
3、TMOD=0X01; TH0=(65536-10000)/256; TL0=(65536-10000)%256; /* 中断服务函数 */ void TImer0()interrupt 1 TR0=0; /定时终止 TH0=(65536-10000)/256; /定时器0初值重装 TL0=(65536-10000)%256; NUM-; /* 矩阵键盘检测兼编码函数 */ unsigned char matrixkeyscan() unsigned char temp,reg1=0,reg2=0,key=0; /temp为临时变量,reg1为存放器1,reg2为存放器2,key为键盘编码号 P
4、3=0 x0f; temp=P3&0 x0f; if(temp!=0 x0f) /按键检测兼行坐标检测 TR0=1; / while(NUM); / 10ms去抖动延时 NUM=1; / temp=P3&0 x0f; if(temp!=0 x0f) /二次检测 reg1=temp; /把行坐标存入存放器1 P3=reg1|0 xf0; /关键,没有这句将导致整个函数出错 temp=P3&0 xf0; if(temp!=0 xf0) /检测列坐标 reg2=temp; /把列坐标存入存放器2 key=reg1|reg2; /将存放器1和存放器2开展按位或,作用是组合坐标,格式为八位二进制的“列坐
5、标行坐标” while(temp!=0 xf0) /等待按键释放 temp=P3&0 xf0; return key; /* 按键功能实现函数 */ void keyfuncTIon() unsigned char kvalue=0; kvalue=matrixkeyscan(); switch(kvalue) case 0 xee: L1=L1;/*按键01功能*/ break; case 0 xde: L2=L2;/*按键02功能*/ break; case 0 xbe: L3=L3;/*按键03功能*/ break; case 0 x7e: L4=L4;/*按键04功能*/ break;
6、 case 0 xed: L5=L5;/*按键05功能*/ break; case 0 xdd: L6=L6;/*按键06功能*/ break; case 0 xbd: L7=L7;/*按键07功能*/ break; case 0 x7d: L8=L8;/*按键08功能*/ break; case 0 xeb: /*按键09功能*/ break; case 0 xdb: /*按键10功能*/ break; case 0 xbb: /*按键11功能*/ break; case 0 x7b: /*按键12功能*/ break; case 0 xe7: /*按键13功能*/ break; case 0 xd7: /*按键14功能*/ break; case 0 xb7: /*按键15功能*/ break; case 0 x77: /*按键16功能*/ break; default:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工生产劳力、材料供应计划策略
- 企事业单位食堂岗位职责流程
- 人教版五年级信息技术课程评价计划
- 班主任班级特色建设计划
- 北师大版八年级上册物理课外活动安排计划
- 美术教研组教材内容更新计划
- 以形象思维理论为翼助力高中物理教学腾飞
- 以废为宝:废旧材料在小学美术教学中的创新融合与实践探索
- 以多元智能理论为钥:开启高中美术“差生”转化新路径
- 以图式理论为翼翱翔大学英语阅读之空
- 离婚不离家协议书
- 社区干事考试试题及答案
- 2025年建筑工程管理考试试题及答案
- 2025年广西南宁宾阳县昆仑投资集团有限公司招聘笔试参考题库含答案解析
- 2025年军人离婚协议书范本
- DB11∕T045-2025医学实验室质量与技术要求
- 工程造价复审报告书范文
- 《星形胶质细胞》课件
- SAP S4HANA 用户操作手册-成本控制CO操作手册-002-订单成本核算
- 幼儿园2025-2026学年度第一学期园本培训计划
- 科技史10:改变世界的10大科技发明
评论
0/150
提交评论