单片机与矩阵键盘接口电路设计实验报告_第1页
单片机与矩阵键盘接口电路设计实验报告_第2页
单片机与矩阵键盘接口电路设计实验报告_第3页
单片机与矩阵键盘接口电路设计实验报告_第4页
单片机与矩阵键盘接口电路设计实验报告_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机与矩阵键盘接口电路设计实验报告姓名:林蔼龄学号:1060601007班级:10级物理系电子信息工程A班单片机与矩阵键盘接口电路设计实验报告一:实验内容使用单片机的P1口与矩阵式键盘连接时,可以将P1口低4位的4条端口线定义为行线,P1口高4位的4条端口线定义为列线,形成4*4键盘,可以配置16个按键,将单片机P2口与七段数码管连接,当按下矩阵键盘任意键时,数码管显示该键所在的键号。二:电路图三:程序流程图四:程序org0000hljmpmainmain:movp1,#0fh;列线输出0,行线设为输入mova,p1;读P1口anla,#0fh;屏蔽高4位,留下行线状态cjnea,#0fh,look;有按键按下,转lookret;无按键按下,返回主程序look:lcalldlay10;延时10msmova,p1;读P1口anla,#0fh;屏蔽高4位,留下行线状态cjnea,#0fh,rank;确认键已按稳,转RANKljmpmain;是抖动,未按稳,重新扫描rank:movr2,#00h;窜键标志寄存器请0movr3,#04h;查列次数movr4,#0f7h;列扫描字初值movr5,#0ffh;列号处值rloop1:incr5;开始列扫描,列号加1mova,r4;列扫描字送Arla;列扫描字左移一位movr4,a;暂存列扫描字movp1,a;送出列扫描字mova,p1;读P1口anla,#0fh;屏蔽高4位,留下行线状态cjnea,#0fh,next1;当前列有键按下,转next1rloop2:djnzr3,rloop1;列扫描未完,继续sjmpline;列扫描完,转行扫描next1:incr2;窜键标志加1mov20h,r5;暂存有按键的列号sjmprloop2;继续列扫描line:cjner2,#01h,main;若已窜键,转main,重新扫描movr2,#00h;开始查行,窜键标志寄存器清0movr3,#04h;行扫描次数movr6,#0ffh;行号初值movp1,#0fh;列线送0,准备读行线mova,p1;读P1口,获取行线状态lloop1:incr6;行号加1rrca;从第0行开始,判断有无按键jncnext2;本行有按键,转next2lloop2:djnzr3,lloop1;无按键,继续查下一行sjmpnext3;查完,转next3next2:incr2;窜键标志加1mov21h,r6;暂存有按键的行号sjmplloop2;继续行扫描next3:cjner2,#01h,main;若窜键,转main,重新扫描gainky:mova,21h;无窜键,取出行号movb,#04h;键盘列数mulab;行号*键盘列数adda,20h;乘积与列号相加,得到键号movb,#03h;为执行键处理程序做准备mulab;键号*3movdptr,#ptab;键处理程序表首地址送DPTRjmp@a+dptr;散转至与键号对应的键处理程序ptab:ljmpprog0;键处理程序表ljmpprog1ljmpprog2ljmpprog3ljmpprog4ljmpprog5ljmpprog6ljmpprog7ljmpprog8ljmpprog9ljmpprog10ljmpprog11ljmpprog12ljmpprog13ljmpprog14ljmpprog15prog0:movp2,#3fhretprog1:movp2,#06hretprog2:movp2,#5bhretprog3:movp2,#4fhretprog4:movp2,#66hretprog5:movp2,#6dhretprog6:movp2,#7dhretprog7:movp2,#07hretprog8:movp2,#7fhretprog9:movp2,#6fhretprog10:movp2,#77hretprog11:movp2,#7chretprog12:movp2,#39hretprog13:movp2,#5ehretprog14:movp2,#79hretprog15:movp2,#71hretdlay10:movr0,#100;约10ms延时dlay1:movr1,#50dlay2:djnzr1,dlay2djnzr0,dlay1retend五:实验结果当矩阵键盘的3号键被按下时,P2口的七段数码管显示的数据为3.如下图1所以:图1当矩阵键盘的A号键被按下时,P2口的七段数码管显示的数据为A.如下图2所以:图2当矩阵键盘的D号键被按下时,P2口的七段数码管显示的数据为d.如下图3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论