全球旧事资料 分类
不断扫描、自动消抖、自动识别按下的键并给出编码能对双键或
个键同时按下的情况实行保护。在显示部分它可以为发光二极管、荧光管及其他显示器提供按扫描方式工作的显示接口而且为显示器提供多路复用信号可以显示多达16位的字符或数字。键盘中有无按键按下是由列线送入全扫描字、行线读入行线状态来判断的其方法是将列线的所有IO线均置成低电平然后将行线电平状态读入累加器A中如果有键按下总会有一根行线被拉至低电平从而使行输入不全为1。键盘中哪一个键按下可由列线逐列置低电平后检查行输入状态来判断其方法是依次给列线送低电平然后检查所有行线状态如果全为1则所按下的键不在此列如果不全为1则所按下的键必在此列而且是在与0电平线相交的交点上的那个键。
f3软件流程图
程序开始先对第一列进行扫描如果没有按键再对第二列、第三列、第四列分别进行扫描如果没有返回到开始如果第一列有按键在分别对第一行、第二行、第三行、地四行进行扫描若有按键按下分别显示0、1、2、3第二列、第三列、第四列类似第一列分别对第一行、第二行、第三行、第四行进行扫描有按键相应的显示出数值。
f4、电路硬件说明
1在“单片机系统”区域中把单片机的P30P37端口通过8联拨动拨码开关JP3连接到“4×4行列式键盘”区域中的M1M4N1N4端口上。
2在“单片机系统”区域中把单片机的P00P07端口连接到“静态数码显示模块”区域中的任何一个ah端口上要求P00对应着aP01对应着b……P07对应着h。
f5、程序设计内容
14×4矩阵键盘识别处理。
2每个按键都有它的行值和列值行值和列值的组合就是识别这个按键的编码。矩阵的行线和列线分别通过两并行接口和CPU通信。键盘的一端列线通过电阻接VCC而接地是通过程序输出数字“0”实现的。键盘处理程序的任务是确定有无键按下判断哪一个键按下键的功能是什么还要消除按键在闭合或断开时的抖动。两个并行口中一个输出扫描码使按键逐行动态接地另一个并行口输入按键状态由行扫描值和回馈信号共同形成键编码而识别按键通过软件查表查出该键的功能。
6程序
ORG0000H
LJMPSTART
ORG0100H
STARTMOVP20FH
J0JBP20J1判断第i列是否被选中
JMPS00若第i列被选中则程序跳到si0
J1JBP21J2
JMPS01
J2JBP22J3
JMPS02
J3JBP23START
JMPS03
S00MOVP20F0H若第0行第0列被选中则输出0
JBP24S10
fMOVA0C0H
S10JBP25S20
MOVA99H
S20JBP26S30
MOVA80H
S30JBP27X0
MOVA0C6H
X0MOVP1A
JMPSTART
S01MOVP20F0r
好听全球资料 返回顶部