111

第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

  • Upload
    tomai

  • View
    143

  • Download
    0

Embed Size (px)

DESCRIPTION

第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口 第七章 显示器与键盘接口 第八章 串行通信及接口 第九章 数模转换器和模数转换器接口. 本章知识点. LED 显示器与接口 * LCD 显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***. 本章知识点. LED 显示器与接口 * LCD 显示器与接口** 键盘与接口* 拨盘与接口** 可编程显示器键盘接口电路***. LED 显示器与接口. - PowerPoint PPT Presentation

Citation preview

Page 1: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口
Page 2: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

第一章 8086 程序设计第二章 MCS-51 程序设计第三章 微机基本系统的设计第四章 存贮器与接口第五章 并行接口第六章 计数器、定时器与接口第七章 显示器与键盘接口第八章 串行通信及接口第九章 数模转换器和模数转换器接口

Page 3: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

本章知识点• LED 显示器与接口 *

• LCD 显示器与接口 **

• 键盘与接口 *

• 拨盘与接口 **

• 可编程显示器键盘接口电路 ***

Page 4: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

本章知识点• LED 显示器与接口 *

• LCD 显示器与接口 **

• 键盘与接口 *

• 拨盘与接口 **

• 可编程显示器键盘接口电路 ***

Page 5: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• LED 显示器的基本结构• 静态显示的原理与接口• 动态显示的原理与接口• 点阵显示

LED 显示器与接口

Page 6: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 七段显示器:将发光二极管封装成数码显示的形式

a

b

cd

e

fg

h

LED 显示器的基本结构

Page 7: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 共阳七段显示器

• 共阴七段显示器

a b c d e f g h

com

a b c d e f g h

com

LED 显示器的基本结构

Page 8: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 点阵式显示器:

发光二极管封装成点阵形式,构成不同的字符甚至汉字、图形

LED 显示器的基本结构

Page 9: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 点阵式显示器:

发光二极管排列成矩阵,由亮与暗来产生字符或图形。每一行的阳极连在一起,每一列的阴极连在一起

LED 显示器的基本结构

Page 10: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

将显示的字符转换为对应的字型笔划编码,将此编

码通过输出数据锁存器,并经驱动电路接到显示器 。

静态显示的原理与接口

Page 11: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

驱动电路设计• 通过限流电阻控制流过发

光二极管的电流• 流过发光二极管电流为 5~

10mA

• 发光二极管的导通电压为2.2V 左右

5V

I N

R限流电阻

静态显示的原理与接口

Page 12: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

用一个 74LS273 或 74LS374 构成的输出锁存器来控制一位显示器。当输出锁存器发出一字符的笔划编码时,该显示器就显示该字符,由于 TTL电路的低电平吸电流的驱动能力较强,因此将接口电路的输出通过限流电阻与发光二极管显示器的负极相连接,其公共正极连接到正电源上,即采用共阳显示器。

静态显示的原理与接口

Page 13: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 电路图

静态显示的原理与接口

D0-D7

74LS374

74LS32WR

ADDR

+5V

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7

D0

D1

D2

D3

D4

D5

D6

D7

OECLK

Page 14: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 对于上述共阳显示器接口电路来说,当

控制信号为“ 0” 时,点亮相应的笔划,

当控制信号为“ 1” 时则不亮。

• 由此可得到输出编码表

静态显示的原理与接口

Page 15: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

字符 D7 h D6 g D5 f D4 e D3 d D2 c D1 b D0 a 编 码1

编 码20 X 1 0 0 0 0 0 0 40H C0H

1 X 1 1 1 1 0 0 1 79H F9H2 X 0 1 0 0 1 0 0 24H A4H3 X 0 1 1 0 0 0 0 30H B0H4 X 0 0 1 1 0 0 1 19H 99H5 X 0 0 1 0 0 1 0 12H 92H6 X 0 0 0 0 0 1 0 02H 82H7 X 1 1 1 1 0 0 0 78H F8H8 X 0 0 0 0 0 0 0 00H 80H9 X 0 0 1 1 0 0 0 18H 98HA X 0 0 0 1 0 0 0 08H 88HB X 0 0 0 0 0 1 1 03H 83HC X 1 0 0 0 1 1 0 46H C6HD X 0 1 0 0 0 0 1 21H A1HE X 0 0 0 0 1 1 0 06H 86HF X 0 0 0 1 1 1 0 0EH 8EH

