单片机键盘及显示ppt课件.ppt

上传人:小飞机 文档编号:1405853 上传时间:2022-11-20 格式:PPT 页数:46 大小:2.49MB
返回 下载 相关 举报
单片机键盘及显示ppt课件.ppt_第1页
第1页 / 共46页
单片机键盘及显示ppt课件.ppt_第2页
第2页 / 共46页
单片机键盘及显示ppt课件.ppt_第3页
第3页 / 共46页
单片机键盘及显示ppt课件.ppt_第4页
第4页 / 共46页
单片机键盘及显示ppt课件.ppt_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《单片机键盘及显示ppt课件.ppt》由会员分享,可在线阅读,更多相关《单片机键盘及显示ppt课件.ppt(46页珍藏版)》请在三一办公上搜索。

1、本章要点 大多数的单片机应用系统,都要配置输入外设和输出外设。常用的输入外设有键盘、开关等;常用的输出外设有LED数码管、LCD显示器、打印机等。本章主要介绍 1 单片机控制发光二极管、LED数码管 2 基于单片机的开关、键盘接口原理及应用,第7章 显示、开关/键盘,7.1 发光二极管的显示,单片机可以通过并行端口P0P3驱动发光二极管P0口与 P1、P2、P3口相比,P0口每位可驱动8个LSTTL输入,而P1P3口每一位的驱动能力,只有P0口的一半。,7.1 发光二极管的显示,当P0口的某位为高电平时,可提供400A的拉电流;当P0口某位为低电平(0.45V)时,可提供3.2mA的灌电流;而

2、P1P3口内部有30k左右的上拉电阻,如果高电平输出,则从P1、P2和P3口输出的拉电流Id仅为几百A,驱动能力较弱,亮度较差; 如果端口引脚为低电平,能使灌电流Id从单片机的外部流入内部,则将大大增加流过的灌电流值;所以,AT89S52单片机任何一个端口要想获得较大的驱动能力,要采用低电平输出。 如果一定要高电平驱动,可在单片机与发光二极管之间加驱动电路,如74LS04、74LS244等。,7.1 发光二极管的显示,(a)不恰当的连接:高电平驱动 (b)恰当的连接:低电平驱动,7.1 发光二极管的显示,思考:如何将发光二极管与单片机P1口连接起来?,7.2 开关状态检测,检测开关处于闭合状态

3、还是打开状态,只需把开关一端接到I/O端口的引脚上,另一端接地,然后通过检测I/O端口引脚的电平来实现。,【例7-2】 如图7-3所示,利用单片机、1个开关k和1个发光二极管LED,构成一个简单的检测开关k是否闭合的系统。,7.2 开关状态检测,参考程序,常见显示器,7.3 LED数码管显示,液晶显示器,液晶显示屏,LED显示屏,LED数码管,7.3.1 LED数码管显示原理,LED数码管在单片机系统中应用非常广泛。 LED(Light Emitting Diode)是发光二极管缩写。 LED数码管是由发光二极管构成的。,7.3.1 LED数码管的结构,常见的LED数码管为“8”字型的,共计8

4、段。每一段对应一个发光二极管。有共阳极和共阴极两种,共阴极发光二极管的阴极连在一起,通常公共阴极接地。当阳极为高电平时,发光二极管点亮。,共阳极LED数码管的发光二极管的阳极连接在一起,公共阳极接正电压,当某个发光二极管的阴极接低电平时,发光二极管被点亮,为了使数码管显示不同的符号或数字,要把某些段发光二极管点亮,就要为LED数码管提供控制字,该控制字称为段码(字型码)。 LED数码管共计8段,正好是一个字节。习惯上是以“a”段对应段码字节的最低位。各段与字节中各位对应关系如表所示。,段码(字型码),段码表,以共阴极数码管为例,思考:试写出H、L的段码?,7.3.1 LED数码管的结构,【例7

5、-3】用单片机控制一个8段LED数码管,如图7-5所示。要求数码管反复循环显示单个数字:09。,参考程序,7.3.2 LED数码管的显示方式,图为显示4位字符的LED数码管的结构原理图。4位位选线和84条段码线。段码线控制显示字型,而位选线控制着该显示位的LED数码管的亮或暗。 LED数码管有两种显示方式:静态显示和动态显示。,1LED静态显示方式,无论多少位LED数码管,同时处于显示状态。,各位的共阴极(或共阳极)连接在一起并接地(或接+5V);每位的段码线(adp)分别与一个8位的I/O口锁存器输出相连。,静态显示的特点 静态显示方式的显示无闪烁,亮度都较高,软件控制比较容易; 占用口线多

