单片机原理与C51基础赵丽清第9章节.ppt

单片机原理与C51基础赵丽清第9章节.ppt

  1. 1、本文档共73页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 单片机的接口技术 第9章 目录 9.1 单片机键盘接口技术 9.1.1 独立键盘 9.1.2 矩阵式键盘 9.2 数码显示器接口电路 9.2.1 数码管显示原理 9.2.2 数码管动态显示 9.3 A/D转换接口技术 9.4 D/A转换接口技术 9.1 单片机键盘接口技术 9.1.1独立键盘 在单片机系统中广泛使用机械式非编码键盘,通过键盘向单片机输入数字、字符等代码,是最常用的输入手段。 弹性按键被按下时闭合,松手后自动断开。自锁式按键按下时闭合且会自动锁住,只有再次按下时才弹起断开。通常我们把自锁式按键当做开关使用,比如单片机系统中的电源开关就使用自锁按键。单片机的外围输入控制用弹性按键较好。 9.1 单片机键盘接口技术 9.1.1独立键盘 1、独立按键与单片机的连接电路 独立式按键特点是:一键一线,各键相互独立,每个键各接一条I/O口线,通过检测I/O输入线的电平状态,可容易地判断哪个按键被按下。独立式按键的连接方法非常简单,I/O端与单片机的任一I/O口相连。 9.1 单片机键盘接口技术 9.1.1独立键盘 2、独立式按键的识别 (1).测试有键被按下否 单片机检测按键的原理是:单片机的I/O口既可作为输出也可作为输入使用,当检测按键时用的是它的输入功能,我们把按键的一端接地,另一端与单片机的某个I/O口相连,开始时先给该I/O口赋一高电平,然后让单片机不断地检测该I/O口是否变为低电平,当按键闭合时,即相当于该I/O口通过按键与地相连,变成低电平,程序一旦检测到I/O口变为低电平则说明按键被按下。 9.1 单片机键盘接口技术 9.1.1独立键盘 2、独立式按键的识别 (2).去抖动 键是一种开关结构,由于机械触点的弹性及电压突跳等原因,在闭合及断开的瞬间,行线上会出现电压抖动。按键在被按下时,其触点电压变化过程如下图所示。 理想波形与实际波形之间是有区别的,实际波形在按下和释放的瞬间都有抖动现象,抖动时间的长短和按键的机械特性有关,一般为5~10ms。通常我们手动按下键然后立即释放,这个动作中稳定闭合的时间超过20ms。因此单片机在检测键盘是否按下时都要加上去抖动操作软件或专用的去抖动电路及去抖动芯片。 9.1 单片机键盘接口技术 9.1.1独立键盘 2、独立式按键的识别 (3).键扫描以确定被按键的物理位置 要想知道被按下的是哪个键,单片机只需要读入P0口的数值,如执行指令:MOV A,P0。然后执行测试条件转移指令如:JB ACC.* (0~7),rel。根据累加器A中的值判断连接P0口的键盘是哪一位被按下。 (4).等待键释放 确定键的物理位置后,再以延时的方法判定键释放。键释放之后,就可以根据得到的键码转去执行相应的键处理子程序,进行数据的输入或命令的处理。 9.1 单片机键盘接口技术 9.1.1独立键盘 3、独立式键盘的识别程序 下面是识别某一键是否按下的子程序: KEYIN:MOV P1,0FFH ;P1口写入1,设置P1口为输入状态 MOV A,P1 ;读入8个按键的状态 CJNE A,#0FFH,QUDOU ;有键按下,跳去抖动 LJMP RETURN ;无键按下,返回 QUDOU:MOV R3,A ;8个按键的状态送R3保存 LCALL DELAY10 ;调用延时子程序,软件去键抖动 MOV A,P1 ;再一次读入8个按键的状态 CJNE A,R3,RETURN ;两次键值比较,不同,则是抖动 KEY0: MOV C,P1.0 ;有键按下,读P1.0的按键状态 JC KEY1 ;P1.0为高,该键未按下,跳KEY1,判下一个键 LJMP PKEY0 ;P1.0的键按下,跳PKEY0功能程序 9.1 单片机键盘接口技术 9.1.1独立键盘 3、独立式键盘的识别程序 KEY1:MOV C,P1.1 ;读P1.1的按键状态 JC KEY2 ;P1.1为高,该键未按下,跳KEY2,判下一个键 LJMP PKEY1 ;P1.1的键按下,跳PKEY1功能程序 KEY2:MOV C,P1.2 ;读P1.2的按键状态 JC KEY3 ;P1.2为高,该键未按下,跳KEY3判下一个键 LJMP PKEY2 ;P1.2的键按下,跳PKEY2功能程序 KEY3:MOV C,P1.3 ;读P1.3的

文档评论(0)

开心农场 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档