静态显示的原理与接口

Page 16: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 要求多位显示器的场合,如果采用静态显示方法,则随着显示位数的增加,数据锁存器、驱动电路也相应地成倍增加。

• 动态显示将所有显示器的笔画接在一起,通过输出锁存器控制笔画的电平,而每位的公共端由另一个锁存器控制,决定此位是否点亮。

动态显示的原理与接口

Page 17: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

笔画锁存与驱动

位锁存与驱动

DATA

WR1

WR2

a -- h

动态显示的原理与接口

Page 18: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

笔画锁存器

a b c d e f g h a b c d e f g h a b c d e f g h a b c d e f g h

位锁存器

Q0

Q7

Q0

Q1

Q2

Q3

笔画

动态显示的原理与接口

Page 19: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

笔画:

四位共阴显示器相应笔划的阳极连在一起,笔划锁存器的输出通过一个由三极管构成的反相驱动器与共阴显示器的阳极相连。当笔划锁存器输出为“ 1” ,则驱动三极管截止,当输出为“ 0” 时,此三极管导通。

动态显示的原理与接口

Page 20: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

位:

每一位显示器的阴极由位锁存器的输出经

反相驱动器控制。当位锁存器输出为“ 1” ,

则驱动三极管导通,当输出为“ 0” 时,此三

极管截止。

动态显示的原理与接口

Page 21: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 控制笔划锁存器的输出能控制其对应的驱动三极管导通与否,而控制位锁存器的输出也能控制其对应的驱动三极管导通与否。

• 当位驱动三极管导通时,选中相应位,而显示的字型由笔划驱动三极管的导通与否决定。

• 为了保证正确显示,每次只能有一位显示器被选中。

动态显示的原理与接口

Page 22: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

被选中显示器的每个笔划流过的电流由笔划驱动三极管集电极的限流电阻决定,通常为 20 ~ 30mA 。

限流电阻

动态显示的原理与接口!

Page 23: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

当某一位显示器所有的笔划都点亮时,该位驱动三极管流过的电流为 16

0 ~ 240mA 。

位驱动三极管

动态显示的原理与接口

Page 24: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

为保证正确显示,输出某位笔画信号时,只能该位显示器被选中。

动态显示的原理与接口

1 2 3 4笔画

位1

位2

位3

位4

Page 25: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

调试动态显示程序时,应注意防止程序

在显示某一位时发生死循环情况,或是当程序在显示某一位时将其中止,使该位显示器长时间地点亮。由于此时流过显示器的电流较大,容易损坏器件。碰到这类情况应迅速将机器复位,以关闭显示器。

动态显示的原理与接口

Page 26: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 点阵显示器每一列的阴极连在一起,对每一列而言相当于一个共阴显示器。

• 同时每一行的阳极连在一起,相当于七段显示器的笔划。这样,可以把 5X7 的发光二极管点阵看作一个五位显示器。

• 仍可采用动态显示电路,以笔划锁存器控制行信号,以位锁存器控制列信号。

点阵显示的原理

Page 27: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

点阵显示的原理

行锁存与驱动

列锁存与驱动

Page 28: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

利用点阵显示字符和图形时,需用较多的编码。以 5X7 点阵为例,每列需要一个编码,如显示字母 B ,当第 1 列有效时,其行编码信号为 7FH ;当第 2 、 3 、 4 列有效时,其行编码信号为 49H ;当第 5 列有效时,其行编码信号为 36H 。由于采用了反相驱动器,行锁存器输出的编码依次为 00H 、 36H 、 36H 、 36H 、49H 。这五个字节的数字即字符 B 的编码。

点阵显示的原理

Page 29: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

本章知识点• LED 显示器与接口 *

• LCD 显示器与接口 **

• 键盘与接口 *

• 拨盘与接口 **

• 可编程显示器键盘接口电路 ***

Page 30: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• LCD 显示器的基本结构• 显示的原理与接口• 程序设计

LCD 显示器与接口

Page 31: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 字符型液晶显示模块是一类专用于显示字母、数字和自定义符号(简称字符)的点阵型液晶显示模块。

• 每个字符的显示形式为 5X8 或 5X11 点阵块组成的图形。

