首页 理论教育 并行扩展方法概述-基于汇编与C语言的单片机原理及应用

并行扩展方法概述-基于汇编与C语言的单片机原理及应用

时间:2023-10-23 理论教育 版权反馈
【摘要】:图7-4地址锁存器74LS373的内部结构及与MCS-51单片机的连接引脚示意图4.并行扩展三总线的驱动在单片机应用系统中,扩展的三总线上挂接很多负载,如存储器、并行接口、A/D接口、显示接口等,但总线接口的负载能力有限,因此常常需要通过连接总线驱动器进行总线驱动。

并行扩展方法概述-基于汇编与C语言的单片机原理及应用

1.MCS-51单片机的最小应用系统

MCS-51单片机的特点就是体积小,功能全,系统结构紧凑,硬件设计灵活。对于简单的应用,最小应用系统(简称最小系统)即能满足要求。所谓最小系统是指在最少的外部电路条件下,形成一个可独立工作的单片机应用系统。无ROM的单片机芯片(如8031)至少必须扩展ROM,复位、晶振电路才能构成最小系统,外接ROM后,P0口、P2口被占用,剩下P1、P3口作I/O口用,其功能不变;而带ROM单片机芯片(如8051、8751等)可能不必扩展ROM和RAM,只要有复位、晶振电路等就能构成最小系统。图7-1为MCS-51单片机最小系统示意图

2.MCS-51单片机并行扩展的三总线结构

图7-2为MCS-51单片机的三总线结构形式。并行扩展三总线分别为地址总线AB、数据总线DB和控制总线CB。其中:

(1)地址总线AB由P0口提供低8位A7~A0、P2口提供高8位A15~A8,共16位,可寻址范围达216=64K。由于P0口是数据、地址分时复用,所以P0口输出的低8位地址必须采用地址锁存器进行锁存,地址锁存器一般选用带三态缓冲器输出的8D锁存器74LS373。

图7-1 MCS-51单片机最小系统

图7-2 MCS-51单片机的三总线结构形式

(2)数据总线DB,P0口提供8位的D7~D0,共8位。

(3)控制总线CB包括imgimg信号组成,它们用于读/写控制、地址锁存控制和片内、片外ROM选择。

3.三总线结构中的地址锁存器

在单片机扩展三总线结构中需要采用地址锁存器,常用的地址锁存器有74LS273、Intel 8282和74LS373,它们的引脚如图7-3所示。

(1)74LS273是具有异步清零的TTL上升沿锁存器。每一位都是一个D触发器,8个D触发器的控制端连接在一起。由于此芯片内部无三态锁存器,因此其输出只有高、低两种状态。

图7-3 常用3种地址锁存器的引脚结构

(2)Intel 8282是带有三态输出的TTL电平锁存器。它的内部除了具有类似74LS273的8个D触发器外,还集成了8位的三态门,img为三态门的输出允许引脚,当img时三态门打开,允许输出,否则三态门禁止输出,因此其每一位都是一个三态锁存器。8个三态锁存器的控制端STB连在一起,当电平锁存引脚STB=1时,锁存器的数据输出端Q的状态与数据输入端D相同;而当STB=0时,输入端的数据就被锁存在锁存器中,数据输入端D的变化不再影响Q端输出。

(3)74LS373也是带有三态输出的TTL电平锁存器。74LS373与Intel 8282功能完全一样,它们仅是引脚分布位置不同而已。G为电平锁存引脚,img为输出允许引脚。当G为高电平时,锁存器的数据输出端Q的状态与数据输入端D相同。当G端从高电平返回到低电平时(下降沿后),输入端的数据就被锁存在锁存器中,数据输入端D的变化不再影响Q端输出。图7-4为地址锁存器74LS373的内部结构及与MCS-51单片机的连接引脚示意图。(www.xing528.com)

图7-4 地址锁存器74LS373的内部结构及与MCS-51单片机的连接引脚示意图

4.并行扩展三总线的驱动

在单片机应用系统中,扩展的三总线上挂接很多负载,如存储器、并行接口、A/D接口、显示接口等,但总线接口的负载能力有限,因此常常需要通过连接总线驱动器进行总线驱动。总线驱动器对于单片机的I/O口只相当于增加了一个TTL或CMOS负载,因此驱动器除了对后级电路驱动外,还能对负载的波动变化起隔离作用。

当P0口总线负载达到或超出P0口最大负载能力8个TTL门时,必须接入总线驱动器。因P0口传送数据是双向的,因此要扩展的数据总线驱动器也必须具有双向三态功能。除双向数据总线外,单片机有可能扩展的还有img、ALE等控制总线和P2口高8位地址总线,它们属于单向总线。当这些引脚的总线负载达到或超出它们的最大负载能力3~4个TTL门时,也必须接入总线驱动器。

在对TTL负载驱动时,只需考虑驱动电流的大小;在对MOS负载驱动时,MOS负载的输入电流很小,更多地要考虑电平的兼容和分布电容的电流。一般TTL电平和CMOS电平是不兼容的,CMOS电路能驱动TTL电路,而TTL电路一般不能驱动CMOS电路,在TTL电路和CMOS电路混用的系统中,应特别注意。

(1)常用的总线驱动器。系统中的数据总线是双向的,其驱动器也要选用双向的,如74LS245。74LS245 74245是8同相三态双向总线收发器,可双向传输,有一个方向控制端DIR。当img为1时,Y为高阻;当img,DIR=1时,A→B;当img,DIR=0时,B→A。图7-5为74LS245引脚图、逻辑图和功能表。

系统总线中地址总线和控制总线是单向的,因此驱动器可以选用单向的,如74LS244。74244是8同相三态缓冲/驱动器,片内有两组三态缓冲器,每组4个,分别由一个门控端控制。即第1组的输入1A1~1A4,输出1Y1_~_1Y4;门控端1img;第2组的输入2A1~2A4,输出2Y1~2Y4,门控端2img。门控端img为低电平(有效)时,输入端信号A从输出端Y输出,即Y=A,而门控端img高电平(无效)时,输出端Y呈高阻态。图7-6为74LS244引脚图、逻辑图和功能表。

图7-5 双向驱动器74LS245的引脚、逻辑图和功能表

图7-6 单向驱动器74LS244的引脚图、逻辑图和功能表

(2)典型的三总线驱动电路。图7-7为74LS245与MCS-51单片机连接的典型应用电路。控制_DIR可用img,片选端img直接接地,始终有效。图7-7(a)用img控制DIR,A0~A7接P0口,B0~B7接外RAM或外设。当img有效时,DIR=0,数据从B到A;img无效时,DIR=1,数据从A_到B;图7-7(b)用img控制DIR,B0~B7接P0口,A0~A7接外RAM或外设。当img有效时,DIR=0,数据从B到A;img无效时,DIR=1,数据从A到B。

图7-7 采用74LS245实现P0口双向总线的驱动电路

除扩展双向数据总线P0口外,若需扩展P2口(高8位地址总线,单向)或imgimg、ALE等单向控制总线,就不必用74LS245,可用74LS244。图7-8为74LS244与MCS-51单片机连接的典型应用电路。因这些地址信号或控制信号是单向传输,且不允许锁存,img接地始终有效。

图7-8 采用74LS244的单向总线驱动电路

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