单片机系统扩展56_第1页
单片机系统扩展56_第2页
单片机系统扩展56_第3页
单片机系统扩展56_第4页
单片机系统扩展56_第5页
已阅读5页,还剩35页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第7 7章章 单片机系统扩展单片机系统扩展 教学目标教学目标 介绍单片机程序存储器的扩展方法介绍单片机程序存储器的扩展方法 介绍单片机数据存储器的扩展方法介绍单片机数据存储器的扩展方法 介绍单片机介绍单片机I/O口的扩展方法口的扩展方法 学习要求学习要求 熟悉单片机片外三总线结构和扩展能力熟悉单片机片外三总线结构和扩展能力 掌握系统扩展掌握系统扩展EPROM,RAM,I/O口方法口方法 掌握地址译码及片选方法掌握地址译码及片选方法 了解单片机总线驱动能力和扩展方法了解单片机总线驱动能力和扩展方法 通常情况下,采用8051/8751/89C51的 最小应用系统最能发挥单片机体积小、成本低 的优

2、点。但在很多情况下,构成一个工业测控 系统时,考虑到传感器接口、伺服控制接口以 及人机对话接口等的需要,最小应用系统常常 不能满足要求,因此,必须在片外扩展相应的 外围芯片,这就是系统扩展。它包括程序存储 器(ROM)扩展、数据存储器(RAM)扩展、I/O 口扩展、定时/计数器扩展、中断系统扩展以及 其它特殊功能扩展等。 7.1 MCS-517.1 MCS-51系列单片机的外部扩展性能系列单片机的外部扩展性能 7.1.1 MCS-51系列单片机的片外总线结系列单片机的片外总线结 构构 为了满足系统扩展要求,MCS-51系 列单片机的片外引脚可以构成图7-1所示 的三总线结构,即地址总线(AB)

3、、数据 总线(DB)和控制总线(CB)。所有的外部 芯片都是通过这三组总线进行扩展。 图图7-1 单片机的片外三总线结构单片机的片外三总线结构 高8位地址 低8位地址 16位地址总线 8位数据总线 控制总线 P2口 ALE 8051 P0口 RD EA WR PSEN 地址 锁存器 1.地址总线地址总线(AB) 地址总线宽度为16位,因此可寻址范围为216=64KB。地址总线 由P0口提供低8位地址A7A0,由P2口提供高8位地址A15A8。 2.数据总线数据总线(DB) 数据总线由P0口提供,其宽度为8位。 3.3.控制总线控制总线(CB)(CB) 控制总线包括片外系统扩展用线和片外信号对单

4、片机的控制线。 , :用于片外数据存储器(RAM)的读写控制。当执行片外数 据存储器操作指令MOVX时,这两个信号自动生效。 :用于片外程序存储器(EPROM)的读数控制。 ALE:用于锁存P0口输出的低8位地址的控制线。通常,ALE在P0 口输出地址期间用其下降沿控制锁存器锁存地址数据。 :用于选择片内或片外程序存储器。当 =0时,只访问片外 程序存储器,而不管片内有无程序存储器。因此,在扩展并使用 外部程序存储器时,必须将 接地。 WR RD PSEN EAEA EA 7.1.2 MCS-517.1.2 MCS-51系列单片机的系统扩展能力系列单片机的系统扩展能力 根据地址总线宽度,MCS

5、-51系列单片机在片外可扩展的 存储器最大容量为64KB,地址范围为0000HFFFFH。 1.片外数据存储器与程序存储器的地址范围一样为64KB, 地址也可重复,它们由单片机不同的指令和控制信号区分: 读片外程序存储器的指令为MOVC,读写片外数据存储器的 指令为MOVX;读片外程序存储器的控制信号为 , 读写片外数据存储器的控制信号为 和 。 2.片外数据存储器与片内数据存储器的地址可重复,但 操作指令不同。对片内数据存储器读写的指令为MOV,对 片外数据存储器读写的指令为MOVX。 3.为配置外围设备而需要扩展的I/O接口,如A/D、D/A 等,与片外数据存储器统一编址, WRRD PS

