s5-4键盘管理与程序设计(方案).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
+E 0V 未按下时 为高电平 刚释放时 出现抖动 刚按下时 出现抖动 按下稳定 后为低电平 实际效果 窄脉冲干扰 刚释放时 出现抖动 按键的“抖动”现象 按键的结构:和电路图中的符号极为相似,它是靠镀银的铜合金簧片在按键柄的挤压下接触而导通,松开后簧片恢复原状而脱离接触断开。 S1 Vcc P0.7 R1 10K “0” “1” 理想效果 按键的抖动:按键在人手指按压/释放簧片的瞬间,因接触不良而产生的反复跳动现象。 “抖动”的脉冲宽度一般在几十到几百微秒,也可能达到毫秒级,若加在运行速度很快的数字电路中将会产生很大的影响。比如将发生“抖动”现象的按键作为数字电路的时钟输入,则每按一次键都会产生一串极不稳定的脉冲。 优选文档 * abcdefgh com1 com2 com3 com4 按键的“抖动”测试原理 编程思路:用按键模拟计数输入信号,用4位LED数码管显示计数值。 实验现象:在理想效果下,每按一次键,I/O口仅检测到1次高/低电平转换,计数加1;在实际效果中,由于“抖动”存在,每按一次键, I/O口检测到多次电平转换,计数好几次。 S Vcc P3.4 R 10K abcdefgh com1 com2 com3 com4 理想效果: 实际效果: 优选文档 * 按键的“抖动”测试程序 存放4位计数值 0x7A 0x7B 地址 数据 0x7C 0x7D 0x7E 0x7F 存放将计数值转换成数码管显示的字符码 0x7C 0x7D 0x7E 0x7F ORG 0000H Start: MOV 0x7A,#0x00 ;计数器高2位寄存器0x7A清0 MOV 0x7B,#0x00 ;计数器低2位寄存器0x7B清0 LD_Data: MOV R0,#0x7C ;取显示缓冲区首地址到指针R0 MOV A,0x7A ;取计数器高2位数据 ACALL Split_Display_Byte ;将数据字符送显示缓冲区前2个单元 MOV A,0x7B ;取计数器低2位数据 ACALL Split_Display_Byte ;将数据字符送显示缓冲区后2个单元 0x00 0x00 高4位转换的字符码 低4位转换的字符码 0xC0 0xC0 0xC0 0xC0 Display_Loop: ACALL Scan_Display_Value;调用显示扫描子程序 JB P3.4, Display_Loop ;P3.4是否为0?键未按下,转Display_Loop MOV A, #0x01 ;A取加数1 ADD A, 0x7B ;计数器+1 DA A ;10进制修正指令 MOV 0x7B,A ;回存低2位的运算结果到0x7B CLR A ;清0累加器A ADDC A,0x7A ;带进位加法加计数器高2位数据 DA A MOV 0x7A,A ;回存高2位的运算结果到0x7A JNB P3.4, $ ;检查按键是否松开,P3.4=1 本地循环 AJMP LD_Data ;按键松开,转LD_Data abcdefgh com1 com2 com3 com4 数码管显示: 判断是否有按键按下 0x01 优选文档 * 按键的“抖动”测试程序流程图 数码管显示计数 流程图 P3.4=0? N 计数器清0 计数值转换成字符码 计数器+1,调整10进制数 P3.4=1? N Y Y 优选文档 * +E K R 1 10K Y +E 0V Y: td 启动延时 停止延时 消除“抖动”的方法 消除“抖动”的方法:硬件消抖和软件消抖两大类。 常见的硬件消抖方法是:低通滤波+施密特整形以及RS触发器,而软件消抖方法就是插入适当的延时。 复习数字电路相关内容 软件消抖: 在按键按下的瞬间启动定时器开始延时,延时td时间后再判断按键是否仍然按下,若仍按下,则本次按键有效;否则本次按键无效。 思考题: ① 如何增加延时消除“抖动”,请尝试修改前面的程序。 ② 如果认真观察实验,一定会发现前面的程序有一个小小的不足,就是在按键按下的瞬间显示器会熄灭,请分析原因。 优选文档 * 目 录 独立键盘与消抖 矩阵键盘与扫描方法 逐行逐列扫描法 优选文档 * 矩阵键盘工作原理 4 ×4 矩阵键盘 行 线 列 线 按键的两端分别接在行线和列线上 矩阵键盘:用尽可能少的I/O口去

文档评论(0)

liuxiaoyu92 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档