第10章 键盘显示器接口

更新时间:2023-05-28 15:04:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

第10章 AT89S51单片机与输入/输出 外设的接口

第10章 10.1 LED数码管的显示原理 10.1.1 LED数码管的结构 10.1.2 LED数码管工作原理

目录

10.2 键盘接口原理10.2.1 键盘输入应解决的问题

10.2.2 键盘的工作原理10.2.3 键盘的工作方式 10.3 键盘/显示器接口设计实例 10.3.1 利用AT89S51单片机串行口实现的键盘/显示器接口2

10.3.2 各种专用的键盘/显示器接口芯片简介10.3.3 专用接口芯片CH451实现的键盘/显示器控制 10.3.4 专用接口芯片HD7279实现的键盘/显示器控制 10.4 AT89S51单片机与液晶显示器(LCD)的接口 10.4.1 LCD显示器的分类

10.4.2 点阵字符型液晶显示模块介绍10.4.3 AT89S51单片机与LCD的接口及软件编程 10.5 AT89S51单片机与微型打印机TP P-40A/16A的接口 10.6 AT89S51单片机与BCD码拨盘的接口设计

内容概要 大多数的单片机应用系统,都要配置输入外设和输出外 设。常用的输入外设有键盘、BCD码拨盘等;常用的输出 外设有LED数码管、LCD显示器、打印机等。 本章介绍AT89S51与各种输入外设、输出外设的接口 设计以及软件编程。

10.1 LED数码管的显示原理LED(Light Emitting Diode)发光二极管缩写。LED 数码管是由发光二极管构成的。 10.1.1 LED数码管的结构 常见的LED数码管为“8”字型的,共计8段。每一段

对应一个发光二极管。有共阳极和共阴极两种,如图10-1所示。共阴极发光二极管的阴极连在一起,通常公共阴极 接地。当阳极为高电平时,发光二极管点亮。 同样,共阳极LED数码管的发光二极管的阳极连接在 一起,公共阳极接正电压,当某个发光二极管的阴极接低

电平时,发光二极管被点亮,相应的段被显示。5

图10-1

8段LED数码管结构及外形6

为了使数码管显示不同的符号或数字,要把某些段发光二极管点亮,就要为LED数码管提供段码(字型码)。 LED数码管共计8段。正好是一个字节。习惯上是以“a” 段对应段码字节的最低位。各段与字节中各位对应关系如 表10-1所示。

按照上述格式,显示各种字符的8段LED数码管的段码如表10-2所示。

表10-1只列出了部分段码,读者可以根据实际情况选用,或重新定义。除 “8”字型的LED数码管外,市面上还有 “±1”型、“米”字型和“点阵”型LED显示器,如图 10-2所示。本章均以“8”字型的LED数码管为例。

图10-2 其他各种字型的LED显示器9

10.1.2 LED数码管工作原理图10-3所示为显示4位字符的LED数码管的结构原理 图。N位位选线和8 N条段码线。段码线控制显示字型, 而位选线控制着该显示位的LED数码管的亮或暗。

图10-3

4位LED数码管的结构原理图10

LED数码管有静态显示和动态显示两种显示方式。1.LED静

态显示方式 无论多少位LED数码管,同时处于显示状态。 静态显示方式,各位的共阴极(或共阳极)连接在一起 并接地(或接+5V);每位的段码线(a~dp)分别与一 个8位的I/O口锁存器输出相连。如果送往各个LED数码管 所显示字符的段码一经确定,则相应I/O口锁存器锁存的

段码输出将维持不变,直到送入另一个字符的段码为止。正因为如此,静态显示方式的显示无闪烁,亮度都较高, 软件控制比较容易。11

图10-4为4位LED数码管静态显示器电路,各位可独立显示,静态显示方式接口编程容易,但是占用口线较多。 对图10-4电路,若用I/O口线接口,要占用4个8位I/O口。 因此在显示位数较多的情况下,所需的电流比较大,对电 源的要求也就随之增高,这时一般都采用动态显示方式。