6、EN 7.1.3 MCS-517.1.3 MCS-51系列单片机的总线驱动能力及扩展方法系列单片机的总线驱动能力及扩展方法 一、总线的驱动能力一、总线的驱动能力 MCS-51系列单片机作为数据总线和低8位地址总线的 P0口可驱动8个LSTTL电路,而P1、P2、P3只能驱动4个 LSTTL电路。当应用系统规模过大时,可能造成负载过重, 致使驱动能力不够,系统不能可靠地工作。 二、总线的扩展概述二、总线的扩展概述 在设计计算机应用系统硬件电路时,首先要估计总线 的负载情况,以确定是否需要对总线的驱动能力进行扩展。 地址总线和控制总线为单向的,可采用单向三态线驱 动器(如74LS244)进行驱动能

7、力的扩展。数据总线为双向的, 必须采用双向三态线驱动器(如74LS245)进行驱动能力的扩 展。 7.2 MCS-517.2 MCS-51系列单片机存储器扩展系列单片机存储器扩展 7.2.1程序储存器扩展程序储存器扩展 一、 储存器扩展概述 外部程序存储器芯片与单片机可按如下方式连接: 1.地址线的连接 外部程序存储器低8位地址线A0A7与P0口的口线P0.0P0.7对应 相连;外部程序存储器高8位地址线A8A15与P2口的口线P2.0P2.7 对应相连。 2.数据线的连接 外部程序存储器8位数据线D0D7与P0口的口线P0.0P0.7对应相连。 3.控制线的连接 (片外程序存储器取指信号)和

8、 (程序存储器输出允许信号) 相连;ALE(地址锁存允许信号)和 (地址锁存器锁存信号)相连; (片内/片外程序存储器选择信号),当选用8031/8032时,应接地; 单片机的相关地址线经过地址译码和程序存储器的片选信号 相 连。 由上面论述可以得到外部扩展程序存储器的一般连接方法, 见图7-2所示。 EA CE PSENOE G 图图7-2 单片机的外部程序存储器一般连接方法单片机的外部程序存储器一般连接方法 地址 锁存 器 P2.7 P2.0 ALE 8031 P0.7P0.0 EA PSEN A15 A8 A7外部程序 A0存储器 D7D0 OE 二、程序储存器二、程序储存器EPROM的

9、扩展的扩展 1.使用单片使用单片EPROM的扩展电路的扩展电路 图7-3为8031单片机外接一片EPROM 27256的扩展电路。 图图7-3 8031单片机扩展一片单片机扩展一片27256的电路的电路 1234 A B C D 4321 D C B A Title NumberRevisionSize A4 Date:11-Dec-2001Sheet of File:D:教 材 编 写 电 路 图 7-5.ddbDrawn By: EA/VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2

10、P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 U1 8031 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 A13 26 A14 27 CE 20 OE 22 VPP 1 D0 11 D1

11、 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U3 27256 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 Y 6MHZ C1 33P C233P C3 10uF R1 10K VccVcc 27256的 端是输出使能端,与8031的 端相连,当 有效时,把27256中的指令送上 P0口线。由于只扩展一片EPROM,27256的 片选端 可直接接地。27256的编程电压端VPP 接电源。

12、 当用户熟悉了其它EPROM芯片后,很容易 改成其它容量EPROM的单片扩展电路:扩展 27128时,去掉P2.7引出线,将27128的27脚接 Vcc;扩展2764时,去掉P2.6、P2.5引出线,并 将2764的27脚接Vcc,26脚不接;扩展2732时, 去掉P2.6、P2.5和P2.4引出线;扩展2716时,去 掉P2.6、P2.5、P2.4和P2.3引出线,并将2764的 Vpp接Vcc即可。 OE PSEN PSEN CE 3.使用多片使用多片EPROM的扩展电路的扩展电路 在扩展多片EPROM时,所有芯片的片选端 都必须按照地址线进行选择。芯片的片选是在 保证对EPROM片内存储

