- 2
- 0
- 约7.32千字
- 约 26页
- 2023-05-12 发布于上海
- 举报
s键盘管理与程序设计剖析
第1页/共26页
按键的分类
按结构和使用方法的不同,可将按键分为两大类:独立按键和矩阵键盘。
第2页/共26页
目 录
第3页/共26页
独立按键的常用接法
80C51单片机的两种常见的独立按键接法:
I/O口为开漏结构时,需外接上拉电阻,如51的P0口
I/O内部自带弱上拉电阻时,可直接相连,如51的P1、P2、P3口
第4页/共26页
未按下时
为高电平
刚释放时
出现抖动
刚按下时
出现抖动
按下稳定
后为低电平
刚释放时
出现抖动
按键的“抖动”现象
按键的结构:和电路图中的符号极为相似,它是靠镀银的铜合金簧片在按键柄的挤压下接触而导通,松开后簧片恢复原状而脱离接触断开。
按键的抖动:按键在人手指按压/释放簧片的瞬间,因接触不良而产生的反复跳动现象。
“抖动”的脉冲宽度一般在几十到几百微秒,也可能达到毫秒级,若加在运行速度很快的数字电路中将会产生很大的影响。比如将发生“抖动”现象的按键作为数字电路的时钟输入,则每按一次键都会产生一串极不稳定的脉冲。
第5页/共26页
按键的“抖动”测试原理
编程思路:用按键模拟计数输入信号,用4位LED数码管显示计数值。
实验现象:在理想效果下,每按一次键,I/O口仅检测到1次高/低电平转换,计数加1;在实际效果中,由于“抖动”存在,每按一次键, I/O口检测到多次电平转换,计数好几次。
理想效果:
实际效果:
第6页/共26页
按键的“抖动”测试程序
存放4位计数值
0x7A
0x7B
地址 数据
存放将计数值转换成数码管显示的字符码
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
数码管显示:
0x01
第7页/共26页
按键的“抖动”测试程序流程图
第8页/共26页
Y
启动延时
停止延时
消除“抖动”的方法
消除“抖动”的方法:硬件消抖和软件消抖两大类。
常见的硬件消抖方法是:低通滤波+施密特整形以及RS触发器,而软件消抖方法就是插入适当的延时。
软件消抖:
在按键按下的瞬间启动定时器开始延时,延时td时间后再判断按键是否仍然按下,若仍按下,则本次按键有效;否则本次按键无效。
思考题:
① 如何增加延时消除“抖动”,请尝试修改前面的程序。
② 如果认真观察实验,一定会发现前面的程序有一个小小的不足,就是在按键按下的瞬间显示器会熄灭,请分析原因。
第9页/共26页
目 录
第10页/共26页
矩阵键盘工作原理
行
线
列 线
按键的两端分别接在行线和列线上
矩阵键盘:用尽可能少的I/O口去管理较多的按键。
最大的优点是组合灵活,假如有16个I/O可用作键盘电路,可以将它接成6×10、5×11或8×8等许多种接法。当然,使用效率最高的是8×8的接法,最多可以接64个按键。
矩阵连接法要区分和判断按键动作的方法比较复杂,所以这种接法一般只用在计算机技术中。
第11页/共26页
目 录
第12页/共26页
逐行扫描实验电路
Tiny
您可能关注的文档
最近下载
- 胜达克(Adaptstar)ATE工程模式使用说明.pptx
- 【电脑小知识】:如何使用注册表来恢复误删的Win7便签?.docx VIP
- 项目经理年终个人总结报告.docx VIP
- 选择性必修2湘教地理教材习题答案.docx VIP
- 高考语文十年(2016-2025)真题《字音字形》专项汇编(答案解析版).docx VIP
- 超大规模集成电路2017秋段成华老师第四次作业.doc VIP
- 十字相乘法因式分解练习100题及答案.docx VIP
- 2025造价师工程师(一级)-造价管理专题讲义总版-在线版.pdf VIP
- 十年(2016-2025)高考语文真题分类汇编:专题15 图文转换(全国通用)(解析版).docx VIP
- 700t/d浮法玻璃退火窑安装和调试中的几点注意事项.pdf VIP
原创力文档

文档评论(0)