- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【例3-2】如图3-6所示,试编程实现键号显示。 3. 3 键盘C51程序设计 3.3.1 switch/case语句 switch(表达式) { case 常量表达式1:语句组1;break; case 常量表达式2:语句组2;break; …… case 常量表达式n:语句组n;break; default :语句组n+1; } 3. 3 键盘C51程序设计 3.3.2 键盘的C51程序设计实例 1. 独立式键盘 void main() { unsigned char i; P0=0xff; i=0; while(1) { while(i==0) //是否有键按下? { i=P0; } delay_nms(10); //延时消抖 P0=0xff; i=P0; } 九江职业技术学院电气工程系 九江职业技术学院电气工程系 工作任务 电子锁是由电子电路控制锁体的新型锁具,它采用触摸(键盘)方式输入开锁密码。 利用单片机和8位LED数码管、4?3矩阵式键盘制作一个密码锁,其任务要求如下: 1. 用4?3矩阵式键盘组成0~9数字键及确认键、删除键,用8位数码管组成显示电路提示信息; 2. 当输入密码时,只显示“—”,当密码位数输入完毕后按下“确定”键时,对输入的密码与设定的密码进行比较,若密码正确,则锁开;若密码不正确,禁止按键输入3s,同时报警。 工作任务 3.1 键盘的分类 非编码键盘 由软件完成对按键闭合状态的识别。 编码键盘 由专用硬件实现对按键闭合状态的识别。 3.1.1 按键简介 3.1.2 键盘的类型 独立式键盘 矩阵式键盘 3.1.3 键盘的消抖 消抖的方法:硬件和软件两种 3.2 键盘汇编程序设计 3.2.1 赋值伪指令EQU和DATA 【例3-1】 ORG 1000H TMP EQU R0 RES DATA 30H START: MOV RES,TMP ┆ 赋值伪指令 EQU 格式: 字符名 EQU 数据或汇编符号 功能:将该指令右边的值赋给左边的“字符名” 汇编过程中,EQU伪指令被汇编程序识别后自动将EQU后面的“数据或汇编符号”赋给左边的“字符名”。该“字符名”被赋值后,既可用作一个数据,也可用作一个地址。 数据赋值伪指令DATA 格式: 字符名 DATA 表达式 功能:用来将右边表达式的值赋给左边的字符名。 此伪指令的功能与EQU类似。使用时它们的区别在于: (1)DATA可以先使用再定义,它可以放在程序的开头或结尾,也可以放在程序的其他位置,比EQU指令要灵活。 (2)用EQU伪指令可以把一个汇编符号赋给一个字符名称,如R0,而DATA伪指令则不能。DATA伪指令在程序中常用来定义数据或地址。 3.2.2 位条件转移指令 指 令 分 类 汇 编 格 式 功 能 说 明 判直接寻址位转移指令 JB bit,rel PC←(PC)+3,若(bit)=1,则PC←(PC)+rel; JNB bit,rel PC←(PC)+3,若(bit)=0,则PC←(PC)+rel; JBC bit,rel PC←(PC)+3,若(bit)=1,则(bit)←0,PC←(PC)+rel; 判CY 转移指令 JC rel PC←(PC)+2,若(CY)=1,转移,PC←(PC)+rel; JNC rel PC←(PC)+2,若(CY)=0,转移,PC←(PC)+rel; 3.2.3 堆栈指令 指 令 分 类 汇 编 格 式 功 能 说 明 入栈指令 PUSH direct SP←(SP)+1,(SP)←(direct) 出栈指令 POP direct direct←((SP)),SP←(SP)?1 堆栈指令一般用于对现场的保护及恢复的过程中。 DISP: PUSH ACC PUSH PSW : : POP PSW POP ACC RET 先进后出 3.2.4 键盘的汇编语言设计实例 键盘的程序设计主要包括以下几个方面: (1)检测并判断是否有键按下; (2)按键开关的延时消抖功能; (3)计算并确定按键的键值; (4)根据计算的键值进行一系列的动作处理。 独立式键盘及其程序设计 独立式键盘 独立式键盘就是将按键直接与I/O口相连的方式。 编程时,用JNB或JB指令判断端口信号是否为低电平,做为按键是否按下的判断。 独立式键盘典型设计程序 KEY:MOV A,#0
您可能关注的文档
- 变量叶片泵工作原理.ppt
- 变频技术及其应用单元1 任务1 认识变频器.ppt
- 变频技术及其应用单元1 任务2 变频器的面板操作控制.ppt
- 变频技术及其应用单元1 任务3 变频器外部运行控制.ppt
- 变频技术及其应用单元1 任务4 变频器模拟量信号实现电动机的运行.ppt
- 变频技术及其应用单元1 任务5 变频器的组合运行操作控制.ppt
- 变频技术及其应用单元1 任务6 变频器的多段速运行控制.ppt
- 变频技术及其应用单元1 任务8 变频器的PID操作控制.ppt
- 变频技术及其应用单元2 任务1 PLC控制变频器实现电动机的正反转控制.ppt
- 变频技术及其应用单元2 任务2 PLC控制变频器的多段速调速控制.ppt
原创力文档


文档评论(0)