产品选型

单片机单总线 单片机最小应用系统及外部扩展总线

小编 2024-11-24 产品选型 23 0

单片机最小应用系统及外部扩展总线

单片机的最小应用系统,是指能维持单片机运行的最简单配置的系统。这种系统成本低廉、结构简单,常用来构成简单的控制系统,如开关状态的输入/输出控制等。

最小应用系统的功能取决于单片机芯片的技术水平。对于片内有ROM/EPROM的单片机,其最小应用系统即为配有晶振、复位电路和电源的单个单片机;对于片内无ROM/EPROM的单片机,其最小系统除了外部配置晶振、复位电路和电源外,还应当外接EPROM或EEPROM作为程序存储器用。

8051/8751最小应用系统

8051/8751单片机内含有ROM/EPROM,用8051/8751单片机构成最小应用系统时,只需将单片机接上时钟电路和复位电路即可,如图7-1所示,因没有外部存储器扩展,这时接高电平,P0、P1、P2、P3都可作用户I/O口使用。

用8051/8751芯片构成的最小系统简单、可靠。但由于集成度的限制,最小应用系统只能用作一些小型的控制单元。同时,P0、P1、P2口的应用与开发环境差别较大。8051的应用软件须依靠半导体厂家用半导体掩膜技术置入,故8051应用系统一般用作大批量生产的应用系统。

图7-1 8051和8751最小应用系统电路

8031最小应用系统

8031单片机片内无程序存储器,因此,其最小应用系统必须在片外扩展EPROM。图7-2所示为8031外接程序存储器的最小应用系统。

图7-2 8031最小应用系统

与8051/8751最小应用系统一样,也必须有复位及时钟电路。片选线

直接接地,表明选择外部存储器;片外4K字节单元地址要求地址线12根(A 0 ~A 1 1),由P0和P2.0~P2.3组成;程序存储器的取指信号为

;地址锁存器的锁存信号为ALE。 7.1.3 MCS-51系列单片机的外部扩展总线

在进行系统扩展中,首先需要面对的问题是如何与外围芯片连接。为了方便解决这一问题,往往利用地址锁存器将单片机形成三总线结构,即地址总线(Address Bus)、数据总线(Data Bus)和控制总线(Control Bus),如图7-3所示。

➢ 地址总线: P2口作为地址总线的高8位,在访问16位的地址时,用于输出16位地址的高8位A 15 ~A 8 ;P0口分时复用地址/数据总线,地址锁存器用于锁存低8位地址A 7 ~A 0 。

图7-3 单片机三总线结构

提示

地址总线的根数决定了单片机可以访问的存储单元数量和I/O端口的数量。n条地址线可以产生2 n 个地址编码。

常用的地址锁存器为74LS373,构成地址总线时,它的8个输入端与P0口相连,其使能端连接单片机的ALE端。ALE信号为1时,P0口输出的数据被地址锁存器锁存,用作地址信号A 7 ~A 0 ;ALE信号为0时,P0口用于传输指令或数据(此时地址锁存器中的地址信号保持不变,能够保证数据传输给正确的地址)。

➢ 数据总线: P0口用作数据总线,数据总线是双向的,既可以由单片机传到外部芯片,也可以由外部芯片传入单片机。

➢ 控制总线: 控制总线主要负责对芯片的选通以及读/写等控制。引脚功能已在第二章中进行了详细介绍,这里不再赘述。

详解单片机的IO接口

MCS-51系列单片机有4组I/O接口:P0、P1、P2和P3。前面简单介绍了一下各个端口,要学好单片机技术,非常有必要详细了解这些端口的内部结构及工作原理。

P0端口

P0 端口有 P0.0~P0.7 共 8 个引脚,这些引脚除了可作 I/O 引脚外,在外接存储器时,还可作地址 / 数据总线引脚。 P0端口每个引脚的内部电路结构都相同,其内部电路结构如图2-6所示。

图2-6 P0端口内部电路结构

(1)当P0端口用作输出端口时

如果要将P0端口用作输出端口,单片机内部的CPU会发出一个“0”到与门的控制端。控制端的“0”一方面关闭与门(即与门的一端为“0”时,不管另一端输入何种信号,输出都为“0”),使地址/数据总线送来的信号无法通过与门;另一方面控制电子开关,让电子开关与锁存器的Q端接通。

此时若给锁存器的写锁存器端送写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q和Q端输出,如D端输入“1”,则Q端输出“0”(Q端输出“1”),该“0”经电子开关送到场效应管VT2的栅极,VT2截止,从P0端口输出“1”。