6、。 当前LED使用静态显示比较常见(配合使用74LS164),1LED静态显示方式,2LED动态显示方式,无论在任何时刻只有一个LED数码管处于显示状态,即单片机采用“扫描”方式控制各个数码管轮流显示。,段码线的相应段并联在一起,由一个8位I/O口控制;而各位的共阳极或共阴极分别由相应的I/O线控制,分时选通。,4位8段LED动态显示电路,段码线占用一个8位I/O口,位选线占用一个4位I/O口。 采用动态的“扫描”显示方式。即在某一时刻,只让某一位的位选线处于选通状态,而其他各位的位选线处于关闭状态,同时,段码线上输出相应位要显示字符的段码。,动态显示原理,在某一时刻,只有一位显示,其他各位熄

7、灭,由于余辉和人眼的“视觉暂留”作用,只要每位显示间隔足够短,则可以造成“多位同时亮”的假象,达到同时显示的效果。,动态显示的特点,优点是硬件电路简单,显示器越多,优势越明显。缺点是显示亮度不如静态显示的亮度高。如果“扫描”速率较低,会出现闪烁现象。,7.3.3 LED数码管静态显示设计,【例7-4】 用AT89S52设计一个2位LED数码管显示的 “秒表”, 显示时间为0099秒,每秒自动加1。原理电路如图7-8所示。电路采用单片机的P2口、P3口分别控制两个LED数码管作为“秒表”的时间显示。显示数字的段码采用查表方法。“秒”计时产生采用软件延时的方法。,7.3.3 LED数码管静态显示设

8、计,7.6 键盘接口设计,键盘具有向单片机输入数据、命令等功能,是人与单片机对话的主要手段。,7.6.1 键盘接口设计应解决的问题,1键盘的任务任务有三项:(1) 判别是否有键按下?若有,进入下一步工作。(2)识别哪一个键被按下,并求出相应的键值。(3)根据键值,找到相应键值的处理程序入口。,最常用的是按键式键盘,其本质上就是一个开关。按键开关的两端分别连接在行线和列线上,通过键盘开关机械触点的断开、闭合,其行线电压输出波形如图所示。,2. 键盘输入的特点,29,t1和t3分别为键的闭合和断开过程中的抖动期(呈现一串负脉冲),抖动时间长短与开关的机械特性有关,一般为510ms。,t2为稳定的闭

9、合期,其时间由按键动作确定,一般为十分之几秒到几秒。,t0、t4为断开期。,3按键的识别,键的闭合与否,行线输出电压上就是呈现高电平或低电平。 高电平,表示键断开,低电平则表示键闭合。 通过对行线电平的高低状态的检测,可确认按键按下以及按键释放与否。为了确保对一次按键动作只确认一次按键有效,必须消除抖动期t1和t3的影响。,30,4消除按键抖动的两种方法,一种软件延时,本思想是:在检测到有键按下时,该键所对应的行线为低电平,执行一段延时10ms的子程序后,确认该行线电平是否仍为低电平,如果仍为低电平,则确认该行确实有键按下。当按键松开时,方法同上。采取本措施,可消除两个抖动期t1和t3的影响。

10、另一种是采用专用的键盘/显示器接口芯片,这类芯片中都有自动去抖动的硬件电路。,7.6.2 独立式键盘的设计,在单片机中,常见的键盘有两种结构:独立式键盘和矩阵式键盘。对于独立式键盘:,一键一线,各键相互独立,每个键各接一条I/O口线,通过检测I/O输入线的电平状态,可容易地判断哪个按键被按下。,当某一按键按下时,对应的检测线就变成了低电平,与其他按键相连的检测线仍为高电平。,独立式按键特点,优点:电路简单,各条检测线独立,识别按下按键的软件编写简单。适用于键盘按键数目较少的场合。缺点:不适用于键盘按键数目较多的场合,因为将占用较多的I/O口线。,独立式键盘的查询方式示例,【例7-8】对图7-2