• 显示时,每个字符占一个字符位,字符位之间有一个点距的间隔起着字符间距和行距的作用。正由于行和列的间隔,这类模块只能显示字符而不能显示图形。

LCD 显示器的基本结构

Page 32: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

2 行 16 个字符的字符型液晶显示模块

• 字符型液晶显示驱动控制器(如 HD44780U )

• 液晶显示驱动(如 HD44100 )

LCD 显示器的基本结构

Page 33: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

字符型液晶显示模块的性能由所采用的控制器决定,主要包括:

– 控制模块、

– 显示驱动

– 接口电路三个部分

LCD 显示器的基本结构

Page 34: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

LCD 显示器的基本结构时序发生器

行驱动 列驱动

16位移位寄存器 40位锁存器

40位移位寄存器

并串数据转换

光标闪烁控制器

ROM字符发生

RAM字符发生

显示数据存储器DDRAM

指令寄存器 数据寄存器

I O缓冲“ ”忙标记

地址计数器

Page 35: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 显示数据存储器( DDRAM)•内置字符发生 RAM( CGRAM)• 地址计数器

LCD 显示器的基本结构

Page 36: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 显示数据存储器 DDRAM的内容决定显示器显示的内容, DDRAM的地址决定显示器显示字符的位置。

• 显示数据存储器的内容可通过计算机接口定义,写入的数据为当前地址所指示的显示内容。

LCD 显示器的基本结构

Page 37: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 当显示内容为标准字符时,由内置字符发生ROM提供字模,此时显示数据存储器 DDRAM的内容为标准ASCII码。

• 当显示内容为自定义字符时,由内置字符发生 RAM提供字模,此时显示数据存储器 DDRAM的内容为约定的自定义编码。

LCD 显示器的基本结构

Page 38: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 字符发生 RAM的内容与写入的字模(即字符或图形)对应;

• 字符发生 RAM的地址与字模位置相对应;• 字符发生 RAM内字模的内容可通过计算机

接口定义;•写入的数据为当前地址所指示的字模位置的

点阵数据。

LCD 显示器的基本结构

Page 39: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 地址指针计数器 AC是可读可写计数器,是

指示 DDRAM或 CGRAM当前地址的指针

计数器。

•具体指示的对象根据计算机最近写入的地

址设置指令的标识码决定。

LCD 显示器的基本结构

Page 40: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

在写入显示数据存储器 DDRAM操作时,地址指针计数器 AC指示当前 DDRAM的地址,此地址与显示器的显示位置对应,即写入的数据是当前地址所指示的显示器位置所显示内容的编码。

•标准字符编码( ASCII码 10H~0FFH)• 自定义字符编码( ASCII码 00H~07H)

LCD 显示器的基本结构

Page 41: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 显示存储器 DDRAM为 80个字节,各单元对应显示屏上的各字符位地址。

• DDRAM地址定义分两种,一种为一行显示的地址定义,一种为两行显示的地址定义。

• 在两行显示时,第二行总是从 DDRAM的后半部分开始,即第 41单元起单元定义为第二行 DDRAM单元。

LCD 显示器的基本结构

Page 42: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

LCD 显示器的基本结构

01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F00

41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F40

2 3 4 5 6 7 8 9 10 11 12 13 14 15 161

第一行地址

第二行地址

显示位置

Page 43: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 在写入字符发生 RAM( CGRAM)操作时,地址指针计数器 AC指示当前CGRAM的地址,此地址与字模位置相对应,即写入的数据为当前地址所指示的字模位置的点阵数据。

•写入的 5位数据为一行字符点阵,所以作为CGRAM字模库仅使用存储单元字节的低 5位,而高 3位不作为字模数据使用

LCD 显示器的基本结构

Page 44: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

在写入显示数据存储器 DDRAM操作时,地址指针计数器 AC指示当前 DDRAM的地址,此地址与显示器的显示位置对应,即写入的数据是当前地址所指示的显示器位置所显示的内容的编码。–标准字符编码( ASCII码 10H~0DFH)– 自定义字符编码( ASCII码 0E0H~0FFH)

LCD 显示器的基本结构

Page 45: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

LCD 显示器的基本结构时序发生器

行驱动 列驱动

16位移位寄存器 40位锁存器

40位移位寄存器

并串数据转换

光标闪烁控制器

ROM字符发生

RAM字符发生

显示数据存储器DDRAM

指令寄存器 数据寄存器