2.LED动态显示方式无论在任何时刻只有一个LED数码管处于显示状态,即

单片机采用“扫描”方式控制各个数码管轮流显示。

图10-4

4位LED静态显示电路13

在多位LED显示时,为简化硬件电路,通常将所有显示 位的段码线的相应段并联在一起,由一个8位I/O口控制,

而各位的共阳极或共阴极分别由相应的I/O线控制,形成各位的分时选通。 图10-5所示为一个4位8段LED动态显示电路。其中段码 线占用一个8位I/O口,而位选线占用一个4位I/O口。必须 采用动态的“扫描”显示方式。即在某一时刻,只让某一

位的位选线处于选通状态,而其他各位的位选线处于关闭状态,同时,段码线上输出相应位要有显示的字符的段码。

图10-5

4位8段LED动态显示电路15

虽然这些字符是在不同时刻出现,而在同一时刻,只有一位显示,其他各位熄灭,由于余辉和人眼的“视觉暂留” 作用,只要每位显示间隔足够短,则可以造成“多位同时 亮”的假象,达到同时显示的效果。 LED不同位显示的时间间隔(扫描间隔)应根据实际情

况而定。显示位数多,将占大量的单片机时间,因此动态显示的实质是以牺牲单片机时间来换取I/O端口的减少。 图10-6所示为8位LED动态显示2009.10.10的过程。图 10-6(a)所示为显示过程,某一时刻,只有一位LED被 选通显示,其余位则是熄灭的;图10-6(b)所示为实际

的显示结果,人眼看到的是8位稳定的同时显示的字符。16

图10-6 8位LED动态显示过程和结果

动态显示的优点是硬件电路简单,显示器越多,优势越明显。缺点是显示亮度不如静态显示的亮度高。如果“扫 描”速率较低,会出现闪烁现象。17

10.2 键盘接口原理键盘具有向单片机输入数据、命令等功能,是人与单片 机对话的主要手段。下面介绍键盘的工作原理和键盘的工 作方式。 10

.2.1 键盘输入应解决的问题 1.键盘的任务 任务有三项:

(1) 判别是否有键按下?若有,进入下一步工作。(2)识别哪一个键被按下,并求出相应的键值。

(3)根据键值,找到相应键值的处理程序入口。18

2.键盘输入的特点常见键盘:触摸式键盘、薄膜键盘和按键式键盘,最常 用的是按键式键盘。按键实质上就是一个开关。如图10-7 (a)所示,按键开关的两端分别连接在行线和列线上, 通过键盘开关机械触点的断开、闭合,其行线电压输出波 形如图10-7(b)所示。

图10-7

键盘开关及其行线波形

图10-7(b)所示的t1和t3分别为键的闭合和断开过程中的抖动期(呈现一串负脉冲),抖动时间长短与开关的机 械特性有关,一般为5~10ms,t2为稳定的闭合期,其时 间由按键动作确定,一般为十分之几秒到几秒,t0、t4为 断开期。 3.按键的识别 键的闭合与否,行线输出电压上就是呈现高电平或低电 平。高电平,表示键断开,低电平则表示键闭合,通过对 行线电平的高低状态的检测,可确认按键按下以及按键释 放与否。为了确保对一次按键动作只确认一次按键有效,

必须消除抖动期t1和t3的影响。20

4.如何消除按键的抖动按键去抖动的方法有两种: 一种软件延时,本思想是:在检测到有键按下时,该键 所对应的行线为低电平,执行一段延时10ms的子程序后, 确认该行线电平是否仍为低电平,如果仍为低电平,则确

认该行确实有键按下。当按键松开时,行线的低电平变为高电平,执行一段延时10ms的子程序后,检测该行线为 高电平,说明按键确实已经松开。采取本措施,可消除两 个抖动期t1和t3的影响。 另一种是采用专用的键盘/显示器接口芯片,这类芯片

中都有自动去抖动的硬件电路。21

本文来源:https://www.bwwdw.com/article/eu84.html

Top