13、空间寻址条件下,使 用剩余的地址线进行的,分为线选法和译码法。 现以扩展多片2764 EPROM为例来说明这两种 片选法: 2764的片内地址为8K,因此片内寻址需占 用A12A0的13根地址线,尚剩余3根地址线A13、 A14、A15,采用线选法时,剩余的三根地址线 每根可接一个芯片的片选信号,则只能扩展3 片2764,见图7-4(a)所示;采用译码法时, 剩余三根地址线经过3-8译码得到8根片选信号, 可扩展8片2764,见图7-4(b)所示。 图图7-4(a) 线选法扩展三片线选法扩展三片2764的电路的电路 1234 A B C D 4321 D C B A Title NumberR

14、evisionSize A4 Date:12-Dec-2001Sheet of File:D:刘 电 霆 教 材 编 写 图 7-5.ddbDrawn By: EA/VP 31 X1 19 X2 18 RESET 9 RD 17 W R 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26

15、27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 U1 8031 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 CE 20 OE 22 PGM 27 VPP 1 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D

16、7 19 U3 2764 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 CE 20 OE 22 PGM 27 VPP 1 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U4 2764 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 CE 20 OE 22 PGM 27 VPP 1 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17

17、 D6 18 D7 19 U5 2764 Y 6M HZ C1 33p C2 33p C3 10u R1 10K Vcc 数据总线 地址总线 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 A8 A9 A10 A11 A12 A13 A14 A15 A0 A1 A2 A3 A4 A5 A6 A7 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3 A4 A5 A6

18、A7 A8 A9 A10 A11 A12 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 D0 D1 D2 D3 D4 D5 D6 D7 VccVcc A13A14A15 图图7-4(b) 译码法扩展三片译码法扩展三片2764的电路的电路 1234 A B C D 4321 D C B A Title NumberRevisionSize A4 Date:12-Dec-2001Sheet of File:D:刘 电 霆 教 材 编 写 图 7-5.ddbDrawn By: EA/VP 31 X1 19 X2 18 RESET 9 RD 17 W R 16 I

19、NT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 U1 8031 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 1

20、6 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 CE 20 OE 22 PGM 27 VPP 1 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U3 2764 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 CE 20 OE 22 PGM 27 VPP 1 D0 11 D1 12

21、D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U4 2764 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 CE 20 OE 22 PGM 27 VPP 1 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U5 2764 Y 6MHZ C1 33p C2 33p C3 10u R1 10K Vcc 数据总线 地址总线 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 AB0 AB1 AB2 AB3 AB4 A

22、B5 AB6 AB7 A8 A9 A10 A11 A12 A13 A14 A15 A0 A1 A2 A3 A4 A5 A6 A7 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 D0 D1 D2 D3 D4 D5 D6 D7 VccVcc A 1 B 2 C 3 E1 4 E2 5 E3 6 Y0

23、15 Y1 14 Y2 13 Y3 12 Y4 11 Y5 10 Y6 9 Y7 7 U6 74LS138 Vcc A13 A14 A15 Y0 Y1 Y2 Y1Y2Y3 目前,随着大容量EPROM的出现,像图7-4(b)这种多片 地址译码的方法已不太常用,它完全可以用两片27256代替。 对于扩展两片27256 EPROM的电路如图7-5所示,它是带 反相器的线选法:用一根地址线,使它不经反相器和经反 向器后分别连接到两个EPROM的片选。 图图7-5 两片两片27256的扩展电路的扩展电路 1234 A B C D 4321 D C B A Title NumberRevisionSize

24、 A4 Date:12-Dec-2001Sheet of File:D:刘 电 霆 教 材 编 写 图 7-5.ddbDrawn By: EA/VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PS

25、EN 29 ALE/P 30 TXD 11 RXD 10 U1 8031 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 Y 6MHZ C133p C233p C3 10u R1 10K Vcc 数据总线 地址总线 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 A8 A9 A10 A11 A12 A13 A14 A15 A0 A1 A2 A3

26、A4 A5 A6 A7 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A11 A12 Vcc A13 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 A13 26 A14 27 CE 20 OE 22 VPP 1 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D