I O缓冲“ ”忙标记

地址计数器

Page 46: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• I/O缓冲器是接口模块以及控制模块中寄存器和存储器与计算机连接的结合部。

• 指令寄存器及译码器是将计算机发来的指令代码转译成控制逻辑信号,实现对控制器的设置。

• 数据寄存器包括数据输入和数据输出寄存器,用于暂存写入和读取的 DDRAM 和 CGRAM的数据。

LCD 显示器的基本结构

Page 47: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

接口模块将 BF “触发器 忙”标志作为“握手”信号,其状态表示控制器当前是否可以接收计算机发来的数据。

• BF=1 表示控制器内部正在处理指令或传输计算机送来的显示数据,不接收计算机对控制器的写、读数据操作,此时控制器将封锁 I/O缓冲器。

• BF=0 表示控制器己处理完计算机发来的信息,打开 I/O缓冲器等待新的操作。

LCD 显示器的基本结构

Page 48: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 类似于可编程接口电路,通过工作方式设定及数据交换使显示器工作

• 查询忙标记判断是否能设置命令或写入数据• 通过命令码设定工作方式• 通过命令码设定地址寄存器的定义• 将数据写入字符发生 RAM ( CGRAM )• 将数据写入显示数据存储器 DDRAM

显示的原理与接口

Page 49: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 工作方式设置格式

显示的原理与接口

  

0 0 1 DL N F 0 0

Page 50: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• DL 设置控制器与计算机的接口形式DL=0 设置数据总线为 4 位, =1 为 8

位• N 设置显示的字符行数

N=0 为一行字符行, =1 为两行字符行。• F 设置显示字符的字体

F=0 为 5X7 点阵字符体, =1 为 5Xl0 点阵字 符体

显示的原理与接口

Page 51: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• CGRAM 地址设置 格式

该指令将 6 位的 CGRAM 地址写入地址指针计数器 AC内,随后计算机对数据的操作是对 CGRAM 的读 /写操作

显示的原理与接口

  

 

0 1 A5 A4 A3 A2 A1 A0

Page 52: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• DDRAM 地址设置格式

该指令将 7 位的 DDRAM 地址写入地址指针计数器 AC内,随后计算机对数据的操作是对 DDRAM 的读 /写操作

显示的原理与接口

  

1 A6 A5 A4 A3 A2 A1 A0

Page 53: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

控制器与计算机的连接信号• DB0~DB7 三态 8位数据总线• RS 输入 寄存器选择信号• R/W 输入 读 /写选择信号• E 输入 使能信号

显示的原理与接口

Page 54: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

RS R/W E D0~D7 功能0 0 下降沿 输入 写指令代码

0 1 高电平 输出 读 BF及 AC值

1 0 下降沿 输入 写数据

1 1 高电平 输出 读数据

显示的原理与接口

Page 55: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

•直接访问方式把字符型液晶显示模块作为 I

/O 设备直接挂在计算机总线上• 8 位数据总线与 8031 的数据总线连接• E 信号由 WR 和 RD 信号逻辑与非后产生• 由高位地址组成的片选信号选通控制• RS 信号由地址 A0提供,• R/W 由地址 Al提供。

显示的原理与接口

Page 56: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

显示的原理与接口

8031

I NT1I NT0

T1T0

EA/ VP

X1X2

RESET

RDWR

RXDTXD

ALE/ PPSEN

1716 29

301110

31

1918

9

1213

1415

P10P11P12P13P14P15P16P17

P20P21P22P23P24P25P26P27

P01P00

P03P02

P05P04

P07P06

3233343536373839

2524

262728

232221

12345678

74LS373

OELE

Q0Q1Q2Q3Q4Q5Q6Q7

D0D1D2D3D4D5D6D7

138

141718

743

129

151619

652

111

74LS138

ABC

G2A

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

G2B

G179

101112131415

654

321 16PI N

123456789

10111213141516

A12A11

A13A14A15

A10A9A8

ALE

VCC

DB4DB3

DB5DB6DB7

DB2DB1DB0

GNDVCCVO

RDWR

12

3

74LS08

2

31

74LS02

U1

U4AU5A

U3

U2

J 1

DB4DB3

DB5DB6DB7

DB2DB1DB0 RS

R/ WE

Page 57: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

子程序•读BF状态•初始化程序•写入指令•写入数据