也就是说,当给P0端口内部的与门控制端送“0”,同时给写锁存器端送写脉冲信号时,单片机内部总线的信号就可以通过接口电路从P0端口输出。

(2)当P0端口用作输入端口时

当将P0端口用作输入端口时,P0端口的信号既送到三态门,又送到VT2的漏极。如果锁存器之前锁存的为“0”,即Q=0、Q=1,其中Q=1会使VT2导通,P0端口被钳在“0”电平上,“1 ”将无法送入P0端口。

解决的方法是:在将数据输入P0端口前,先通过内部总线向锁存器写“1”,即让Q=0,VT2截止,P0端口输入的“1”就可以送到三态门的输入端,此时再给三态门的读引脚送一个读控制信号,“1”就可以通过三态门送到内部总线。

也就是说,要将P0端口作为输入端口,先要将P0端口的锁存器写“1”,然后再给输入三态门送读控制信号,P0端口的数据就可以通过接口电路,送到单片机内部的总线上。

(3)当P0端口用作地址/数据总线引脚时

如果要将P0端口用作地址/数据总线引脚,先要给与门的控制端送“1”,于是与门打开,同时电子开关和非门输出端接通。当地址/数据总线为“1”时,“1”一方面通过与门送到VT1的栅极,VT1导通,另一方面送到非门,经反相变为“0”,再经电子开关送到VT2的栅极,VT2截止,VT1导通,VT2截止使P0端口输出为“1”;当地址/数据总线为“0”时,VT1导通,VT2也导通,P0端口输出为“0”。

也就是说,当给与门的控制端送“1”时,内部地址/数据总线上的信号就可以从P0端口输出,P0端口就可当作地址/数据总线引脚使用。

P1端口

P1 端口有 P1.0~P1.7 共 8 个引脚,这些引脚可作 I/O 引脚。 P1端口每个引脚的内部电路结构都相同,其内部电路结构如图2-7所示。

图2-7 P1端口内部电路结构

从图2-7中可以看出,P1端口的结构较P0端口简单很多,由于P1端口内部采用了一只场效应管,并且与电源之间接了一只上拉电阻,所以不需要在P1端口的外部接上拉电阻。

(1)当P1端口用作输出端口时

如果要将P1端口用作输出端口,应给锁存器的写锁存器CL端送写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q和Q端输出,如D端输入“1”,则Q端输出“0”(Q端输出“1”),该“0”送到场效应管的栅极,场效应管截止,从P1端口输出“1”。

(2)当P1端口用作输入端口时

当将P1端口用作输入端口时,如果锁存器以前锁存的为“0”,即Q=0、Q=1,其中Q=1会使场效应管导通,P1端口被钳在“0”电平上,“1”将无法送入P1端口。所以与P0端口一样,在将数据输入P1端口前,先要通过内部总线向锁存器写“1”,让Q=0,场效应管截止,P1端口输入的“ 1”就可以送到输入三态门的输入端,此时再给三态门的读引脚送一个读控制信号,“1”就可以通过输入三态门送到内部总线。

P2端口

P2端口有P2.0~P2.7共8个引脚,P2端口每个引脚的内部电路结构都相同,其内部电路结构如图2-8所示。

图2-8 P2端口内部电路结构

从图2-8中可以看出,P2端口的内部结构与P0端口很相似。P2 端口也可作 I/O 引脚,在外接存储器时,还可以作为地址总线引脚。

(1)当P2端口用作地址总线引脚时

如果要将P2端口用作地址总线引脚,单片机内部的CPU会发出一个控制信号到电子开关的控制端,让电子开关与内部地址总线接通,地址总线上的信号就可以在通过电子开关、非门和场效应管后从P2端口引脚输出。

(2)当P2端口用作I/O接口时

如果要将P2端口用作I/O接口,单片机内部的CPU会发出一个控制信号到电子开关的控制端,让电子开关与锁存器接通。

当将P2端口用作输出端口时,给锁存器的CL端送写脉冲信号,内部总线上的数据就被锁存进锁存器并从Q端输出,再通过电子开关、非门和场效应管从P2端口引脚输出。

当将P2端口用作输入端口时,如果锁存器以前锁存的为“0”,即Q=0,经非门反相后会使场效应管导通,P2端口被钳在“0”电平上,“1”将无法送入P2端口。所以与P0、P1端口一样,在将数据输入P2端口前,先通过内部总线向锁存器写“1”,让Q=1,场效应管截止,P2端口输入的“1 ”就可以送到输入三态门的输入端,此时再给读引脚送一个读控制信号,“1”就可以通过三态门送到内部总线。