27、7 19 U3 27256 A0 10 A1 9 A2 8 A3 7 A4 6 A5 5 A6 4 A7 3 A8 25 A9 24 A10 21 A11 23 A12 2 A13 26 A14 27 CE 20 OE 22 VPP 1 D0 11 D1 12 D2 13 D3 15 D4 16 D5 17 D6 18 D7 19 U4 27256 A14 A13 A14 Vcc 12 U5A 74LS04 三、作为程序储存器三、作为程序储存器EEPROM的扩展的扩展 电擦除可编程只读存储器EEPROM(Electrically Erasable PROM)具有能在应用系统中进行在线改写、 并

28、可在断电情况下保存数据而不需保护电源等优点, 在智能仪表、控制装置、分布式监控系统子站以及开 发装置中得到了广泛的应用。 图7-6为8031单片机的EEPROM 28C16的扩展电 路,图中使用了控制线 、 、 。图中 线是 由 和 相“与”后提供,无论 有效还是 有效都能使 28C16的输出允许端有效,这种联接方法是把 EEPROM既作为程序存储器,也作为数据存储器用; 28C16的 与8031的 相连,单片机可以向28C16写 指令数据或数据、表格;28C16的 与8031的P2.7进 行线选,当系统中有其它程序存储器或数据存储器时, 要统一考虑地址选择。 WRRD OE RD RD WE

29、 WR PSENPSEN PSEN CE 7.2.27.2.2数据储存器扩展数据储存器扩展 一、一、 数据储存器扩展概述数据储存器扩展概述 外部数据存储器芯片与单片机可按如下方式连接: 1.地址线的连接地址线的连接 外部程序存储器低8位地址线A0A7与P0口的口线P0.0P0.7对应相连; 外部程序存储器高8位地址线A8A15与P2口的口线P2.0P2.7对应相连。 2.数据线的连接数据线的连接 外部程序存储器8位数据线D0D7与P0口的口线P0.0P0.7对应相连。 3.控制线的连接控制线的连接 (单片机片外数据读信号)和 (数据存储器读信号)相连; ALE(单片机地址锁存允许信号)和G(地

30、址锁存器锁存信号)相连; (单片机片外数据写信号)和 (数据存储器写信号)相连; 单片机的相关地址线经过线译码或地址译码和数据存储器的片选信 号 相连。 由上面论述可以得到外部扩展数据存储器的一般连接方法,见图7-6 所示。 RD RD WEWR CE 图图7-6 单片机的外部数据存储器一般连接方法单片机的外部数据存储器一般连接方法 地址 锁存器 P2.7 P2.0 ALE 8031 P0.7P0.0 EA WR RD A15 CE A8 A7 A0 外部数据 存储器 D7D.0 WE RD 访问外部数据区可只采用低8位地址线寻址,这时 可寻址空间为256B,采用下面读、写指令来访问此数 据存

31、储区: MOVX A,Ri (i=0,1) MOVX Ri,A (i=0,1) 由于8位寻址指令所占字节少,指令执行速度快, 故在数据量不大的情况下,应尽可能采用这种8位寻址 指令。在单片机系统中通常选用8155外围芯片,其内 部的256B就可以作为外部扩展RAM使用。 也可以采用16位地址线寻址外部数据区,这时可 寻址空间为64KB,采用下面8位寻址指令来读、写此 数据存储区: MOVX A,DPTR MOVX DPTR,A 当外部RAM容量较大(大于256B)时,采用此寻址方 法。 二、数据储存器静态二、数据储存器静态RAM的扩展的扩展 由于单片机是面向测、控为主的,实际所 需要的数据存储

32、器的扩展容量不会很大,所以 在扩展时为了电路的简单,一般使用静态RAM, 如6116和6264。 图7-7为扩展单片6116时的电路。前面讲 过,扩展单片程序存储器时,片选端直接接地 即可,因为系统中不会再有其它程序存储器芯 片。但扩展单片数据存储器时,其片选端能否 直接接地则还要考虑应用系统中有无I/O口及外 围设备扩展,如果有,则要统一进行片选选择。 图图7-7 6116的扩展电路的扩展电路 1234 A B C D 4321 D C B A Title NumberRevisionSize A4 Date:27-Dec-2001Sheet of File:D:刘 电 霆 教 材 编 写

