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

付费下载

下载本文档

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

文档简介

1、单片机与矩阵键盘接口电路设计实验报告姓名:林蔼龄学号:1060601007班级:10级物理系电子信息工程A班单片机与矩阵键盘接口电路设计实验报告一:实验内容使用单片机的P1 口与矩阵式键盘连接时,可以将P1 口低4位的4条端口线 定义为行线,P1 口高4位的4条端口线定义为列线,形成4*4键盘,可以配置16 个按键,将单片机P2 口与七段数码管连接,当按下矩阵键盘任意键时,数码管显示 该键所在的键号。:电路图P2.o%a P2.59 P3iMlOP2 :P2.W412P3Sj%13P2.7J%15PD.QfADO M.HAD1 202 Pa.3rAD3 7 P0.&AD5IPa 5IADE r

2、j - a:R2.6M14曲 JMFD P31JTXDP3.2flNTf P3.3%JyP34JTO P3%mP3占晅PST丽:程序流程图扫描键盘四:程序Org OooohIjmP mai nmain:mov p1,#Ofh ;列线输出O,行线设为输入mova,p1;读P1 口an I a5#Ofh;屏蔽高4位,留下行线状态Cjne a,#Ofh,look ;有按键按下,转 lookret;无按键按下,返回主程序lookdcall dlaylO;延时 10msmov a,p1 ;读 P1 口anl a,#Ofh;屏蔽高4位,留下行线状态Cjne a,#Ofh,ra nk确认键已按稳,转RANK

3、 Ijmp main;抖动,未按稳,重新扫描rank:mov r2,#00h ;窜键标志寄存器请0 mov r3,#04h ;查列次数mov r4,#0f7h ;列扫描字初值mov r5,#0ffh ;列号处值rloopl:inc r5 ;开始列扫描,列号加1 mov a,r4 ;列扫描字送Arl a ;列扫描字左移一位mov r45a ;暂存列扫描字mov p1,a ;送出列扫描字mov a,p1 ;读 P1 口anl a,#Ofh ;屏蔽高4位,留下行线状态cjne a,#Ofh,next1 ;当前列有键按下,转 next! rloop2:djnz r3,rloop1 ;列扫描未 完继续s

4、jmp line ;列扫描完,转行扫描nextl:inc r2 ;窜键标志加1 mov 20h,r5 ;暂存有按键的列号sjmp rloop2 ;继续列扫描line:Gjne r2,#01h,main ;若已窜键,转 main,重新扫描mov r2,#00h ;幵始查行,窜键标志寄存器清0mov r3,#04h ;行扫描次数mov r6,#0ffh ;行号初值movp1,#Ofh ;列线送0,准备读行线mov a5p1 ;读P1 口,获取行线状态Hoop1:inG r6 ;行号加 1rrG a ;从第0行幵始,判断有无按键jnG next2 ;本行有按键、转next2Iloop2:djnz r

5、3,lloop1 ;无按键,继续查下一行 sjmp next3 ;查完、转 next3 next2:inG r2 ;窜键标志加1mov21h,r6 ;暂存有按键的行号sjmp Iloop2 ;继续行扫描next3:Cjne r2,#01h,main ;若窜键、转 main,重新扫描 gainky:mov a,21h ;无窜键、 取出行号mov b,#04h ;键盘列数mul ab ;行号键盘列数add a,20h ;乘积与列号相加,得到键号movb,#03h;为执行键处理程序做准备mul ab ;键号*3mov dptr,#ptab ;键处理程序表首地址送DPTR jmp a+dptr ;散转

6、至与键号对应的 键处理程序ptab:ljmp progO;键处理程序表Ijmp proglIjmp prog2Ijmp prog3Ijmp prog4Ijmp prog5Ijmp prog6Ijmp prog7Ijmp prog8Ijmp prog9Ijmp progl0Ijmp progl 1Ijmp progl 2Ijmp progl 3Ijmp progl 4Ijmp progl 5 progO:mov p2,#3fh ret progl:mov p2,#06h ret prog2:mov p2,#5bh ret prog3:mov p2,#4fh ret prog4:mov p2,#6

7、6h ret prog5:mov p2,#6dh ret prog6:mov p2,#7dh ret prog7:mov p2,#07h ret prog8:mov p2,#7fh ret prog9:mov p2,#6fh ret prog10:mov p2,#77h ret progl 1:mov p2,#7ch ret prog12:mov p2,#39h ret prog13:mov p2,#5eh ret progl4:mov p2,#79h ret progl 5:mov p2,#71h ret dlayl 0:mov r0,#100 ;约 10ms 延时 dlayl:mov r1

8、 ,#50 dlay2:djnz r1 ,dlay2 djnz rO,dlay1 ret end五:实验结果3 如下图1所以:当矩阵键盘的3号键被按下时,P2 口的七段数码管显示的数据为UIJnAL2PSENILL alcAO1234567P1P1P1SP1P1P1P1PoOWiDO POJADIPD2%AD2P03%D3 PO 4d%DaPO:;ME%PP7JAP7P2QAAfiP2.1% P2.2%1O P2.3%11P2 AfAl 2P2E5W-I 3P2 EW4PaeV/RXDPF | nF3 2%nrP33jSfTF3JaDP3.%ff1P37i , ITATfiSLtiJ%4当矩阵

9、键盘的A号键被按下时, 以:P2 口的七段数码管显示的数据为A.如下图2所EF心 XTAL1dXTAuATBgCSI七亠圭盖罟PdgDO RCHgDIPC2%D2P(l 那 &3P(l A.AEMM5%D5PoEJ%D6Pz- I -H4A7R2D%0P21X4%P2.2A10R2.MA11R2.4M12P24M13P2W14P2.7AA15P3 JOflXDP3.1HXDP32ANTrP33J | NT1P3.Am |P3.&T1P3MP37fRCr图2当矩阵键盘的D号键被按下时,P2 口的七段数码管显示的数据为d.如下图3所UI丄 KT%2RST也 P5ENALEEARIWADDPQ.1MD1 FCI.2JI%D2P0紳茁PO.4JAMR15%D5FHG.%DEPaHADTF2D%BP2.VA9P2A A11 P24ft12P2.5%13P2CA14P%7W%01234567HPIP1PIP1P1P1P1ATE9C51F3.0.RXO P35%DP3.2jT0AP3.3ifrfrP3.4n0A3%T1R3 6AWP3.7M-图3当矩阵键盘的F号键被按下时,P2 口的七段数码管显示的数据为F.如下图4所 以:I 1Ia-dXT%2-3-1 RSTPS&FALE EA11RQ QjAPq PI I, Aril P

温馨提示

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

评论

0/150

提交评论