P3端口

P3 端口有 P3.0~P3.7 共 8 个引脚, P3 端口可作为 I/O 接口,还可以用于其他方面。P3端口每个引脚的内部电路结构都相同,其内部电路结构如图2-9所示。

图2-9 P3端口内部电路结构

(1)当P3端口用作I/O接口时

如果要将P3端口用作I/O接口,应让与非门的选择输出功能端为“1”,以开通与非门。

当将P3端口用作输出端口时,给锁存器的CL端送写脉冲信号,内部总线送来的数据就可以通过D端进入锁存器并从Q端输出,再通过与非门和场效应管从P3端口引脚输出。

当将P3端口用作输入端口时,应先通过内部总线向锁存器写“1”,让Q=1,场效应管截止,P3端口输入的信号就可以通过缓冲器、输入三态门送到内部总线。

(2)当P3端口用作第二功能时

P3端口用作第二功能(又称复用功能)时,实际上也是在该端口输入或输出信号,只不过输入、输出的是一些特殊功能的信号。所以当P3端口用作第二功能时,其内部电路的工作原理与用作I/O接口时是一样的,在用作输入功能时,端口的锁存器同样要先置“1”。

P3端口8个引脚的第二功能详见表2-1。例如P3.2引脚用作第二功能时,该端口可输入由外部设备送到的中断请求信号,该信号通过缓冲器、输入三态门送到内部总线。

P3端口除了可以接收外界的输入信号外,还可以接收内部的替代输入功能端送来的信号,该信号通过输入三态门送到内部总线。

总之,P0、P1、P2 和 P3 端口的功能是:都可以作输入或输出端口; P0、P2、P3 端口具有第二功能,各种端口的第二功能见表2-1。例如,表中说明P0端口的第二功能可以用作低8位地址总线/ 数据总线,P2端口可用作高8位地址总线,P3.0端口可用作串行数据接收端。

表2-1 MCS-51系列单片机各端口的第二功能

相关问答

单片机 总线 是什么?

三总线就是通常所说的地址总线,数据总线,控制总线。在51单片机中,为了与并行接口的外设及扩展存储器传输数据就需要扩展三总线,P2P0合起来构成16位地址总线...

什么是8051 单片机 的三 总线 结构?

单片机控制系统的三总线是指数据总线、地址总线、控制总线。1、数据总线51单片机的数据总线为P0口,CPU从P0口送出和读回数据。2、地址总线51系列单片...

51 单片机 内部数据 总线 是多少位?

51单片机内部数据总线是8位的,无地址总线的概念可以认为外部数据总线是8位的,外部地址总线是16位的,其中低8位和数据总线共用实际上外部四个端口32条线都可作...

单片机总线 英文名?

单片机总线的英文名是MicrocontrollerBus。MicrocontrollerBus是指用于连接单片机内部各个功能模块的通信总线。单片机内部的各个功能模块,如CPU、存储器、...

IIC 总线 单片机 总线 吗?

一种两线制数据通道,就像公路,路上走的是车,I2C走的是数据。是单片机里的,用于连接其他拥有相同通道的器件,这样两个器件就能通信了。就像你你给手机充电,...

51 单片机 p1口为什么不能做 总线 ?

51单片机的P1口之所以不能用作总线有两个原因,其一,51单片机外设寻址指令MOVX/MOVC的操作目标是P0口和P2口,其中,P2口是地址总线高8位,P0口是地址总线低8位/...

51 单片机 外部 总线 有几种?

51单片机外部总线共有三种,分别是数据总线、地址总线、控制总线。1、“数据总线DB”用于传送数据信息。数据总线是双向三态形式的总线,即他既可以把CPU的数据...

单片机 拓扑结构是什么

[最佳回答]问题一:什么叫总线型单片机和非总线型单片机总线型,是局域网所有的pc都在一条线上,但是不能同时收发数据,非总线型的有星型等等!问题二:什么是集成...

单片机 8086控制 总线 及功能总结?

控制总线简称CB,是用来传送控制信号和时序信号的。控制信号中,有的是微处理器送往存储器和I/O接口电路的,如读/写信号,片选信号、中断响应信号等;也有是其它...

i2c 总线 接口芯片有哪些

IIC一般用模拟的较多,就是用普通IO口来模拟IIC时序,网上可以很容易找到相应的代码。但是有很多单片机还是有IIC硬件模块的,比如AVR系列的单片机是自带基于状态...

猜你喜欢