33、图 7-7,8.DDBDrawn By: EA/VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 U1 8031 D0 3 Q0 2 D

34、1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 Y 6MHZ C133p C233p C3 10u R1 10K Vcc 数据总线 地址总线 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 A8 A9 A10 A11 A12 A13 A14 A15 A0 A1 A2 A3 A4 A5 A6 A7 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3

35、A4 A5 A6 A7 A8 A9 A0 8 A1 7 A2 6 A3 5 A4 4 A5 3 A6 2 A7 1 A8 23 A9 22 A10 19 E 18 G 20 W 21 D0 9 D1 10 D2 11 D3 13 D4 14 D5 15 D6 16 D7 17 U3 6116 A10 A15 三、作为数据储存器三、作为数据储存器EEPROM的扩展的扩展 EEPROM兼有程序存储器与数据存储器的特点, 故在单片机应用系统中既可作为程序存储器,又可作 为数据存储器。作为程序存储器,其操作主要是程序 运行操作,必须严格按照程序存储器的地址总线、数 据总线、控制总线的联接方式。而将EE

36、PROM作为数 据存储器时,与单片机的接口较灵活,既可直接将 EEPROM作为片外数据存储器扩展,也可以作为一般 外围设备电路扩展,而不影响数据的存取。 图7-8为并行EEPROM的数据存储器扩展电路。图 中2816A可按照典型的数据存储器扩展电路联接方式, 如2814A(1)芯片。也可以作为外设电路,通过扩I/O口 8255连接,如2816A(2)。可以看出,作为数据存储器 时其电路连接较为灵活。2816A(2)工作时,要使8255 进入工作状态(P2.7使8255有效),2816A所需的地址 采用通过8255用MOVX指令送入。 图图7-8 28C16作为数据存储器的扩展电路作为数据存储器

37、的扩展电路 1234 A B C D 4321 D C B A Title NumberR evisionSize A4 Date:28-Dec-2001Sheet of File:D:刘 电 霆 教 材 编 写 图 7-7,8.DDBDrawn B y: EA/VP 31 X1 19 X2 18 R ESET 9 R D 17 W R 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P0

38、7 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 R XD 10 U1 8031 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 Y 6M HZ C 133p C 233p C 3 10u R 1 10K Vcc 数据总线 地址总线 AB 0 AB 1 AB 2 AB 3 AB 4 AB 5 AB 6 AB

39、 7 AB 0 AB 1 AB 2 AB 3 AB 4 AB 5 AB 6 AB 7 A8 A9 A10 A11 A12 A13 A14 A15 A0 A1 A2 A3 A4 A5 A6 A7 D0 D1 D2 D3 D4 D5 D6 D7 A7 1 A6 2 A5 3 A4 4 A3 5 A2 6 A1 7 A0 8 DQ0 9 DQ1 10 DQ2 11 DQ3 13 DQ4 14 DQ5 15 DQ6 16 DQ7 17 C E 18 A10 19 OE 20 W E 21 A9 22 A8 23 U3 28C 16 A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 A10 A

40、14 W R R D D0 34 D1 33 D2 32 D3 31 D4 30 D5 29 D6 28 D7 27 PA0 4 PA1 3 PA2 2 PA3 1 PA4 40 PA5 39 PA6 38 PA7 37 PB 0 18 PB 1 19 PB 2 20 PB 3 21 PB 4 22 PB 5 23 PB 6 24 PB 7 25 PC 0 14 PC 1 15 PC 2 16 PC 3 17 PC 4 13 PC 5 12 PC 6 11 PC 7 10 R D 5 W R 36 A0 9 A1 8 R ESET 35 C S 6 U5 8255 R D W R A7 1 A

41、6 2 A5 3 A4 4 A3 5 A2 6 A1 7 A0 8 DQ0 9 DQ1 10 DQ2 11 DQ3 13 DQ4 14 DQ5 15 DQ6 16 DQ7 17 C E 18 A10 19 OE 20 W E 21 A9 22 A8 23 U4 28C 16 D0 D1 D2 D3 D4 D5 D6 D7 W R R D A0 A1 A15 A13 W R R D PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7 PA0 PA1 PA2 PA3 PA4 PA5 PA6 PA7PC 0 PC 1 PC 2 PC 3 PC 4 PC 5 PC 6 PC 7 PC 0

