实验四 4×4键盘输入教案资料.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 4×4键盘输入 精品文档 精品文档 收集于网络,如有侵权请联系管理员删除 收集于网络,如有侵权请联系管理员删除 精品文档 收集于网络,如有侵权请联系管理员删除 实验四: 4×4键盘输入实验 一、实验目的?: 1. 学习非编码键盘的工作原理和键盘的扫描方式。 2. 学习键盘的去抖方法和键盘应用程序的设计。 二、实验原理:? 键盘是单片机应用系统接受用户命令的重要方式。单片机应用系统一般采用非编码键盘,需要由软件根据键扫描得到的信息产生键值编码,以识别不同的键。本板采用4*4矩阵键盘,行信号分别为P1.0-P1.3,列信号分别为P1.4-P1.7。具体电路连接见下图 对于键的识别一般采用逐行(列)扫描查询法,判断键盘有无键按下,由单片机I/O口向键盘送全扫描字,然后读入列线状态来判断。 ?程序及流程图?:? ORG 0000H AJMP MAIN ORG 0000H AJMP MAIN ORG 0030H MAIN:MOV P2,#0F7H MOV P1,#0F0H MOV R7,#100 DJNZ R7,$ MOV A,P1 ANL A,#0F0H XRL A,#0F0H JZ MAIN LCALL D10MS MOV A,#00H MOV R0,A MOV R1,A MOV R2,#0FEH SKEY0:MOV A,R2 MOV P1,A MOV R7,#10 DJNZ R7,$ MOV A,P1 ANL A,#0F0H XRL A,#0F0H JNZ LKEY INC R0 MOV A,R2 RL A MOV R2,A MOV A,R0 CJNE A,#04H,SKEY0 AJMP MAIN LKEY:JNB ACC,4,NEXT1 MOV A,#00H MOV R1,A AJMP DKEY NEXT1:JNB ACC.5,NEXT2 MOV A,#01H MOV R1,A AJMP DKEY NEXT2:JNB ACC.6,NEXT3 MOV A,#02H MOV R1,A AJMP DKEY NEXT3:JNB ACC.7,MAIN MOV A,#03H MOV R1,A AJMP DKEY DKEY:MOV A,R0 MOV B,#04H MUL AB ADD A,R1 AJMP SQR SQR : MOV DPTR,#TAB MOVC A,@A+DPTR MOV P0,A AJMP MAIN TAB: DB 0C0H,0F9H,0A4H,0B0H,99H, 92H, 82H, 0F8H DB 80H, 90H, 88H, 83H, 0C6H,0A1H,86H, 8EH D10MS:MOV R6,#10 L1:MOV R5,#248 DJNZ R5,$ DJNZ R6,L1 RET END 流程图: 结束 结束 三、思考题: 总结FPGA是如何识别按键的?与单片机读取键值有何不同? 答:FPGA的所有I/O控制块允许每个I/O引脚单独配置为输入口,不过这种配置是系统自动完成的。当该I/O口被设置为输入口使用时,该I/O控制模块将直接是三态缓冲区的控制端接地,是得该I/O对外呈高阻状态,这样该I/O引脚即可用作输入引脚使用。正确配置并锁定引脚后,一旦KEY1~~KEY8中有键输入,即可在检测到按键输入的情况下,继续判断其键值并作出相应的处理。 FPGA管脚多,不用动态扫描。但单片机需要给一个扫描。

您可能关注的文档

文档评论(0)

zjq110 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档