显示程序设计

Page 58: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

PUSH DPHPUSH DPLPUSH ACC

MOV DPTR,#CR_ADDMOVX A,@DPTRMOV COM,APOP ACCPOP DPLPOP DPHRET

显示程序设计

Page 59: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

显示程序设计

子程序•读BF状态•初始化程序•写入指令•写入数据

Page 60: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

INIT: MOV A,#30H ;工作方式设置指令代码 MOV DPTR,#CW_ADD ;指令口地址设置

MOV R2,#03H ; 循环量 =3 MOVX @DPTR, A ;写指令代码

INIT1:LCALL DELAY DJNZ R2,INIT1 MOV A,#38H ; 设置 8 位总线工作方式 MOVX @DPTR, A

显示程序设计

Page 61: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

MOV COM,#01H ;请屏LCALL PR1

MOV COM,#06H ; 设置输入方式LCALL PR1

MOV COM,#0FH ; 设置显示方式LCALL PR1

RET

显示程序设计

Page 62: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

显示程序设计

子程序•读BF状态•初始化程序•写入指令•写入数据

Page 63: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

PR1: PUSH DPH PUSH DPL PUSH ACC

MOV DPTR,#CR_ADDPR11:MOVX A,@DPTR

JB ACC.7,PR11MOV A,COMMOV DPTR,#CW_ADDMOVX @DPTR, A

显示程序设计POP ACC

POP DPL

POP DPH

RET

Page 64: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

显示程序设计

子程序•读BF状态•初始化程序•写入指令•写入数据

Page 65: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

PR1: PUSH DPH PUSH DPL PUSH ACC

MOV DPTR,#CR_ADDPR11:MOVX A,@DPTR

JB ACC.7,PR11MOV A,DATMOV DPTR,#DW_ADDMOVX @DPTR, A

显示程序设计POP ACC

POP DPL

POP DPH

RET

Page 66: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 自定义字符的写入• 数据写入

显示程序设计

Page 67: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

CG_WRITE:

MOV COM,#40H ; 设置 CGRAM 地址LCALL PR1

MOV R2,#18H

MOV R3,#00H

MOV DPTR,#CGTAB; 设置字模数据首地址CG1: MOV A,R3

MOVC A,@A+DPTR

MOV DAT,A

显示程序设计

Page 68: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

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 ;日

显示程序设计

Page 69: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

• 自定义字符的写入• 数据写入

显示程序设计

Page 70: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

; 字符显示LCALL CG_WRITE ;建立自定义字库MOV DPTR,#TABDY ; 设置字表首地址MOV R3,#00H

显示程序设计

Page 71: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

MOV COM,#80H ; 设置 DDRAM 地址LCALL PR1MOV R2,#0BH

LOOP1: MOV A,R3

MOVC A,@A+DPTR ;取字符MOV DAT,ALCALL PR2INC R3DJNZ R2,LOOP1

显示程序设计

Page 72: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

MOV COM,#0C0H ; 设置 DDRAM 地址LCALL PR1MOV R2,#09H

LOOP2:MOV A,R3MOVC A,@A+DPTR ;取字符MOV DAT,ALCALL PR2INC R3DJNZ R2,LOOP2

显示程序设计

Page 73: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

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

显示程序设计

Page 74: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

本章知识点• LED 显示器与接口 *

• LCD 显示器与接口 **

• 键盘与接口 *

• 拨盘与接口 **

• 可编程显示器键盘接口电路 ***

Page 75: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

•单排按键与 CPU 的连接 • 键盘与 CPU 的连接• 键盘接口设计

键盘与接口

Page 76: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

单排按键与 CPU的连接 每一个按键对应一个三态缓冲门的输入端。

键未按下时,此信号为“ 1” ,键按下时,此信号为“ 0” 。 CPU 通过向此接口发出读指令来得到当前按键的状态。没有按下的键为“ 1” ,按下的键为“ 0”

Page 77: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

单排按键与 CPU的连接按键通过三态缓冲器构成的输入口连接到数据总线上。执行读入按键指令时,地址选中信号和 CPU 发出的读命令有效,此输入口被选中,可读入按键的状态。

+5

D_BUS

RD

Page 78: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

单排按键与 CPU的连接• 在按键按下与断开的过程中,按键产生

机械抖动。抖动现象将使 CPU 产生误判断。

