Download presentation
Presentation is loading. Please wait.
Published bySuryadi Kartawijaya Modified 5年之前
2
第七章 显示器与键盘接口 第一章 8086程序设计 第二章 MCS-51程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口
第一章 8086程序设计 第二章 MCS-51程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口 第七章 显示器与键盘接口 第八章 串行通信及接口 第九章 数模转换器和模数转换器接口
3
本章知识点 LED显示器与接口 * LCD显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***
4
本章知识点 LED显示器与接口 * LCD显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***
5
LED显示器与接口 LED显示器的基本结构 静态显示的原理与接口 动态显示的原理与接口 点阵显示
6
LED显示器的基本结构 七段显示器: 将发光二极管封装成数码显示的形式
7
LED显示器的基本结构 共阳七段显示器 共阴七段显示器
8
LED显示器的基本结构 点阵式显示器: 发光二极管封装成点阵形式,构成不同的字符甚至汉字、图形
9
LED显示器的基本结构 点阵式显示器: 发光二极管排列成矩阵,由亮与暗来产生字符或图形。每一行的阳极连在一起,每一列的阴极连在一起
10
静态显示的原理与接口 将显示的字符转换为对应的字型笔划编码,将此编码通过输出数据锁存器,并经驱动电路接到显示器 。
11
! 静态显示的原理与接口 驱动电路设计 通过限流电阻控制流过发光二极管的电流 流过发光二极管电流为5~10mA
发光二极管的导通电压为2.2V左右 !
12
静态显示的原理与接口 用一个74LS273或74LS374构成的输出锁存器来控制一位显示器。当输出锁存器发出一字符的笔划编码时,该显示器就显示该字符,由于TTL电路的低电平吸电流的驱动能力较强,因此将接口电路的输出通过限流电阻与发光二极管显示器的负极相连接,其公共正极连接到正电源上,即采用共阳显示器。
13
静态显示的原理与接口 电路图
14
静态显示的原理与接口 对于上述共阳显示器接口电路来说,当控制信号为“0”时,点亮相应的笔划,当控制信号为“1”时则不亮。
由此可得到输出编码表
15
静态显示的原理与接口 字符 D7 h D6 g D5 f D4 e D3 d D2 c D1 b D0 a 编码1 编码2 X 1 40H
X 1 40H C0H 79H F9H 2 24H A4H 3 30H B0H 4 19H 99H 5 12H 92H 6 02H 82H 7 78H F8H 8 00H 80H 9 18H 98H A 08H 88H B 03H 83H C 46H C6H D 21H A1H E 06H 86H F 0EH 8EH
16
动态显示的原理与接口 要求多位显示器的场合,如果采用静态显示方法,则随着显示位数的增加,数据锁存器、驱动电路也相应地成倍增加。
动态显示将所有显示器的笔画接在一起,通过输出锁存器控制笔画的电平,而每位的公共端由另一个锁存器控制,决定此位是否点亮。
17
动态显示的原理与接口
18
动态显示的原理与接口 笔画 位
19
动态显示的原理与接口 笔画: 四位共阴显示器相应笔划的阳极连在一起,笔划锁存器的输出通过一个由三极管构成的反相驱动器与共阴显示器的阳极相连。当笔划锁存器输出为“1”,则驱动三极管截止,当输出为“ 0”时,此三极管导通。
20
动态显示的原理与接口 位: 每一位显示器的阴极由位锁存器的输出经反相驱动器控制。当位锁存器输出为“1”,则驱动三极管导通,当输出为“ 0”时,此三极管截止。
21
动态显示的原理与接口 控制笔划锁存器的输出能控制其对应的驱动三极管导通与否,而控制位锁存器的输出也能控制其对应的驱动三极管导通与否。
当位驱动三极管导通时,选中相应位,而显示的字型由笔划驱动三极管的导通与否决定。 为了保证正确显示,每次只能有一位显示器被选中。
22
动态显示的原理与接口 ! 被选中显示器的每个笔划流过的电流由笔划驱动三极管集电极的限流电阻决定,通常为20~30mA。 限流电阻
23
动态显示的原理与接口 ! 当某一位显示器所有的笔划都点亮时,该位驱动三极管流过的电流为160~240mA。 位驱动三极管
24
动态显示的原理与接口 为保证正确显示,输出某位笔画信号时,只能该位显示器被选中。
25
动态显示的原理与接口 调试动态显示程序时,应注意防止程序在显示某一位时发生死循环情况,或是当程序在显示某一位时将其中止,使该位显示器长时间地点亮。由于此时流过显示器的电流较大,容易损坏器件。碰到这类情况应迅速将机器复位,以关闭显示器。
26
点阵显示的原理 点阵显示器每一列的阴极连在一起,对每一列而言相当于一个共阴显示器。
同时每一行的阳极连在一起,相当于七段显示器的笔划。这样,可以把5X7的发光二极管点阵看作一个五位显示器。 仍可采用动态显示电路,以笔划锁存器控制行信号,以位锁存器控制列信号。
27
点阵显示的原理
28
点阵显示的原理 利用点阵显示字符和图形时,需用较多的编码。以5X7点阵为例,每列需要一个编码,如显示字母B,当第1列有效时,其行编码信号为7FH;当第2、3、4列有效时,其行编码信号为49H;当第5列有效时,其行编码信号为36H。由于采用了反相驱动器,行锁存器输出的编码依次为00H、36H、36H、36H、49H。这五个字节的数字即字符B的编码。
29
本章知识点 LED显示器与接口 * LCD显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***
30
LCD显示器与接口 LCD显示器的基本结构 显示的原理与接口 程序设计
31
LCD显示器的基本结构 字符型液晶显示模块是一类专用于显示字母、数字和自定义符号(简称字符)的点阵型液晶显示模块。
每个字符的显示形式为5X8或5X11点阵块组成的图形。 显示时,每个字符占一个字符位,字符位之间有一个点距的间隔起着字符间距和行距的作用。正由于行和列的间隔,这类模块只能显示字符而不能显示图形。
32
LCD显示器的基本结构 2行16个字符的字符型液晶显示模块 字符型液晶显示驱动控制器 (如HD44780U) 液晶显示驱动
33
LCD显示器的基本结构 字符型液晶显示模块的性能由所采用的控制器决定,主要包括: 控制模块、 显示驱动 接口电路三个部分
34
LCD显示器的基本结构
35
LCD显示器的基本结构 显示数据存储器(DDRAM) 内置字符发生RAM(CGRAM) 地址计数器
36
LCD显示器的基本结构 显示数据存储器DDRAM的内容决定显示器显示的内容,DDRAM的地址决定显示器显示字符的位置。
显示数据存储器的内容可通过计算机接口定义,写入的数据为当前地址所指示的显示内容。
37
LCD显示器的基本结构 当显示内容为标准字符时,由内置字符发生ROM提供字模,此时显示数据存储器DDRAM的内容为标准ASCII码。
当显示内容为自定义字符时,由内置字符发生RAM提供字模,此时显示数据存储器DDRAM的内容为约定的自定义编码。
38
LCD显示器的基本结构 字符发生RAM的内容与写入的字模(即字符或图形)对应; 字符发生RAM的地址与字模位置相对应;
写入的数据为当前地址所指示的字模位置的点阵数据。
39
LCD显示器的基本结构 地址指针计数器AC是可读可写计数器,是指示DDRAM或CGRAM当前地址的指针计数器。
具体指示的对象根据计算机最近写入的地址设置指令的标识码决定。
40
LCD显示器的基本结构 在写入显示数据存储器DDRAM操作时,地址指针计数器AC指示当前DDRAM的地址,此地址与显示器的显示位置对应,即写入的数据是当前地址所指示的显示器位置所显示内容的编码。 标准字符编码(ASCII码10H~0FFH) 自定义字符编码(ASCII码00H~07H)
41
LCD显示器的基本结构 显示存储器DDRAM为80个字节,各单元对应显示屏上的各字符位地址。
在两行显示时,第二行总是从DDRAM的后半部分开始,即第41单元起单元定义为第二行DDRAM单元。
42
LCD显示器的基本结构
43
LCD显示器的基本结构 在写入字符发生RAM(CGRAM)操作时,地址指针计数器AC指示当前CGRAM的地址,此地址与字模位置相对应,即写入的数据为当前地址所指示的字模位置的点阵数据。 写入的5位数据为一行字符点阵,所以作为CGRAM字模库仅使用存储单元字节的低5位,而高3位不作为字模数据使用
44
LCD显示器的基本结构 在写入显示数据存储器DDRAM操作时,地址指针计数器AC指示当前DDRAM的地址,此地址与显示器的显示位置对应,即写入的数据是当前地址所指示的显示器位置所显示的内容的编码。 标准字符编码(ASCII码10H~0DFH) 自定义字符编码(ASCII码0E0H~0FFH)
45
LCD显示器的基本结构
46
LCD显示器的基本结构 I/O缓冲器是接口模块以及控制模块中寄存器和存储器与计算机连接的结合部。
指令寄存器及译码器是将计算机发来的指令代码转译成控制逻辑信号,实现对控制器的设置。 数据寄存器包括数据输入和数据输出寄存器,用于暂存写入和读取的DDRAM和CGRAM的数据。
47
LCD显示器的基本结构 接口模块将BF触发器“忙”标志作为“握手”信号,其状态表示控制器当前是否可以接收计算机发来的数据。
BF=1 表示控制器内部正在处理指令或传输计算机送来的显示数据,不接收计算机对控制器的写、读数据操作,此时控制器将封锁I/O缓冲器。 BF=0 表示控制器己处理完计算机发来的信息,打开I/O缓冲器等待新的操作。
48
显示的原理与接口 类似于可编程接口电路,通过工作方式设定及数据交换使显示器工作 查询忙标记判断是否能设置命令或写入数据
通过命令码设定工作方式 通过命令码设定地址寄存器的定义 将数据写入字符发生RAM(CGRAM) 将数据写入显示数据存储器DDRAM
49
显示的原理与接口 工作方式设置 格式 1 DL N F
50
显示的原理与接口 DL设置控制器与计算机的接口形式 DL=0 设置数据总线为4位,=1为8位 N 设置显示的字符行数
F 设置显示字符的字体 F=0为5X7点阵字符体,=1为5Xl0点阵字 符体
51
显示的原理与接口 CGRAM地址设置 格式 该指令将6位的CGRAM地址写入地址指针计数器AC内,随后计算机对数据的操作是对CGRAM的读/写操作 1 A5 A4 A3 A2 A1 A0
52
显示的原理与接口 DDRAM地址设置 格式 该指令将7位的DDRAM地址写入地址指针计数器AC内,随后计算机对数据的操作是对DDRAM的读/写操作 1 A6 A5 A4 A3 A2 A1 A0
53
显示的原理与接口 控制器与计算机的连接信号 DB0~DB7 三态 8位数据总线 RS 输入 寄存器选择信号 R/W 输入 读/写选择信号
E 输入 使能信号
54
显示的原理与接口 RS R/W E D0~D7 功能 下降沿 输入 写指令代码 1 高电平 输出 读BF及AC值 写数据 读数据
55
显示的原理与接口 直接访问方式把字符型液晶显示模块作为I/O设备直接挂在计算机总线上 8位数据总线与8031的数据总线连接
E信号由WR和RD信号逻辑与非后产生 由高位地址组成的片选信号选通控制 RS信号由地址A0提供, R/W由地址Al提供。
56
显示的原理与接口
57
显示程序设计 子程序 读BF状态 初始化程序 写入指令 写入数据
58
显示程序设计 PUSH DPH PUSH DPL PUSH ACC MOV DPTR,#CR_ADD MOVX A,@DPTR
MOV COM,A POP ACC POP DPL POP DPH RET
59
显示程序设计 子程序 读BF状态 初始化程序 写入指令 写入数据
60
显示程序设计 INIT: MOV A,#30H ;工作方式设置指令代码 MOV DPTR,#CW_ADD ;指令口地址设置
MOV R2,#03H ;循环量=3 A ;写指令代码 INIT1:LCALL DELAY DJNZ R2,INIT1 MOV A,#38H ;设置8位总线工作方式 A
61
显示程序设计 MOV COM,#01H ;请屏 LCALL PR1 MOV COM,#06H ;设置输入方式
MOV COM,#0FH ;设置显示方式 RET
62
显示程序设计 子程序 读BF状态 初始化程序 写入指令 写入数据
63
显示程序设计 POP ACC POP DPL POP DPH RET PR1: PUSH DPH PUSH DPL PUSH ACC
MOV DPTR,#CR_ADD PR11:MOVX JB ACC.7,PR11 MOV A,COM MOV DPTR,#CW_ADD A
64
显示程序设计 子程序 读BF状态 初始化程序 写入指令 写入数据
65
显示程序设计 PR1: PUSH DPH PUSH DPL PUSH ACC MOV DPTR,#CR_ADD
PR11:MOVX JB ACC.7,PR11 MOV A,DAT MOV DPTR,#DW_ADD A POP ACC POP DPL POP DPH RET
66
显示程序设计 自定义字符的写入 数据写入
67
显示程序设计 CG_WRITE: MOV COM,#40H ;设置CGRAM地址 LCALL PR1 MOV R2,#18H
MOV DPTR,#CGTAB;设置字模数据首地址 CG1: MOV A,R3 MOVC MOV DAT,A
68
显示程序设计 LCALL PR2 INC R3 DJNZ R2,CG1 RET CGTAB:
DB 08H,0FH,12H,0FH,0AH,1FH,02H,02H ;年 DB 0FH,09H,0FH,09H,0FH,09H,11H,00H ;月 DB 1FH,11H,11H,1FH,11H,11H,1FH,00H ;日
69
显示程序设计 自定义字符的写入 数据写入
70
显示程序设计 ;字符显示 LCALL CG_WRITE ;建立自定义字库 MOV DPTR,#TABDY ;设置字表首地址
MOV R3,#00H
71
显示程序设计 MOV COM,#80H ;设置DDRAM地址 LCALL PR1 MOV R2,#0BH LOOP1: MOV A,R3
MOVC ;取字符 MOV DAT,A LCALL PR2 INC R3 DJNZ R2,LOOP1
72
显示程序设计 MOV COM,#0C0H ;设置DDRAM地址 LCALL PR1 MOV R2,#09H LOOP2: MOV A,R3
MOVC ;取字符 MOV DAT,A LCALL PR2 INC R3 DJNZ R2,LOOP2
73
显示程序设计 ;2004年 5月 1日 ;V=1.234V TABDY: DB 32H,30H,30H,34H,00H
DB 20H,35H,01H,20H,31H,02H DB 32H,30H,30H,33H,00H DB 31H,32H,33H,34H,02H ;2004年 5月 1日 ;V=1.234V
74
本章知识点 LED显示器与接口 * LCD显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***
75
键盘与接口 单排按键与CPU的连接 键盘与CPU的连接 键盘接口设计
76
单排按键与CPU的连接 每一个按键对应一个三态缓冲门的输入端。键未按下时,此信号为“1”,键按下时,此信号为“0”。 CPU通过向此接口发出读指令来得到当前按键的状态。没有按下的键为“1”,按下的键为“0”
77
单排按键与CPU的连接 按键通过三态缓冲器构成的输入口连接到数据总线上。执行读入按键指令时,地址选中信号和CPU发出的读命令有效,此输入口被选中,可读入按键的状态。
78
单排按键与CPU的连接 在按键按下与断开的过程中,按键产生机械抖动。抖动现象将使 CPU产生误判断。 可用硬件或软件的去除抖动方法
79
键盘与CPU的连接 4X4键盘的结构 行线信号可在程序控制下设置为高或低电平,列线信号作为状态读入信号。
80
键盘与CPU的连接 4X4键盘的工作原理 当无键按下时,行线与列线断开,所有列线均为高电平。当有一个键按下时,则与此键对应的行线与列线接通。如此行线为低电平,则此列线也为低电平。
81
键盘与CPU的连接 标准电路实现4X4键盘的接口 74LS244 74LS273
行线与并行输出接口相连,列线与并行输入接口相连。输出口为无条件输出的数据锁存器,输入口为无条件输入的三态缓冲器,
82
键盘与CPU的连接 方式0输入 可编程接口电路实现4X4键盘接口 方式0输出
采用可编程并行接口电路,如INTEL 8255A等,但必须将它们编程为无条件输出和输入的方式
83
键盘与CPU的连接 可编程逻辑器件实现4X4键盘接口 用CPLD构成输入输出接口
84
键盘与CPU的连接 键盘程序设计 为确定是否有键按下,CPU先通过并行输出口使所有的行线为低电平,然后通过并行输入口读入列信号,若为全“1”,则没有键按下,若有一个为“0”,则表示有一个键已按下。
85
键盘与CPU的连接 若有一个为“0”,则表示有一个键已按下。 为消去按下时的抖动现象,程序延迟20ms后再判断具体是哪一个键按下。
86
键盘与CPU的连接 先将第一行置为低电平,然后读入列信号,若有一个为“0”,则按下的键在此行;若为全“1”,则按下的键不在此行,再将下一行置为低电平,并测试列信号……。
87
键盘与CPU的连接 如果在最后一行也为低电平时仍未找到按下的键,则认为刚才有键按下的情况为误动作。
88
键盘与CPU的连接 对找到的键,进行分析并处理
89
键盘与CPU的连接 中断方式的4X4键盘接口 所有列信号相与,作为中断申请信号。先使所有行都为低电平,当有键按下时,中断申请触发信号变高,产生向CPU申请中断的信号INT,
90
键盘接口设计 4X4键盘与ISA总线的接口 译码 输出口 输入口
91
键盘接口设计 4X4键盘与89C51的接口 译码 输出口 输入口
92
键盘接口设计 4X4键盘与89C51的接口 - CPLD 译码 输出口 输入口
93
本章知识点 LED显示器与接口 * LCD显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***
94
拨盘与接口 拨盘开关 多个拨盘与CPU的连接
95
拨盘开关 拨盘开关的结构 BCD码的拨盘开关有0~9十个位置,开关后部有8、4、2、1、A五个接点。其中A为控制线,8、4、2、1四个接点为开关的输出线。当拨盘开关置于不同位置时,控制线A与8、4、2、1中某些接点接通。如拨到0,则所有的接点与A均不通;如拨到1,则1与控制线A接通,其余的均不通。
96
拨盘开关 拨盘开关的输出信号 O表示控制线A与该端接通 X表示控制线A与该端不通
8 4 2 1 X O 3 5 6 7 9 拨盘开关的输出信号 O表示控制线A与该端接通 X表示控制线A与该端不通 把开关的输出线经电阻接到电源上,把控制线A接地,则接通的输出端为“0”,不通的输出端为“1”。这时输出码为开关位置对应的BCD码的反码
97
拨盘与CPU的连接 单个拨盘的接口
98
拨盘与CPU的连接 多个拨盘相连 开关K1拔在数字5的位置,开关K2拨在数字1的位置。
读取开关K1的数据,将A1为低电平、A2为高电平时,A1的低电平将通过K2的输出线1加到控制线A2上
99
拨盘与CPU的连接 多个拨盘接口 输出信号经并行输出口74LS 374与拨盘开关的控制线A1、A2相连。
100
本章知识点 LED显示器与接口 * LCD显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***
101
可编程键盘、显示器接口 INTEL 8279 接口与工作方式 编程 应用
102
接口与工作方式 Intel 8279与CPU之间的连线: D0~D7数据线 IRQ中断申请信号,高电平有效 -RD、-WR读写信号
RESET 复位信号,高电平有效 -CS片选信号 A0缓冲器地址,A0=0表示数据口,A0=1表示表示命令、状态口 CLK外部时钟输入,产生内部100kHz信号,输入信号频率低于2MHz。
103
接口与工作方式 Intel 8279与外部的连线: SL0~SL3扫描信号,用于键盘与显示器的扫描
RL0~RL7健输入信号,由内部电阻拉成高电平 SHIFT, CNTL/STB 键控制线,由内部电阻拉成高电平 OUTB0~3,OUTA0~3输出显示数据,OUTA3最高位,OUTB0最低位 -BD消隐信号
104
接口与工作方式 DD 显示方式 D7 D0 D K DD 显 示 方 式 0 0 8个8段字符显示,左边输入 0 1
D K DD 显 示 方 式 0 0 8个8段字符显示,左边输入 0 1 16个8段字符显示,左边输入 1 0 8个8段字符显示,右边输入 1 1 16个8段字符显示,右边输入
105
接口与工作方式 KKK键盘操作方式 D7 D0 D K KKK 键盘操作方式 0 0 0 外部译码,双键互锁 0 0 1 内部译码,双键互锁
D K KKK 键盘操作方式 0 0 0 外部译码,双键互锁 0 0 1 内部译码,双键互锁 0 1 0 外部译码,N键巡回 0 1 1 内部译码,N键巡回 1 0 0 外部译码,传感器方式 1 0 1 内部译码,传感器方式 1 1 0 选通输入,外部译码显示扫描 1 1 1 选通输入,内部译码显示扫描
106
编 程 初始化
107
编 程 向显示器RAM写入数据
108
编 程 读FIFQ/ 传感器 RAM数据
109
应 用 选择外部译码方式,键盘的行扫描信号由扫描输出信号SL0~SL2经74LS138译码后得到。列信号通过RL0~RL3送入8279。
110
应 用 显示器的位选择由SL0~SL2经74LS138译码得到,BD接74LS138控制端,当其有效时,译码器输出全为高电平,所有显示器不亮
显示器段信号由OUTB0~3,OUTA0~3经驱动后提供
111
应 用 8279选择外部译码方式,键盘的行扫描信号由扫描输出信号SL0~SL2经74LS138译码后得到。列信号通过RL0~RL3送入8279。显示器的位选择也由SL0~SL2经74LS138译码得到,BD接74LS138控制端,当其有效时,译码器输出全为高电平,所有显示器不亮。采用共阴显示器,位选择信号经同相驱动器后加到显示器阴极。显示器段信号由OUTB0~3,OUTA0~3经驱动后提供,由于此驱动器是反相的,则输出为0时点亮,为1时不亮
Similar presentations