42、PC 1 PC 2 7.3 MCS-517.3 MCS-51系列单片机系列单片机I/OI/O口扩展口扩展 MCS-51单片机共有四个8位并行I/O口,但 这些I/O口并不能完全提供给用户使用。只有对 于片内有ROM/EPROM/FLASH-RAM单片机 8051/8751/89C51,在不使用外部扩展时,才 允许这四个I/O口作为用户I/O口使用。然而对 于大多数使用8031以及使用8051/8751/89C51 需外部扩展时,MCS-51单片机可提供给用户 使用的I/O只有P1口和部分P3口线。因此,在 大部分的MCS-51单片机应用系统设计中都不 可避免地要进行I/O口的扩展。 扩展I/O

43、口可以通过MCS-51单片机的数据 总线进行,也可以利用移位寄存器通过MCS- 51单片机的串行口进行。 7.3.17.3.1通过数据总线扩展通过数据总线扩展 通过数据总线扩展I/O口,是采用外部数据存储器映射方式进行 输入、输出的,与外部数据存储器的扩展在方法上是基本相同的。从 功能上看,通过数据总线扩展的I/O口有两种基本类型:简单I/O口扩 展和可编程I/O口的扩展。 一、采用简单并行一、采用简单并行I/O接口芯片扩展接口芯片扩展 P0口是数据总线口,通过P0口扩展I/O口时,P0口只能分时使用, 故 输 出 时 , 接 口 电 路 应 具 有 锁 存 功 能 , 如 采 用 8 D 锁

44、 存 器 74LS273,74LS373,74LS377组成输出口;输入时,接口电路应能三 态缓冲,如采用8位三态缓冲器74LS244组成输入口。 1用三态门扩展用三态门扩展8位输入并行口位输入并行口 图7-9是用74LS244通过P0口扩展的8位并行输入接口。74LS244 由两组4位三态缓冲器组成,分别由选通端和控制。当它们为低电平 时,这两组缓冲器被选通,数据从输入端A送到输出端Y。 和 同 时由P2.7和相或后控制,由此可知74LS244的地址为7FFFH,其数 据的输入使用以下几条指令即可: MOVX DPTR,#7FFFH ;数据指针指向74LS244口地 址 MOVX A,DPT

45、R ;读入数据 G1 G2 图图7-9 简单简单I/O口的扩展电路口的扩展电路 1234 A B C D 4321 D C B A Title NumberR evisionSize A4 Date:29-Dec-2001Sheet of File:D:刘 电 霆 教 材 编 写 图 7-7,8.DDBDrawn B y: 1A1 2 1A2 4 1A3 6 1A4 8 2A1 11 2A2 13 2A3 15 2A4 17 1Y1 18 1Y2 16 1Y3 14 1Y4 12 2Y1 9 2Y2 7 2Y3 5 2Y4 3 1G 1 2G 19 U2 74LS244 D1 3 Q1 2 D

46、2 4 Q2 5 D3 7 Q3 6 D4 8 Q4 9 D5 13 Q5 12 D6 14 Q6 15 D7 17 Q7 16 D8 18 Q8 19 C LK 11 C LR 1 U3 74LS273 EA/VP 31 X1 19 X2 18 R ESET 9 R D 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P

47、23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 R XD 10 U1 8031 Y 6M HZ C 133p C 233p C 3 10u R 1 10K Vcc VC C 1 2 3 U4A 74LS32 4 5 6 U4B 74LS32 D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 2用锁存器扩展简单的用锁存器扩展简单的8位输出口位输出口 图7-9是用74LS273通过P0口扩展的8位并行输出接口。 74LS273是带三态门控