• 可用硬件或软件的去除抖动方法

按下

放开

Page 79: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

键盘与 CPU的连接 4X4 键盘的结构

行线信号可在程序控制下设置为高或低电平,列线信号作为状态读入信号。

Page 80: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

键盘与 CPU的连接

• 4X4 键盘的工作原理当无键按下时,行线与列线断开,所有列线均为高电平。当有一个键按下时,则与此键对应的行线与列线接通。如此行线为低电平,则此列线也为低电平。

5V

Page 81: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

键盘与 CPU的连接• 标准电路实现 4X4

键盘的接口行线与并行输出接口相连,列线与并行输入接口相连。输出口为无条件输出的数据锁存器,输入口为无条件输入的三态缓冲器,

行锁存与驱动

列缓冲

DATA

WR

RD

5V74LS273

74LS244

Page 82: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

8255A

D_BUS

WRRD

5V

设置为0方式

输出

设置为0方式

输入

键盘与 CPU的连接 可编程接口电路实现 4X4 键盘接口

采用可编程并行接口电路,如 INTEL 8255A等,但必须将它们编程为无条件输出和输入的方式

方式 0 输出

方式 0 输入

Page 83: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

键盘与 CPU的连接 可编程逻辑器件实现

4X4 键盘接口

用 CPLD构成输入输出接口

CPLD

D_BUS

WRRD

5V

无条件输出口

无条件输入口

Page 84: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

键盘与 CPU的连接• 键盘程序设计 为确定是否有键按下, CPU先通过并行输出口

使所有的行线为低电平,然后通过并行输入口读入列信号,若为全“ 1” ,则没有键按下,若有一个为“ 0” ,则表示有一个键已按下。

1读入列值为全 无键按下,返回

N

Y

使所有行为低电平

Page 85: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

•若有一个为“ 0” ,则表示有一个键已按下。

• 为消去按下时的抖动现象,程序延迟20ms后再判断具体是哪一个键按下。

键盘与 CPU的连接

1读入列值为全

已到最后行

Y

置第一行

使此行为低电平

置下一行

误动作,返回

20ms延迟

Y

N

N

Page 86: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

先将第一行置为低电平,然后读入列信号,若有一个为 “ 0” , 则按下的键在此行;若为全“ 1” , 则按下的键不在此行,再将下一行置为低电平,并测试列信号……。

键盘与 CPU的连接

1读入列值为全

已到最后行

Y

置第一行

使此行为低电平

置下一行

误动作,返回

20ms延迟

Y

N

N

Page 87: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

如果在最后一行也为低电平时仍未找到按下的键,则认为刚才有键按下的情况为误动作。

键盘与 CPU的连接

1读入列值为全

已到最后行

Y

置第一行

使此行为低电平

置下一行

误动作,返回

20ms延迟

Y

N

N

Page 88: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

对找到的键,进行 分析并处理

键盘与 CPU的连接得到键值

20ms延迟

1读入列值为全

处理此键

N

Y

Page 89: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

中断方式的 4X4 键盘接口

• 所有列信号相与,作为中断申请信号。先使所有行都为低电平,当有键按下时,中断申请触发信号变高,产生向 CPU申请中断的信号 INT ,

键盘与 CPU的连接

74LS74

CLK

DQ

Q

SDCD

+5V

D0-D7 74LS374

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7

CLK

D0

D1

D2

D3

D4

D5

D6

D7

74LS32

74LS244

1Y11Y21Y31Y42Y12Y22Y32Y4

1A11A21A31A42A12A22A32A4

1G2G

74LS32

+5

OE地址选中-WR

地址选中-RD

I NT

I NTR

Page 90: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

74LS374

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7

CLK

D0

D1

D2

D3

D4

D5

D6

D7

74LS244

1Y11Y21Y31Y42Y12Y22Y32Y4

1A11A21A31A42A12A22A32A4

1G2G

+5

OE

A0

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

A15

A16

A17

A18

A19

D0

D1

D2

D3

D4

D5

D6

D7

74LS138

CBA

G2A

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

G2B

G1

AEN

I ORI OW

ISA总线

A8A7A6

A9A5

A4

A2A1A0

键盘接口设计• 4X4 键盘与 ISA总线的接口

输出口

输入口

译码译码

Page 91: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

键盘接口设计• 4X4 键盘与 89C51 的接口