11、1所示独立式键盘,用查询方式实现键盘扫描,根据按下不同按键,对其进行处理。,矩阵式(也称行列式)键盘用于按键数目较多的场合,由行线和列线组成,按键位于行、列的交叉点上。如图所示,一个44的矩阵键盘可以构成一个16个按键键盘。在按键数目较多的场合,要节省较多的I/O口线。,矩阵中无按键按下时,行线为高电平;当有按键按下时,行线电平状态将由与此行线相连的列线的电平决定。列线的电平如果为低,则行线电平为低;列线的电平如果为高,则行线的电平也为高,这是识别按键是否按下的关键所在。,7.6.3 矩阵式键盘的设计,矩阵按键识别法:扫描法,第1步,识别键盘有无键按下。先把所有列线均置为0,然后检查各行线电平

12、是否都为高,如果不全为高,说明有键按下,否则无键被按下。 例如,当键3按下时,第1行线为低,还不能确定是键3被按下,因为如果同一行的键2、1或0之一被按下,行线也为低电平。只能得出第1行有键被按下的结论。,39,第2步,识别出哪个按键被按下。采用逐列扫描法,在某一时刻只让1条列线处于低电平,其余所有列线处于高电平。 当第1列为低电平,其余各列为高电平时,因为是键3被按下,第1行的行线仍处于高电平;当第2列为低电平,其余各列为高电平时,第1行的行线仍处于高电平;直到让第4列为低电平,其余各列为高电平时,此时第1行的行线电平变为低电平,据此,可判断第1行第4列交叉点处的按键,即键3被按下。,矩阵按

13、键识别法:线反转法,扫描法要逐列扫描查询,有时则要多次扫描。而线反转法则很简练,无论被按键是处于第一列或最后一列,均只需经过两步便能获得此按键所在的行列值,其具体步骤为:让行线编程为输入线,列线编程为输出线,并使输出线输出为全低电平,则行线中电平由高变低的所在行为按键所在行。再把行线编程为输出线,列线编程为输入线,并使输出线输出为全低电平,则列线中电平由高变低所在列为按键所在列。两步即可确定按键所在的行和列,从而识别出所按的键。,假设键3被按下。第一步,P1.0P1.3输出全为“0”,然后,读入P1.4P1.7线的状态,结果P1.4=0,而P1.5P1.7均为1,因此,第1行出现电平的变化,说

14、明第1行有键按下;,41,第二步,让P1.4P1.7输出全为“0”,然后,读入P1.0P1.3位,结果P1.0=0,而P1.1P1.3均为1,因此第4列出现电平的变化,说明第4列有键按下。 综上所述,即第1行、第4列按键被按下,此按键即键3按下。线反转法简单适用,但不要忘记按键去抖动处理。,矩阵按键识别法:线反转法,7.6.4 键盘的工作方式,单片机在忙于其他各项工作任务时,如何兼顾键盘的输入,这取决于键盘的工作方式。工作方式选取原则是,既要保证及时响应按键操作,又不过多占用单片机工作时间。键盘工作方式有3种,即编程扫描、定时扫描和中断扫描。,1编程扫描方式,也称查询方式,利用单片机空闲时,调

15、用键盘扫描子程序,反复扫描键盘。 如果单片机的查询的频率过高,虽能及时响应键盘的输入,但也会影响其他任务的进行。查询的频率过低,可能会键盘输入漏判。 所以要根据单片机系统的繁忙程度和键盘的操作频率,来调整键盘扫描的频率。,2定时扫描方式,每隔一定的时间对键盘扫描一次。在这种方式中,通常利用单片机内的定时器产生的定时中断,进入中断子程序来对键盘进行扫描,在有键按下时识别出该键,并执行相应键的处理程序。为了不漏判有效的按键,定时中断的周期一般应小于100ms。,3 中断扫描方式,键盘按键按下,发出中断请求信号,单片机响应中断,执行键盘扫描程序中断服务子程序。如无键按下,单片机将不理睬键盘。此种方式的优点是,只有按键按下时,才进行处理,所以其实时性强,工作效率高。,本章小结,1. 掌握LED数码管硬件原理;2. 能写出共阴、共阳数码管在具体电路中的段码;3. 掌握静态显示方式与动态显示原理;4. 掌握静态显示的电路和程序设计;5. 理解键盘的工作原理;6. 掌握独立式键盘的硬件与软件设计;7. 理解矩阵式键盘的按键识别方法: 扫描法和线反转法。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号