48、的锁存器,CLR为数据清零端,其 为低电平时有效,故此处应接高电平。CLK为锁存时钟端, 由P2.7和相或后控制,当同时为低电平时,将P0口的数据 锁存到74LS273。因此74LS273的地址为7FFFH,和输入 口地址相同,但由于它们分别由和信号控制,仍然不会发 生冲突。其数据的输出使用以下几条指令即可: MOVX DPTR,#7FFFH;数据指针指向 74LS273口地址 MOVX A,#data;输出数据要通过累加器传送 MOVX DPTR,A;P0口通过74LS273输出数据 当要扩展多个简单的8位输入口和输出口,多个 74LS244的选通端和和多个74LS273的锁存时钟CLK,应

49、 采用类似前面所讲述的多片EPROM扩展时的片选方法。但 要注意8031的I/O口驱动能力,在实际应用时,要根据负载 的大小适当增设驱动电路。 二、采用可编程并行二、采用可编程并行I/O接口芯片扩展接口芯片扩展 在单片机接口中,常使用一些结构复杂的接口芯 片,以完成各种复杂的操作。这类芯片一般具有多种 功能,在使用前,必须由CPU对其编程,以确定其工 作方式,之后才能使芯片按设定的方式进行操作,这 就是可编程接口。下面将通过使用8255扩展并行I/O口 重点说明这个问题。 1. 8255的初始化的初始化 使用8255时,首先要由CPU对8255写入控制命令 字,有两种控制命令字:一个是方式选择

50、控制字,另 一个是C口按位置位/复位控制字,8255的各种工作方 式都要由控制命令字来设定,这个设置过程称为“初 始化”。 (1)方式选择控制字方式选择控制字(D7=1) D0D2三位用来对B组的端口进行工作方式设定。D2设 置B口的工作方式,D2=1为方式1;D2=0为方式0。D1位设 定B口的输入或输出,D1=1为输入;D1=0为输出。D0位设 定C口的低半部,D0=1为输入,D0=0为输出。 D3D6四位用来对A组的端口进行设定。D6D5组合起 来设定A口工作方式,D6D5=00,为方式0;D6D5=01为方 式1;D6D5=10和11都为方式2。D4位用来设定A口的输入 或输出。D3位

51、用来设定C口上半部的输入或输出,D3=1为 输入,D3=0为输出。 (2) C口按位置口按位置/复位控制字复位控制字(D7=0) 因为C口共有8个二进制位,要确定对其中某一位进行操 作,就要在控制字中指定该位的编号。图中用了D3D2D1三 位的编码与C口的某一位相对应,对指定位进行的操作则由 D0确定,如D0=1时,将指定位置“1”。D0=0则将指定位 置“0”。 2. 8255和和8031的接口方法的接口方法 MCS-51单片机与8255的接口逻辑简单,其接口电路如 图7-10所示。图中,8255的片选信号及口地址选择线A0、 A1分别由8031的P0.7和P0.0、P0.1经地址锁存后提供

52、。故 8255的A、B、C口及控制口地址分别为FF7CH、FF7DH、 FF7EH、FF7FH。8255的复位端与8031的复位端相连,都 接到8031的复位电路上。 1234 A B C D 4321 D C B A Title NumberRevisionSize A4 Date:3-Jan-2002 Sheet of File:D:刘 电 霆 教 材 编 写 图 7-7,8.DDBDrawn By: D0 34 D1 33 D2 32 D3 31 D4 30 D5 29 D6 28 D7 27 PA0 4 PA1 3 PA2 2 PA3 1 PA4 40 PA5 39 PA6 38 PA

53、7 37 PB0 18 PB1 19 PB2 20 PB3 21 PB4 22 PB5 23 PB6 24 PB7 25 PC0 14 PC1 15 PC2 16 PC3 17 PC4 13 PC5 12 PC6 11 PC7 10 RD 5 WR 36 A0 9 A1 8 RESET 35 CS 6 U3 8255 EA/VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P0

54、3 36 P04 35 P05 34 P06 33 P07 32 P20 21 P21 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 U1 8031 D0 3 Q0 2 D1 4 Q1 5 D2 7 Q2 6 D3 8 Q3 9 D4 13 Q4 12 D5 14 Q5 15 D6 17 Q6 16 D7 18 Q7 19 OE 1 LE 11 U2 74LS373 Y 6MHZ C133p C233p C3 10u R1 10K Vcc 数据总线 地址总线 AB0 AB1 AB2 AB3