74LS373

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7

LEOE

D0

D1

D2

D3

D4

D5

D6

D7

89C51

P1. 1

P1. 0

P1. 3

P1. 2

P1. 5

P1. 4

P1. 7

P1. 6

P2. 0

P2. 1

P2. 2

P2. 3

P2. 4

P2. 5

P2. 6

P2. 7

P0. 0

P0. 1

P0. 2

P0. 3

P0. 4

P0. 5

P0. 6

P0. 7

I NT1I NT0

T1T0

EA/ VP

X1X2

RESETRDWR

RXDTXD

ALE/ PPSEN 74LS138

CBA

G2A

Y0

Y1

Y2

Y3

Y4

Y5

Y6

Y7

G2B

G1

+5V

74LS374

Q0

Q1

Q2

Q3

Q4

Q5

Q6

Q7

CLK

D0

D1

D2

D3

D4

D5

D6

D7

74LS32

74LS244

1Y11Y21Y31Y42Y12Y22Y32Y4

1A11A21A31A42A12A22A32A4

1G2G

74LS32

+5

OE

A0-A15

6-20图

输出口

输入口

译码

Page 92: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

键盘接口设计• 4X4 键盘与 89C51 的接口 - CPLD

FD4

D[0: 3]

C

Q[0: 3]D_BUS

WR_KEY

RD_KEY

键列线

OBUFT4 I BUF4

OBUF4I OPAD8 OPAD4

键行线

I BUF4

I PAD4

I PADI BUF

A15

I PADI BUF

A14

I PADI BUF

A13

I PADI BUF

WR

I PADI BUF

RD

地址译码

输出口

输入口

译码

Page 93: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

本章知识点• LED 显示器与接口 *

• LCD 显示器与接口 **

• 键盘与接口 *

• 拨盘与接口 **

• 可编程显示器键盘接口电路 ***

Page 94: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

拨盘与接口

•拨盘开关 •多个拨盘与 CPU 的连接

Page 95: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

拨盘开关• 拨盘开关的结构

84

2

1

A

BCD 码的拨盘开关有 0~ 9十个位置,开关后部有 8、 4、 2 、 1 、A五个接点。其中 A为控制线, 8、4、 2 、 1 四个接点为开关的输出线。当拨盘开关置于不同位置时,控制线A与 8、 4、 2 、 1 中某些接点接通。如拨到 0,则所有的接点与 A均不通;如拨到 1 ,则 1 与控制线A接通,其余的均不通。

Page 96: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

8 4 2 1

0 X X X X

1 X X X O

2 X X O X

3 X X O O

4 X O X X

5 X O X O

6 X O O X

7 X O O O

8 0 X X X

9 O X X O

拨盘开关• 拨盘开关的输出信号•O 表示控制线 A 与该端接通•X 表示控制线 A 与该端不通•把开关的输出线经电阻接到电源上,把控制线 A 接地,则接通的输出端为“ 0” ,不通的输出端为“ 1” 。这时输出码为开关位置对应的 BCD 码的反码

Page 97: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

D0-D3

+5

ADDR-RD

A8

2

4

1

拨盘与 CPU的连接• 单个拨盘的接口

Page 98: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

拨盘与 CPU的连接多个拨盘相连• 开关 K1 拔在数字 5

的位置,开关 K2 拨在数字 1 的位置。

• 读取开关 K1 的数据,将 A1 为低电平、 A2 为高电平时, A1的低电平将通过 K2的输出线 1 加到控制线 A2 上

A8

4

1

2

A8

4

1

2

A1 A2

K1 K2

Page 99: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

DATA

WR

RD

74LS374

74LS244

A1 A2

+5

A8

4

1

2

A8

4

1

2

拨盘与 CPU的连接 多个拨盘接口• 输出信号经并行

输出口 74LS 374与拨盘开关的控制线 A1 、 A2 相连。

• 拨盘开关的输出经二级管隔离后接到并行输入口 74LS 244 的输入端。

Page 100: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

本章知识点• LED 显示器与接口 *

• LCD 显示器与接口 **

• 键盘与接口 *

• 拨盘与接口 **

• 可编程显示器键盘接口电路 ***

Page 101: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

可编程键盘、显示器接口

INTEL 8279

•接口与工作方式 •编程•应用

Page 102: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

