单片机原理及应用-教学课件-匡忠辉-第8章-键盘控制LED灯数码管.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《单片机原理及应用-教学课件-匡忠辉-第8章-键盘控制LED灯数码管.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 教学 课件 匡忠辉 键盘 控制 LED 数码管
- 资源描述:
-
1、第八章 键盘控制键盘控制LED灯、数码管灯、数码管 在线教务辅导网:在线教务辅导网:http:/教材其余课件及动画素材请查阅在线教务辅导网教材其余课件及动画素材请查阅在线教务辅导网QQ:349134187 或者直接输入下面地址:或者直接输入下面地址:http:/第八章 键盘控制键盘控制LED灯、数码管灯、数码管 第第8章章 键盘控制键盘控制LED灯、数码管灯、数码管8.1 功能要求功能要求8.2 任务分析任务分析 8.3 键盘接口技术键盘接口技术8.3.1 键盘工作特性键盘工作特性8.3.2 独立式键盘接口电路独立式键盘接口电路8.3.3 8.3.3 矩阵式键盘接口电路矩阵式键盘接口电路8.4
2、 键盘接口程序设计键盘接口程序设计8.4.1 本项目使用的键盘接口本项目使用的键盘接口8.4.2 独立式键盘控制独立式键盘控制LED灯灯8.4.3 矩阵式键盘控制数码管矩阵式键盘控制数码管第八章 键盘控制键盘控制LED灯、数码管灯、数码管 8.1功能要求功能要求 一基本要求一基本要求能用独立式键盘控制LED灯。二发挥部分二发挥部分能用矩阵式键盘输入数据和命令,当键入数字键时,数码管显示相应数字,当输入功能键时,完成相应的功能。回目录回目录 第八章 键盘控制键盘控制LED灯、数码管灯、数码管 8.2 任务分析任务分析 要完成此任务,主要需解决如下四方面的问题:要完成此任务,主要需解决如下四方面的
3、问题:1.为什么要软件延时去抖动;2.独立式和矩阵式键盘接口电路的设计方法;3.独立式和矩阵式键盘程序的设计方法。回目录回目录第八章 键盘控制键盘控制LED灯、数码管灯、数码管 8.3.1 8.3.1 键盘工作特性键盘工作特性 键盘是一组按键的组合,它是单片机最常用的输入设备,单片机中的键盘一般通过按键开关自己设计焊接,当然也可到厂家定制,如图81 c)所示。本节主要讲解通过按键开关自己设计键盘的方法,根据按键开关与单片机接口的连接方式,可以分为独立式键盘和矩阵式键盘。8.3 键盘接口技术键盘接口技术回目录回目录第八章 键盘控制键盘控制LED灯、数码管灯、数码管 按键开关介绍按键开关介绍 单片
4、机中的键盘通常由按键开关组成,按键开关的外形和参数如下图所示,它是一种常开型按键开关,为了便于安装固定,它有四个管脚,其管脚说明如下图中的文字所示,在常态时开关触点(1和2)处于断开状态,只有按下按键时开关触点才闭合短路,所以可以用万用表检测开关的管脚排列、好坏和质量。回目录回目录第八章 键盘控制键盘控制LED灯、数码管灯、数码管 按键闭合、断开时的抖动按键闭合、断开时的抖动 回目录回目录在单片机中,按键通常与I/O端口相连,如下图左边所示。当按键开关K1未按下时,P1.0输入为高电平,而当按键K1闭合时,P1.0输入为低电平,由于开关为机械弹性开关,当机械触点断开、闭合时,由于机械触点的弹性
5、作用,一个机械开关闭合时不会马上稳定的闭合接通,断开时也不会马上断开,而是在闭合、断开的瞬间伴随有一连串的抖动,如下图右边所示,抖动时间的长短与开关的机械特性决定,一般为510ms。AT89C51R12KK1VCCP1.0前沿抖动后沿抖动闭合稳定键按下键释放理想波形实际波形P1.0输入的高低电平高低电平阀值第八章 键盘控制键盘控制LED灯、数码管灯、数码管 按键抖动消除办法按键抖动消除办法 按键抖动是一种普遍的现象,如电流较大的电器开关闭合时,我们有时可以见到电火花,按键抖动将形成干扰和造成误动作。如上页图所示,抖动将造成I/O端口输入的高低电平多次变化,使单片机系统误动作,一次按键产生多次按
6、键效果,因此必须采取措施消除。按键抖动消除可以采用硬件和软件方法消除,硬件去抖动电路如RS触发器等,由于硬件去抖动电路需要额外的硬件电路,使产品成本增加,硬件电路复杂,所以一般应用较少。在单片机中广泛采用的是软件延时去抖动,由图84可知,按键闭合时存在前沿抖动,一般时间为510ms,因此我们可在按键按下后,延时10ms左右避开前沿抖动,然后再判断按键是否按下,即P1.0是否仍为低电平,如果仍为低电平,此时才确认为一次完整有效的按键闭合,否则认为只是抖动或干扰,系统对此不作出响应。第八章 键盘控制键盘控制LED灯、数码管灯、数码管 8.3.2 独立式键盘接口电路独立式键盘接口电路独立式键盘的结构
7、如下图所示,组成键盘的各按键相互独立,每个按键独立地与一个I/O端口相连,结构简单,其中图左图适合于端口内部有上拉电阻的端口,如P1、P2、P3口,所以外部不用上拉电阻,电路更简单,成本更低。右图适合于端口内部没有上拉电阻地端口,如P0口,所以外部必须使用上拉电阻,成本稍高,所以一般尽量使用左图的形式。AT89C51K1P1.0K2K3K4P1.1P1.2P1.3AT89C51K1P0.0K2K3K4P0.1P0.2P0.3R12KR22KR32KR42KVCC第八章 键盘控制键盘控制LED灯、数码管灯、数码管 8.3.3 矩阵式键盘接口电路矩阵式键盘接口电路 独立式键盘虽然硬件、软件结构简单
8、,但在按键数量较多的情况下,将占有较多的I/O端口,所以在按键数量较多的情况下,一般采用可以有效减少I/O端口数量的矩阵式键盘。矩阵式键盘又称为行列式键盘,采用行、列线结构,按键设置在行列线的交叉点上,如下图所示,H0H3为四条行线,L0L3为四条列线,在行列相交的每个交点上通过按键来连通,按键开关的一个触点连行线,一个触点连列线,从而组成44矩阵16键键盘 AT89C51K1P1.0K2K3K4P1.1P1.2P1.3K5K6K7K8K9K10K11K12K13K14K15K16P1.4P1.5P1.6P1.7H0H1H2H3L0L1L2L3回目录回目录第八章 键盘控制键盘控制LED灯、数码
9、管灯、数码管 2独立式和矩阵式键盘比较独立式和矩阵式键盘比较独立式键盘硬件结构简单,软件编程较简单,但每个按键独自占用一个I/O端口,在按键数量较多的情况下,将占有较多的I/O端口。所以,独立式键盘一般运用于按键数量不多的场合。矩阵式键盘能有效的减少I/O端口的占用量,但因为各按键不是单独的占有I/O端口,从而给按键的判断带来难度,造成编程难度加大。第八章 键盘控制键盘控制LED灯、数码管灯、数码管 84 键盘接口程序设计键盘接口程序设计 8.4.1 本项目使用的键盘接口本项目使用的键盘接口 本项目使用的键盘接口如下图所示,它是23的矩阵式键盘接口电路,我们选P2口的低五位作为矩阵式键盘的列线
10、和行线,其中P2.3、P2.4作为矩阵式键盘的行线,P2.0、P2.1、P2.2作为矩阵式键盘的列线,选用六个按键主要是为了降低试验板成本和焊接的难度。R810KR710KVCCK1K4K2K3K5K6P2.0P2.1P2.2P2.3P2.4回目录回目录第八章 键盘控制键盘控制LED灯、数码管灯、数码管 8.4.2 8.4.2 独立式键盘控制独立式键盘控制LEDLED灯灯 本项目基本任务为利用独立式键盘控制LED灯,为了不增加试验板的成本,我们在上页图的矩阵式键盘电路中,将P2.0设置为低电平,相当于键盘K1、K4一端触点接地,从而使按键K1、K4相当于组成独立式键盘,等效电路如下图所示。回目
11、录回目录A02A13A24A35A46A57A68A79B018B117B216B315B414B513B612B711E19DIR1U274LS245RP14708EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U1AT89C51K1K4D8D6D7D4D3D5D2D1VCC第
12、八章 键盘控制键盘控制LED灯、数码管灯、数码管 一、独立式键盘任务分析一、独立式键盘任务分析 本任务要求按下K1时,D1D8全亮,按下K4时,D1D8全灭。本任务的关键为设计独立式键盘的控制程序,它必须解决以下几个问题:(1)检测有无按键按下。先将各按键相连的I/O端口置为高电平1,然后检测各I/O端口是否仍全为高电平,如果不是,表明有按键按下。(2)如果有键按下,运用软件去抖动在有键按下的情况下,延时10ms,再次检测是否有键按下,如果是,表明确实有键按下,否则表示只是干扰或抖动。(3)确认有键按下,暂存键值,等键释放这主要是为了保证一次按键仅执行一次按键功能,防止按住按键不放时,执行多次
13、按键功能。(4)判断按键情况,执行相应的按键功能既如果按键K1按下,D1D8全亮,按键K4按下,D1D8全灭。第八章 键盘控制键盘控制LED灯、数码管灯、数码管 二、独立式键盘程序流程图设计二、独立式键盘程序流程图设计 通过以上分析,独立式按键程序思路大致如下:(1 1)首先进行程序初始化。)首先进行程序初始化。P1.0清零,使开关K1、K4一端接低电平;置位P2.3、P2.4作为输入口,同时使P2.3、P2.4输出高电平。(2 2)判断是否有键按下。)判断是否有键按下。读入P2.3、P2.4的状态,判断是否全为高电平1,否则表明有按键按下。(3 3)延时去抖动。)延时去抖动。延时10ms,再
14、次读入P2.3、P2.4的状态,判断是否仍然有键按下,如果有,表明确实有键按下,否则表明只是抖动或干扰信号。(4 4)暂存当前按键状态,等待按键释放。)暂存当前按键状态,等待按键释放。在等待按键弹起的过程中,必须将前面的按键状态保存下来,以便后面取出判断具体的按键号。等待按键弹起的方法为延时一段时间,再次检测按键的状态,直到无键按下为止。第八章 键盘控制键盘控制LED灯、数码管灯、数码管 二、独立式键盘程序流程图设计二、独立式键盘程序流程图设计(5 5)判断具体按键号,执行相应的按键功能。)判断具体按键号,执行相应的按键功能。取出前面暂存的按键状态,并判断具体是那个按键按下,执行相应的功能,如
15、果是P2.3为低电平,表明K1按下,置P1为低电平,D1D8全亮,如果是P2.4为低电平,表明K4按下,置P1为高电平,D1D8全灭。回目录回目录程序开始使开关一端为低电平将开关的输入端口置1调用按键子程序Y等按键弹起YP1置1,D1D8灭P1清零,D1D8亮K1按键子程序返回按键子程序开始K2判具体按键是否有键按下N延时去抖动,是否确实有键按下N第八章 键盘控制键盘控制LED灯、数码管灯、数码管 三、独立式键盘程序清单三、独立式键盘程序清单(1)ORG 0000H LJMP MAIN ORG 0050HMAIN:CLR P2.0 ;P2.0清0,使K1、K4一端触点接低电平 SETB P2.
展开阅读全文