55、 AB4 AB5 AB6 AB7 AB0 AB1 AB2 AB3 AB4 AB5 AB6 AB7 A8 A9 A10 A11 A12 A13 A14 A15 A0 A1 A2 A3 A4 A5 A6 A7 D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A7 图图7-10 8031与与8255接口电路接口电路 7.3.27.3.2通过串行口扩展通过串行口扩展 一、用并入串出移位寄存器扩展并行输入口一、用并入串出移位寄存器扩展并行输入口 图7-11是利用两片74LS165扩展2个8位并行输入 口的电路。74LS165是8位并行输入串行输出移位寄存 器,单片机的RXD(P3.0)作为串

56、行数据输入端与 74LS165的串行输出端Q7相连;单片机的TXD(P3.1) 为移位脉冲输出端,与所有的74LS164芯片的移位脉 冲输入端CLK相连;用1根I/O线(P1.0)与74LS165的移 位/置位端相连,来控制其移位与置位。当 为低电平 时,并行数据置入74LS165的寄存器;当 为高电平 时,开始串行移位。当扩展多个8位输入口时,相邻两 芯片的首尾(串行输出端Q7与串行输入端SER)相连。 串行接收时,由RI引起中断或对RI查询来决定何时 接受下一个字符(在采用查询方式时,也需预先关闭中 断)。 PL PL 图图7-11 利用串行口扩展并行输入口利用串行口扩展并行输入口 123

57、4 A B C D 4321 D C B A Title NumberRevisionSize A4 Date:30-Dec-2001Sheet of File:D:刘 电 霆 教 材 编 写 图 7-7,8.DDBDrawn By: EA/VP 31 X1 19 X2 18 RESET 9 RD 17 WR 16 INT0 12 INT1 13 T0 14 T1 15 P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P00 39 P01 38 P02 37 P03 36 P04 35 P05 34 P06 33 P07 32 P20 21 P2

58、1 22 P22 23 P23 24 P24 25 P25 26 P26 27 P27 28 PSEN 29 ALE/P 30 TXD 11 RXD 10 U1 8031 Y 6MHZ C133p C233p C3 10u R1 10K Vcc SER 10 P0 11 P1 12 P2 13 P3 14 P4 3 P5 4 P6 5 P7 6 CLK1 2 CLK2 15 PL 1 Q7 9 Q7 7 U2 74LS165 SER 10 P0 11 P1 12 P2 13 P3 14 P4 3 P5 4 P6 5 P7 6 CLK1 2 CLK2 15 PL 1 Q7 9 Q7 7 U3 7

59、4LS165 下面程序为利用图下面程序为利用图7-11读入读入16位数据并存入位数据并存入8031的的 片内片内RAM30H和和31H两个端单元中:两个端单元中: MOVR0,#30H;建立指针 MOVR7,#02H;字节计数初值 CLRP1.0;=0,并置入数据 SETBP1.0;=1,允许串行移位 LOOP:MOVSCON,#10H;置串行口方式0,REN=1,RI=0 NBRI,$;等待一帧数据接受完 MOVA,SBUF;读接受数据 MOVR0,A;存入RAM缓冲区 INCR0;调整指针 DJNZR7,LOOP;数据未接受完,继续 CLRRI;清接收标志 二、采用串入并出移位寄存器扩展并

60、行输出口二、采用串入并出移位寄存器扩展并行输出口 图7-12是利用两片74LS164扩展2个2位输出口的 接口电路。 74LS164是8位串入并出移位寄存器,单 片机的RXD(P3.0)为串行输出与74LS164数据输入端 (1,2)相连;TXD(P3.1)为移位脉冲输出,与74LS164 的时钟脉冲输出端(8)相连;由P1.0口线控制74LS164的 清除端 (9)。当 为低电平时,清除74LS165中的数据; 当 为高电平时,开始串行移位。当扩展多个8位输 入口时,相邻两芯片的首尾(串行输出端Q7与串行输入 端A、B)相连。 MR MR MR 图图7-12 利用串行口扩展并行输出口利用串行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论