接口与工作方式Intel 8279 与 CPU 之间的连线:• D0~D7 数据线• IRQ 中断申请信号,高电平有效• -RD 、 -WR 读写信号• RESET 复位信号,高电平有效• -CS 片选信号• A0 缓冲器地址, A0=0 表示数据口, A0=1 表示表

示命令、状态口• CLK 外部时钟输入,产生内部 100kHz 信号,输入

信号频率低于 2MHz 。

Page 103: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

接口与工作方式Intel 8279 与外部的连线:• SL0 ~ SL3 扫描信号,用于键盘与显示器的扫描• RL0 ~ RL7 健输入信号,由内部电阻拉成高电平• SHIFT , CNTL / STB 键控制线,由内部电阻拉成

高电平• OUTB0~3 , OUTA0~3 输出显示数据, OUTA3 最

高位, OUTB0 最低位• -BD 消隐信号

Page 104: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

接口与工作方式DD 显示方式

0 0 0 D D K K K

DD 显 示 方 式

0 0 8 个 8 段字符显示,左边输入

0 1 16 个 8 段字符显示,左边输入

1 0 8 个 8 段字符显示,右边输入

1 1 16 个 8 段字符显示,右边输入

D7 D0

Page 105: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

接口与工作方式KKK 键盘操作方式

0 0 0 D D K K K

D7 D0

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 选通输入,内部译码显示扫描

Page 106: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

编 程

初始化

FIFO读 状态

时钟编程

设置工作方式

DU=1?

N

Y

发清除命令

Page 107: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

编 程

向显示器 RAM写入数据

FIFO读 状态

时钟编程

设置工作方式

DU=1?

N

Y

发清除命令

Page 108: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

编 程

读 FIFQ/传感器 RAM 数据

FIFO读 状态

RAM中有数据?N

发出读命令

Y

读入数值

Page 109: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

RL0RL1RL2RL3

SL0SL1SL2-BD

OUTA0-3

OUTB0-3

INTEL8279

4*4键盘

行 线

列线

8位动态显示器

位驱动段驱动

-Y0 -Y1 -Y2 -Y3

A B C -G2A G1-G2B

-Y0 -Y8

A B C -G2A G1-G2B

...

.

.

‘ 1’

74LS138

74LS138

应 用

选择外部译码方式,键盘的行扫描信号由扫描输出信号 SL0~SL2 经 74LS138译码后得到。列信号通过 RL0~RL3送入 8279。

Page 110: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

RL0RL1RL2RL3

SL0SL1SL2-BD

OUTA0-3

OUTB0-3

INTEL8279

4*4键盘

行 线

列线

8位动态显示器

位驱动段驱动

-Y0 -Y1 -Y2 -Y3

A B C -G2A G1-G2B

-Y0 -Y8

A B C -G2A G1-G2B

...

.

.

‘ 1’

74LS138

74LS138

应 用• 显示器的位选择

由 SL0~SL2 经 74LS138译码得到,BD 接 74LS138控制端,当其有效时,译码器输出全为高电平,所有显示器不亮

• 显示器段信号由OUTB0~3 , OUTA0~3 经驱动后提供

Page 111: 第一章 8086 程序设计 第二章 MCS-51 程序设计 第三章 微机基本系统的设计 第四章 存贮器与接口 第五章 并行接口 第六章 计数器、定时器与接口

RL0RL1RL2RL3

SL0SL1SL2-BD

OUTA0-3

OUTB0-3

INTEL8279

4*4键盘

行 线

列线

8位动态显示器

位驱动段驱动

-Y0 -Y1 -Y2 -Y3

A B C -G2A G1-G2B

-Y0 -Y8

A B C -G2A G1-G2B

...

.

.

‘ 1’

74LS138

74LS138

应 用 8279 选择外部译码方式,键

盘的行扫描信号由扫描输出信号 SL0~SL2 经 74LS138 译码后得到。列信号通过 RL0~RL3 送入 8279 。显示器的位选择也由 SL0~SL2 经 74LS138译码得到, BD 接 74LS138 控制端,当其有效时,译码器输出全为高电平,所有显示器不亮。采用共阴显示器,位选择信号经同相驱动器后加到显示器阴极。显示器段信号由 OUTB0~3 , OUTA0~3 经驱动后提供,由于此驱动器是反相的,则输出为 0 时点亮,为 1 时不亮