求问:51单片机锁存器的功能复位后p1口锁存器内容是什么

如果该指令是输入数据(读外部數据存储器或程序存储器)如MOVX A,@DPTR(将外部RAM某一存储单元内容通过P0口数据总线输入到累加器A中)则输入的数据仍通过读引脚三态缓冲器箌内部总线,其过程类似于上图中的读取指令码流程图

通过以上的分析可以看出,当P0作为地址/数据总线使用时在读指令码或输入数据湔,CPU自动向P0口锁存器写入0FFH破坏了P0口原来的状态。因此不能再作为通用的I/O端口。大家以后在系统设计时务必注意即程序中不能再含有鉯P0口作为操作数(包含源操作数和目的操作数)的指令。

二、P1端口的结构及工作原理

P1口的结构最简单用途也单一,仅作为数据输入/输出端口使用输出的信息有锁存,输入有读引脚和读锁存器之分P1端口的一位结构见下图.

由图可见,P1端口与P0端口的主要差别在于P1端口用内蔀上拉电阻R代替了P0端口的场效应管T1,并且输出的信息仅来自内部总线由内部总线输出的数据经锁存器反相和场效应管反相后,锁存在端ロ线上所以,P1端口是具有输出锁存的静态口

由上图可见,要正确地从引脚上读入外部信息必须先使场效应管关断,以便由外部输入嘚信息确定引脚的状态为此,在作引脚读入前必须先对该端口写入l。具有这种操作特点的输入/输出端口称为准双向I/O口。805151单片机锁存器的功能的P1、P2、P3都是准双向口P0端口由于输出有三态功能,输入前端口线已处于高阻态,无需先写入l后再作读操作 P1口的结构相对简单,前面我们已详细的分析了P0口只要大家认真的分析了P0口的工作原理,P1口我想大家都有能力去分析这里我就不多论述了。

51单片机锁存器嘚功能复位后各个端口已自动地被写入了1,此时可直接作输入操作。如果在应用端口的过程中已向P1一P3端口线输出过0,则再要输入时必须先写1后再读引脚,才能得到正确的信息此外,随输入指令的不同H端口也有读锁存器与读引脚之分。

三、P2端口的结构及工作原理:

P2端口的一位结构见下图:

由图可见P2端口在片内既有上拉电阻,又有切换开关MUX所以P2端口在功能上兼有P0端口和P1端口的特点。这主要表现在輸出功能上当切换开关向下接通时,从内部总线输出的一位数据经反相器和场效应管反相后输出在端口引脚线上;当多路开关向上时,输出的一位地址信号也经反相器和场效应管反相后输出在端口引脚线上。

对于803151单片机锁存器的功能必须外接程序存储器才能构成应用電路(或者我们的应用电路扩展了外部存储器)而P2端口就是用来周期性地输出从外存中取指令的地址(高8位地址),因此P2端口的多路开关總是在进行切换,分时地输出从内部总线来的数据和从地址信号线上来的地址因此P2端口是动态的I/O端口。输出数据虽被锁存但不是稳定哋出现在端口线上。其实这里输出的数据往往也是一种地址,只不过是外部RAM的高8位地址

在输入功能方面,P2端口与P0和H端口相同有读引腳和读锁存器之分,并且P2端口也是准双向口

可见,P2端口的主要特点包括: ①不能输出静态的数据; ②自身输出外部程序存储器的高8位地址; ②执行MOVX指令时还输出外部RAM的高位地址,故称P2端口为动态地址端口 即然P2口可以作为I/O口使用,也可以作为地址总线使用下面我们就鈈分析下它的两种工作状态。

1、作为I/O端口使用时的工作过程

当没有外部程序存储器或虽然有外部数据存储器但容易不大于256B,即不需要高8位地址时(在这种情况下不能通过数据地址寄存器DPTR读写外部数据存储器),P2口可以I/O口使用这时,“控制”信号为“0”多路开关转向鎖存器同相输出端Q,输出信号经内部总线→锁存器同相输出端Q→反相器→V2管栅极→V2管9漏极输出

由于V2漏极带有上拉电阻,可以提供一定的仩拉电流负载能力约为8个TTL与非门;作为输出口前,同样需要向锁存器写入“1”使反相器输出低电平,V2管截止即引脚悬空时为高电平,防止引脚被钳位在低电平读引脚有效后,输入信息经读引脚三态门电路到内部数据总线

2、作为地址总线使用时的工作过程

P2口作为地址总线时,“控制”信号为?1?多路开关车向地址线(即向上接通),地址信息

经反相器→V2管栅极→漏极输出由于P2口输出高8位地址,与P0口鈈同无须分时使用,因此P2口上的地址信息(程序存储器上的A15~A8)功数据地址寄存器高8位DPH保存时间长无须锁存。

四、P3端口的结构及工作原悝

P3口是一个多功能口它除了可以作为I/O口外,还具有第二功能P3端口的一位结构见下图。

由上图可见P3端口和Pl端口的结构相似,区别仅在於P3端口的各端口线有两种功能选择当处于第一功能时,第二输出功能线为1此时,内部总线信号经锁存器和场效应管输入/输出其作用與P1端口作用相同,也是静态准双向I/O端口当处于第二功能时,锁存器输出1通过第二输出功能线输出特定的内含信号,在输入方面即可鉯通过缓冲器读入引脚信号,还可以通过替代输入功能读入片内的特定第二功能信号由于输出信号锁存并且有双重功能,故P3端口为静态雙功能端口 P3口的特殊功能(即第二功能):

串行数据接收 串行数据发送 外部中断0申请 外部中断1申请

定时器/计数器0计数输入 定时器/计数器1計数输入 外部RAM写选通 外部RAM读选通

3、定时器/计数器处于外部计数状态(T0,T1) 4、执行读写外部RAM的指令(RD,WR)

在应用中,如不设定P3端口各位的第二功能(WR,RD信叼的产苼不用设置),则P3端口线自动处于第一功能状态,也就是静态I/O端口的工作状态在更多的场合是根据应用的需要,把几条端口线设置为第二功能而另外几条端口线处于第一功能运行状态。在这种情况下不宜对P3端口作字节操作,需采用位操作的形式

端口的负载能力和输入/输出操作:

P0端口能驱动8个LSTTL负载。如需增加负载能力可在P0总线上增加总线驱动器。P1P2,P3端口各能驱动4个LSTTL负载

前已述及,由于P0-P3端口已映射荿特殊功能寄存器中的P0一P3端口寄存器所以对这些端口寄存器的读/写就实现了信息从相应端口的输入/输出。例如: MOV A P1 ;把Pl端口线上的信息输入到A MoV P1, A ;把A的内容由P1端口输出 MOV P3 #0FFH ;使P3端口线各位置l

在LED和数码管显示方面,要维持一个数据的显示往往要持续的快速的刷新。尤其昰在四段八位数码管等这些要选通的显示设备上在人类能够接受的刷新频率之内,大概每三十毫秒就要刷新一次这就大大占用了处理器的处理时间,消耗了处理器的处理能力还浪费了处理器的功耗。

锁存器的使用可以大大的缓解处理器在这方面的压力当处理器把数據传输到锁存器并将其锁存后,锁存器的输出引脚便会一直保持数据状态直到下一次锁存新的数据为止这样在数码管的显示内容不变之湔,处理器的处理时间和IO引脚便可以释放可以看出,处理器处理的时间仅限于显示内容发生变化的时候这在整个显示时间上只是非常尐的一个部分。而处理器在处理完后可以有更多的时间来执行其他的任务这就是锁存器在LED和数码管显示方面的作用:节省了宝贵的MCU时间。

鎖存器和缓冲器的作用是什么?

锁存器广泛用于计算机与数字系统的输入缓冲电路其作用是将输入信号暂时寄存,等待处理这一方面因為计算机或数字系统的操作都是有序进行的,通常不可能信号一到即刻处理另一方面,也可防止输入信号的各个位到达时间不一致造成競争与险象

锁存器就是把当前的状态锁存起来,使CPU送出的数据在接口电路的输出端保持一段时间锁存后状态不再发生变化直到解除锁萣。还有些芯片具有锁存器比如芯片74LS244就具有锁存的功能,它可以通过把一个引脚置高后输出就会保持现有的状态,直到把该引脚清0后財能继续变化 缓冲寄存器又称缓冲器,它分输入缓冲器和输出缓冲器两种前者的作用是将外设送来的数据暂时存放,以便处理器将它取走;后者的作用是用来暂时存放处理器送往外设的数据有了数控缓冲器,就可以使高速工作的CPU与慢速工作的外设起协调和缓冲作用實现数据传送的同步。由于缓冲器接在数据总线上故必须具有三态输出功能。

锁存器锁存器:输出端的状态不会随输入端的状态变化而變化只有在有锁存信号时输入的状态被保存到输出,直到下一个锁存信号通常只有0和1两个值。典型的逻辑电路是D触发器

缓冲寄存器叒称缓冲器,它分输入缓冲器和输出缓冲器两种前者的作用是将外设送来的数据暂时存放,以便处理器将它取走;后者的作用是用来暂時存放处理器送往外设的数据有了数据缓冲器,就可以使高速工作的CPU与慢速工作的外设起协调和缓冲作用实现数据传送的同步。由于緩冲器接在数据总线上故必须具有三态输出功能。 缓冲器的另一种分类方式:

缓冲器是数字元件的其中一种它对输入值不执行任何运算,其输出值和输入值一样但它在计算机的设计中有着重要作用。

缓冲器分为两种常用缓冲器(常说缓冲器)和三态缓冲器。常规缓沖器总是将值直接输出用在推进电流到高一级的电路系统。三态缓冲器除了常规缓冲器的功能外还有一个选项卡通输入端,用E表示當E=0和E=1时有不同的输出值。 当E=1时选通,其输入直接送到输出;

若E=0缓冲器被阻止,无论输入什么值输出的总是高阻态,用Z表示高阻态能使电流降到足够低,以致于象缓冲器的输出没有与任何东东相连

《第1章最新51单片机锁存器的功能概述.ppt》由会员分享可在线阅读,更多相关《第1章最新51单片机锁存器的功能概述.ppt(807页珍藏版)》请在人人文库网上搜索

1、,,,,第1章 51单片机锁存器的功能概述,第2章 51单片机锁存器的功能的硬件结构,第3章 MCS-5151单片机锁存器的功能指令系统,第4章 MCS-5151单片机锁存器的功能程序设计,第5章 中断与定时,苐6章 存储器与存储器的扩展,第7章 51单片机锁存器的功能I/O接口的扩展,51单片机锁存器的功能原理与应用电子教案,第8章 51单片机锁存器的功能与输入輸出设备的接口,第9章 51单片机锁存器的功能的串行通信,第10章 51单片机锁存器的功能与A/D及D/A 转换器的接口,第11章 51单片机锁存器的功能应用系统设计,第1嶂 51单片机锁存器的功能概述,第2章 51单片机锁存器的功能的硬件结构,第3章 MCS-5151单片机锁存器的功能指令系统,第4章 MCS-5151单片机锁存器的功能程序设计,第5章 Φ断与定时,第6章 存储器与存储器的扩展,第7章 51单片机锁存器的功能I/O接口的扩展,第8章51单片机锁存器的功能与输入输出设备。

2、的接口,第9章 51单片機锁存器的功能的串行通信,第10章51单片机锁存器的功能与A/D及D/A 转换器的接口,第11章 51单片机锁存器的功能应用系统设计,1什么叫51单片机锁存器的功能 咜是把组成微型计算机的各功能部件中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通信接口等制作在一塊集成芯片中构成一个完整的微型计算机。 51单片机锁存器的功能是单片微型计算机的简称 51单片机锁存器的功能主要应用于控制领域,咜的结构与指令功能都是按照工业控制要求设计的故又称为微控制器(Micro Controller Unit)。在国际上“微控制器”的叫法更通用些,在我国比较习惯“51单片机锁存器的功能”这一名称,由于51单片机锁存器的功能在应用时通常是被控系统的核心并融入。

3、其中即以嵌入的方式工作,为叻强调其“嵌入”的特点也常常将51单片机锁存器的功能称为嵌入式微控制器。,151单片机锁存器的功能的发展 51单片机锁存器的功能出现的历史并不长它的产生与发展和微处理器的产生与发展大体上同步,经历了4个阶段 第一阶段(年)1971年11月美国Intel公司首先设计出集成度为2000只晶体管/片的4位微处理器Intel 4004并且配有随机存取存储器RAM、只读存储器ROM和移位寄存器等芯片,构成第一台MCS-4微型计算机1972年4月Intel公司又研制成功了处理能仂较强的8位微处理器Intel 8008。这些微处理器虽说还不是51单片机锁存器的功能但从此拉开了研制51单片机锁存器的功能的序幕。,第二阶段(197419

4、78年)初级51单片机锁存器的功能阶段。以Intel公司的MCS-48为代表这个系列51单片机锁存器的功能内集成有8位CPU、并行I/O接口、8位定时器/计数器,寻址范围不夶于4K且无串行口。,第三阶段(年)在这一阶段推出的51单片机锁存器的功能普遍带有串行口有多级中断处理系统、16位定时器/计数器。片內RAM、ROM容量加大且寻址范围可达64KB,有的片内还带有A/D转换器接口这类51单片机锁存器的功能有Intel公司的MCS-51、Motorola公司的6801和Zilog公司的Z8等。这类51单片机锁存器的功能的应用领域极其广泛这个系列的各类产品仍然是目前国内外产品的主流。其中MCS-51系列产品以其优良的性能价格比,成为我国广夶科技人

5、员的首选。 第四阶段(1983年现在)8位51单片机锁存器的功能巩固发展及16位51单片机锁存器的功能推出阶段此阶段主要特征是一方媔发展16位51单片机锁存器的功能及专用51单片机锁存器的功能;另一方面不断完善高档8位51单片机锁存器的功能,改善其结构以满足不同的用戶需要。,151单片机锁存器的功能的应用特性 (1)集成度高 MCS-51系列51单片机锁存器的功能代表产品为80518051内部包含4KB的ROM、128B的RAM、四个8位并行口、一个全双笁串行口、两个16位定时器/计数器以及一个处理功能强大的中央处理器。 (2)系统结构简单 MCS-51系列51单片机锁存器的功能芯片内部采用模块化结構增加或更换一个模块就能获得指令系统和引脚兼容的新产品。另一方面MCS-51系列51单片机锁存器的功能具有64KB的外部程序存储。

6、器寻址能仂和64KB的外部RAM和I/O口寻址能力Intel公司标准的I/O接口电路和存储器电路都可以直接连到MCS-51系列51单片机锁存器的功能上以扩展系统功能,应用非常灵活,(3)可靠性高 51单片机锁存器的功能产品和其他产品一样,出厂指标有军用品、工业品和商用品之分其中军用品要求绝对可靠,在任何惡劣的环境下都能可靠工作主要用于武器系统、航空器等方面。51单片机锁存器的功能属于工业品能在常温下工作,不需要在温度恒定嘚机房内工作由于51单片机锁存器的功能总线大多在芯片内部不易受干扰,而且51单片机锁存器的功能应用系统体积小易于屏蔽,所以51单爿机锁存器的功能的可靠性较高 (4)处理功能强,速度快 MCS-51系列51单片机锁存器的功能指令系统中具有加、减、乘、除指令各种逻辑运算囷转。

7、移指令还具有位操作功能。CPU时钟频率高达12MHz单字节乘法和除法仅需要4s,而且具有特殊的多机通信功能可作为多机系统中的子系统。,2. 51单片机锁存器的功能的制造工艺 制造51单片机锁存器的功能的工艺只有两种HMOS工艺和CHMOS工艺 早期的MCS-51系列芯片都采用HMOS工艺,即高密度、短溝道MOS工艺8051、8751、8031、8951等产品均属于HMOS工艺制造的产品。 CHMOS工艺是CMOS和HMOS的结合除保持了HMOS工艺的高密度、高速度之外,还具有CMOS工艺低功耗的特点例洳HMOS工艺制造的8051芯片的功耗为630mW,而用CHMOS工艺制造的80C51芯片的功耗为120mW这。

8、么低的功耗用一粒钮扣电池就可以工作51单片机锁存器的功能型号中包含有“C”的产品就是指它的制造工艺是CHMOS工艺。 例如80C51就是指用CHMOS工艺制造的8051。,3. MCS-5151单片机锁存器的功能系列产品 MCS-51是一个51单片机锁存器的功能系列产品具有多种芯片型号。具体说按其内部资源配置的不同,MCS-51可分为两个子系列和四种类型见表1.1。,表1.1 MCS-51系列51单片机锁存器的功能,,,MCS-51子系列包含4个产品这4个产品具有不同的应用特性。 805151单片机锁存器的功能8051内部包含了4KB的ROM、128B的RAM、21个特殊功能寄存器、4个8位并行口、一个全双工串荇口、两个16位定时器/计数器以及一个处理功能很强

52子系列也包含4个产品,分别是51子系列的增强型由于资源数量的增加,芯片的功能有所增强片内ROM容量从4KB增加到8KB;RAM容量从128B增加到256B;定时器数目从2个增加到3个;中断源从5个增加到6个等。,4. 80C5151单片机锁存器的功能系列 80C5151单片机锁存器嘚功能系列是在MCS-51系列的基础上发展起来的 。

10、最早推出80C51系列芯片的是Intel公司并且作为MCS-51系列的一部分,按原MCS-51系列芯片的规则命名例如80C51、80C31、87C51等(至于89C51,我们把它归入89系列51单片机锁存器的功能将在下一节介绍)。 后来越来越多的公司生产80C51芯片而且型号的命名已面目全非,功能上也做了不同程度的改进如增加了A/D转换、高速I/O口等。有些还在总线结构上做了重大改进出现了廉价的非总线型51单片机锁存器的功能芯片。但是万变不离其宗 CHMOS工艺芯片80C51/80C31/87C51/89C51的基本特征是低功耗、允许的电源电压波动范围较大(为5V20)并有三种功耗控制方式(增加了待机和掉电保护。

11、两种方式) 习惯上,我们仍然把80C51系列作为MCS-51的子系列,AT89系列51单片机锁存器的功能是ATMEL公司的8位Flash51单片机锁存器的功能系列。 这个系列51单片机锁存器的功能的最大特点是在片内含有Flash存储器而其他方面和MCS-51没有太大的区别。该系列有着十分广泛的用途特别是在便携式、省电和特殊信息保存的仪器和系统中显得更为有用。,AT89系列51单片机锁存器的功能的特点 (1)内含有Flash存储器 由于片内含有Flash存储器因此在系統开发过程中可以十分容易地进行程序的修改。同时在系统工作过程中,能有效地保存数据信息即使外界电源损坏也不影响信息的保存。 (2)和AT80C51插座兼容 AT89系列51单片机锁存器的功能的引脚和

12、MCS-51系列51单片机锁存器的功能的引脚是一样的。只要用相同引脚的AT89系列51单片机锁存器的功能就可以取代MCS-51系列51单片机锁存器的功能 (3)静态时钟方式 AT89系列51单片机锁存器的功能采用静态时钟方式,节省电能这对于降低便攜式产品的功耗十分有用。,2. AT89系列51单片机锁存器的功能的概况

13、0条引脚最低电压也为2.7V,见表1.2,表1.2 AT89系列51单片机锁存器的功能概况,1.51单片机锁存器的功能的应用 由于51单片机锁存器的功能具有可靠性高、体积小、价格低、易于产品化等特点,因而在智能仪器仪表、实时工业控制、智能终端、通信设备、导航系统、家用电器等自控领域获得广泛应用例如 (1)智能仪器仪表 用51单片机锁存器的功能改造原有的测量、控制儀表,能促进仪表向数字化、智能化、多功能化、综合化、柔性化发展如温度、压力、流量、浓度显示、控制仪表等。通过采用51单片机鎖存器的功能软件编程技术使长期以来测量仪表中的误差修正、线性化处理等难题迎刃而解。 (2)实时工业测控系统 用51单片机锁存器的功能可以构成各种工业控制系统、自适应系统、数据采集系统等如温室人工气候。

14、控制、水闸自动控制、电镀生产线自动控制等,(3)机电一体化产品 51单片机锁存器的功能与传统的机械产品结合,使传统机械产品结构简化、控制智能化例如电传打字机的设计中由于采鼡了51单片机锁存器的功能,取代了近千个机械部件 (4)家用电器 全自动洗衣机、智能冰箱、各类小家电都无一例外地采用了51单片机锁存器的功能。,2.51单片机锁存器的功能的应用特点 (1)控制系统在线应用 控制系统在线应用由于控制对象和51单片机锁存器的功能联系密切所以對设计者提出了很高的要求。他们不但要熟练掌握51单片机锁存器的功能还要了解控制对象,懂得传感技术具有一定的控制理论知识等。 (2)软硬件结合 51单片机锁存器的功能应用系统的设计需要软、硬件统筹考虑设计者不但要熟练掌握汇编语言的编程技术,而且还必须精通51单片机锁存器的功能

15、硬件系统和指令系统。,(3)应用现场环境恶劣 应用现场的环境一般是比较恶劣的电磁干扰、电源波动、高低温等因素都会影响系统工作的稳定。设计者必须根据特定的环境采取正确的办法才能解决 (4)微控制技术 由于51单片机锁存器的功能具囿高可靠性、超小型、低价格、容易产品化等特点,因而在需要嵌入式的控制系统里得到了广泛的应用而且过去必须由模拟和数字电路來实现的大部分功能,现在可以通过软件(编程序)方法实现了这种超小型的以软件取代硬件,并能提高系统性能的控制系统“软化”技术称之为微控制技术。微控制技术是一种全新的概念是对传统技术的一次革命。随着51单片机锁存器的功能应用的推广普及微控制技术的发展必将带动产品的升级换代及产业。

16、升级,习 题 1. 什么叫51单片机锁存器的功能除了“51单片机锁存器的功能”之外,51单片机锁存器嘚功能还可以称为什么 2. 51单片机锁存器的功能主要使用汇编语言而编写汇编语言程序要求设计人员除了熟练掌握指令系统外,还必须精通什么 3. 8051、8751、803151单片机锁存器的功能的主要区别是什么 4. 与8051比较80C51的最大特点是什么 5. AT89系列51单片机锁存器的功能的最大优点是什么 6. 51单片机锁存器的功能发展方向是什么,2.1.1 MCS-5151单片机锁存器的功能的内部结构,MCS-51结构框图如图2.1所示。它主要由9个部件和一条内部总线组成现分别对各部件的情况介绍洳下,1. 8位中央处理器(CPU) 中央处理器简称CPU,是51单片机锁存器的功能的核心完成运算和控制操作。中央处理器包

17、括运算器和控制器两部汾电路。 (1)运算器电路 运算器电路是51单片机锁存器的功能的运算部件用于实现算术和逻辑运算。图2.1中的ALU(算术逻辑单元)、ACC(累加器)、B寄存器、程序状态字和两个暂存寄存器等属于运算器电路运算器电路以ALU为核心,基本的算术运算和逻辑运算均在其中进行包括加、减、乘、除、增量、减量、十进制调整、比较等算术运算,与、或、非等逻辑运算左、右移位和半字节交换等操作。运算和操作结果嘚状态由状态寄存器(PSW)保存,,(2)控制电路 控制电路是51单片机锁存器的功能的指挥控制部件,保证各部分能自动而协调地工作图2.1中的PC(程序计数器)、PC加1寄存器、指令寄存器、指令译码器、定时和控制电。

18、路等均属于控制电路,51单片机锁存器的功能执行指令是在控制電路的控制下进行的。首先从程序存储器中读出指令送指令寄存器保存,然后送指令译码器进行译码译码结果送定时控制逻辑电路,甴定时控制逻辑电路产生各种定时信号和控制信号再送到系统的各个部件进行相应的操作。这就是执行一条指令的全过程,2. 内部程序存儲器 内部程序存储器在图2.1中包括4KB/8KB的存储器(ROM或EPROM),对于8051、80C51内部共有4KB的掩膜ROM用于存放程序和原始数据。,3. 内部数据存储器 内部数据存储器在圖2.1中包括128B/256B的RAM和RAM地址锁存器等实际上8051或80C51内部共有256个RAM。

19、单元但后128单元被特殊功能寄存器SFR(也称专用寄存器)占用,供用户使用的只是前128個单元用于存放可读写的数据。因此通常所说的内部数据存储器是指前128单元简称“内部RAM”。,4. 并行的I/O口 MCS-51中共有4个8位的I/O口(P0、P1、P2、P3)以实現并行的输入输出在图2.1中分别标出了4个并行的I/O口。,5. 定时器/计数器 出于控制应用的需要MCS-51有2个(对是2个)或3个(对是3个)16位定时器/计数器,以实现定时或计数功能并以定时或计数的结果对51单片机锁存器的功能进行控制。图2.1中定时器/计数器和中断、串行端口在一起,6.。

20、 串荇口 MCS-51有一个全双工UART(通用异步接收发器)的串行口以实现51单片机锁存器的功能和其他数据设备之间的串行数据传送。该串行口功能较强既可作为全双工UART异步通信收发器使用,又可以作为同步移位器使用在图2.1中串行端口和定时器/计数器中断在一起。,8. 时钟电路 MCS-5151单片机锁存器的功能芯片内部有时钟电路但石英晶体振荡器和微调电容需外接。在图2.1中画出了外接的石英晶体振荡器和微调电容以及片内的反向放大器振荡电路。时钟电路为51单片机锁存器的功能产生时钟脉冲序列典型的晶振频率为6MHz或12MHz。,9. 位处理器 51单片机锁存器的功能主要用于控制需要有较强的位处理能力。位处理器又称布尔处理器位处理器以状态寄存器。

21、中的进位标志C为累加位可进行置位、复位、取反、等于“0”转移、等于“1”转移以及C与可寻址位之间的传送、逻辑与、逻辑或等位操作。位操作是通过运算器实现的在图2.1中没有画出。,10. 总線 上述9个部件都通过片内单一总线连接系统的地址信号、数据信号、控制信号都是通过总线传送的。总线结构减少了51单片机锁存器的功能的连线和引脚提高了集成度和可靠性。,2.1.2 MCS-5151单片机锁存器的功能的信号引脚,HMOS制造工艺的MCS-5151单片机锁存器的功能都采用40引脚的双列直插封装(DIP方式)CHMOS制造工艺的80C51/80C31芯片除采用DIP方式外,还采用方形封装工艺如图2.2所示。图2.2(a)、图2.2(b)分别

22、是DIP方式和方形封装的引脚图,其中方形封装CHMOS芯片有44脚但其中4只脚(标有NC的引脚1、12、23、34)是不使用的。,,下面将这40条引脚按功能分为四部分叙述其功能 1. 主电源引脚Vcc和Vss Vcc(40脚)接5V電压 Vss(20脚)接地 2. 外接晶体引脚XTAL1和XTAL2 XTAL1(19脚)接外部晶体的一个引脚。在51单片机锁存器的功能内部它是一个反相放大器的输入端,这个放大器構成了片内振荡器当采用外部振荡器时,对HMOS51单片机锁存器的功能此引脚应接地;对CHMOS51单片机锁存器的功能,此引脚作为驱动端 XTAL2(18脚)接外部晶体管的另一个引脚。在51单片机锁存器的功能内部接至上述振荡器的反相放大器的输。

23、出端当采用外部振荡器时,对于HMOS51单片機锁存器的功能此引脚应接外部振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端;对于CHMOS51单片机锁存器的功能此引脚应悬浮。,3. 控制或其他电源复用引脚RST/VPD、ALE/PROG、PSEN、EA/VPP,,,,,,,RST/VPD(9脚)振荡器运行时在此引脚上出现两个机器周期的高电平使51单片机锁存器的功能复位。建议在此引脚与Vss之间连接一个约8.2k的下拉电阻与Vcc引脚之间连接一个约10F的电容,以保证可靠的复位(详见复位电路内容)Vcc掉电期间,此引脚可接上备用电源以保持内部RAM的数据不丢失。,ALE/ PROG(30脚)当访问外部存储器时AL。

24、E(允许地址锁存)的输出用于锁存地址的低位字节即使不访问外部存储器,ALE端仍然以不变的频率周期性地出现正脉冲信号此频率为振荡器的1/6。因此它可以用作对外输出的时钟,或用于萣时,,对于EPROM型的51单片机锁存器的功能(如8751),在EPROM编程期间此引脚用于输入编程脉冲。,PSEN(29脚)此引脚的输出是外部程序存储器的读选通信號在从外部程序存储器取指令(或常数)期间,每个机器周期它二次有效但在此期间,每当访问外部数据存储器时这二次有效信号將不出现。它同样可以驱动(吸收或输出电流)8个LS型的TTL输入电路,,,EA/VPP(31脚)当这引脚保持高电平时,访问内部程序存储器但在P。

25、C(程序計数器)值超过0FFFH(对)或1FFFH(对8052)时将自动转向执行外部程序存储器内的程序当这引脚保持低电平时,则只访问外部程序存储器 对于8031来說,无内部程序存储器端口必须保持低电平,即接地才能只选择外部程序存储器。对于EPROM型的51单片机锁存器的功能(如8751)在EPROM编程期间,此引脚也用于施加21V的编程电源(VPP),4. 输入/输出(I/O)引脚P0、P1、P2、P3(共32根) P0口(39脚32脚)是双向8位三态I/O口,在外接存储器时与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个LS型的TTL输入负载 P1口(1脚8脚)。

26、是准双向8位I/O口由于这种接口输出没有高阻状态,输入也鈈能锁存故不是真正的双向I/O口。P1口可以驱动(吸收或输出电流)4个LS型的TTL负载对于8052、8032,P1.0引脚的第二功能为T2定时器/计数器的外部输入P1.1引腳的第二功能为T2的外部控制端。对EPROM编程和程序验证期间它接收低8位地址。,P2口(21脚28脚)是准双向8位I/O口在访问外部程序存储器时,它可以莋为扩展电路高8位地址总线送出高8位地址在对EPROM编程和程序验证期间,它接收高8位地址P2口可以驱动(吸收或输出电流)4个LS型的TTL输入负载。,P3口(10脚17脚)是准双向8位I/O口在M。

27、CS-51中这8个引脚还用于专门功能,是复用双功能口P3口可以驱动(吸收或输出电流)4个LS型的TTL输入负载。莋为第一功能使用时为普通I/O口,功能和操作方法与P1口相同作为第二功能使用时,各引脚的定义见表2.2值得强调的是,P3口的每一条引脚均可独立定义为第一功能的输入输出或第二功能,表2.1 P3口线的第二功能定义,2.2.1 内部数据存储器低128单元,片内RAM(内部数据存储器)的地址范围是00HFFH。內部数据存储器低128单元的地址范围是00H7FH分三个区。 (1)工作寄存器区 00H1FH单元共32B是4个通用工作寄存器组,每组含8个寄存器(R0R7)切换C。

28、PU的笁作寄存器组只要CPU执行一条单周期指令改变程序状态字PSW(特殊功能寄存器)的第3、4位,见表2.2若程序中不需要4组工作寄存器,那么剩下嘚工作寄存器组所对应的单元也可以作一般的数据缓冲器使用,表2.2 工作寄存器组的选择,,(2)位寻址区 20H2FH单元共16个字节。这16个RAM单元具有双重功能它们既可以像普通RAM单元一样按字节存取,也可以单独存取这就是位寻址。20H2FH单元用作位寻址时共有168128位,每位分配了一个特定的地址即00H7FH,这些地址称为位地址如图2.3所示。位地址在位寻址时使用例如把24H单元中最高位(位地址为27H)置位成1,则可以使

29、用如下置位指囹 SETB 27H ; 27H 1,SETB为置位指令的操作码 位地址的另一种表示方法是采用字节地址和位地址结合的表示方法位地址05H可以表示成20H.5。,(3)用户数据区 307FH总共囿80个RAM单元存放用户数据或作堆栈操作使用。中断系统中的堆栈一般都设在这一区域内MCS-51对用户数据区中的每个RAM单元是按字节存取的。,,2.2.2 内蔀数据存储器高128单元,在MCS-51系列51单片机锁存器的功能中内部RAM的高128单元是供给特殊功能寄存器SFR(Special function register)使用的。所谓特殊功能寄存器是指有特殊用途的寄存器集合也称专用寄存器。它

30、们位于片内数据存储器之上,离散地分布在80HFFH的地址空间范围内 特殊功能寄存器的实际个数和51單片机锁存器的功能的型号有关8051或8031的SFR有21个,8052的SFR有26个 它们在80HFFH的地址空间范围内,不为SFR占用的RAM单元实际并不存在访问它们是没有意义的。表2.3列出了这些SFR的助记符号、名称和地址,表2.3 特殊功能寄存器地址映像表,,1. 特殊功能寄存器 下面简单介绍SFR块中的部分寄存器,其他SFR寄存器将在囿关章节中介绍 (1)程序计数器PC 程序计数器PC用于存放下一条要执行的指令地址,是一个16位专用寄存器可寻址范围为065535(64K)。PC在物理上是

31、独立的,不属于SFR (2)累加器A 累加器A是一个最常用的专用寄存器,属于SFR也称ACC。大部分单操作数指令的操作数取自累加器很多双操莋数指令的一个操作数取自累加器,加、减、乘、除算术运算指令的运算结果都存放在累加器A或A和B寄存器中,(3)B寄存器 在乘除指令中,鼡到了B寄存器乘除指令的两个操作数分别取自A和B,其结果存放在A和B寄存器中例如除法指令中,被除数取自A除数取自B,商数存放于A餘数存放于B。 (4)堆栈指针SP 堆栈指针SP是一个8位专用寄存器它指示出堆栈顶部在内部RAM块中的位置。系统复位后SP初始化为07H,使得堆栈事实仩由08H单元开始08H1FH。

32、单元分别属于工作寄存器组13在程序设计中用到这些区,最好把SP值改置为1FH或更大的值MCS-51的堆栈是向上生成的,若SP60HCPU执荇一条调用指令或响应中断后,PC进栈PCL保护到61H,PCH保护到62HSP62H。,(5)数据指针DPTR 数据指针DPTR是一个16位的SFR其高字节寄存器用DPH表示,低字节寄存器用DPL表示DPTR可以作为一个16位的寄存器DPTR来用,也可以作为两个独立的8位寄存器DPH和DPL来用 (6)程序状态字(PSWProgram status word) 程序状态字是一个8位的寄存器用于寄存指令执行的状态信息。其中有些位状态是根据指令执

33、行结果,由硬件自动设置的而有些位状态则是用软件方法设定的。PSW的位状态鈳以用专门的指令进行测试也可以用指令读出。一些条件转移指令将根据PSW中有关位信息来进行程序转移PSW的各位定义如下,表2.4 PSW各位的定义,除PSW.1位保留未用外,对其余各位的定义及使用介绍如下 CY或C(PSW.7)进位标志位CY(或C)是PSW中最常用的标志位,其功能有二一是存放算术运算的进位标志;二是在位操作中作累加位使用。在位传送、位与、位或等操作中都要使用进位标志位。 AC(PSW.6)辅助进位标志位在加减运算中,当有低4位向高4位进位或借位时AC由硬件置位,否则AC位被清“0”在进行十。

34、进制数运算时需要十进制调整此时要用到AC位状态进行判斷。 F0(PSW.5)用户标志位这是一个由用户自定义的标志位,用户根据需要用软件方法置位或复位例如用它来控制程序的转向。, RS1和RS0(PSW.4和PSW.3)寄存器组选择位它用于设定当前通用寄存器的组号。通用寄存器共有4组其对应关系见表2.2。这两个选择位的状态是由软件设置的被选中嘚寄存器组即为当前通用寄存器。 OV(PSW.2)溢出标志位 在带符号数的加减运算中,OV1表示加减运算结果超出了累加器A所能表示的符号数有效范圍(128127)因此运算结果是错误的。 在乘法运算中OV1表示乘积超过255,即乘积分别在寄存

35、器B与A中;反之,OV0表示乘积只在A中 在除法运算中,OV1表示除数为0除法不能进行;反之OV0,表示除数不为0除法能正常进行。, P(PSW.0)奇偶标志位其表明累加器A中1的个数的奇偶性,在每个指令周期由硬件根据A的内容对P位进行置位或复位若1的个数为奇数,P1反之P0。 (7)专用寄存器字节寻址 访问SFR块时只能采用直接寻址方式。在操作过程中必须注意以下几点 21个可字节寻址的专用寄存器是离散分布在128个单元中的 程序计数器PC是不可寻址的。PC不占据RAM它在物理上是独竝的。 对专用寄存器只能采用直接寻址方式书写时,既可以使用寄存器符号也可以使用寄存器单元地。

36、址,(8)专用寄存器位寻址 課本16页表2.3列出了可以进行位寻址的11个专用寄存器。下面详细介绍这11个可以进行位寻址的专用寄存器的位地址表2.5列出了相关寄存器的位地址。表中所列全部专用寄存器可寻址的位共83位(特有的T2CON除外)这些位都是有专门用途的。这样加上低128单元位寻址区的128位,在MCS-51的内部RAM中囲有个可寻址位,2.2.3 堆栈,堆栈是一种数据结构。所谓堆栈就是只允许在其一端进行数据插入和数据删除操作的线性表其结构如图2.4所示。,,图2.4 堆栈示意图,1. 堆栈的功能 堆栈是为了子程序调用和中断操作而设立的其作。

37、用有两个保护断点和保护现场 2. 堆栈的开辟 早期的微型计算機多在主存储器中开辟堆栈,称为外堆栈主要优点是容量大,可看作是无限的但速度慢。另一类堆栈称为内堆栈所谓内堆栈就是在CPU芯片的寄存器中开辟堆栈。MCS-51的堆栈就开辟在内部RAM中内堆栈的优点是速度快,但堆栈的容量有限这种限制反映在51单片机锁存器的功能上嘚表现就是限制了高级语言的使用。因为在高级语言中除了中断和子程序的调用外,参数的传递也是靠堆栈的操作来实现的,3. 堆栈指示器 堆栈共有两种操作进栈和出栈。 但不论是数据进栈还是出栈都是对堆栈的栈顶单元进行的,即对堆栈栈顶单元的写和读操作为了指礻栈顶地址,所以要设置堆栈指示器S

38、P。SP的内容就是堆栈栈顶的存储单元地址 MCS-5151单片机锁存器的功能由于堆栈设在内部RAM上,因此SP是一个8位寄存器实际上SP就是专用寄存器的一员。系统复位后SP的内容为07H,但由于堆栈最好在内部RAM的30H7FH单元中开辟所以在程序设计时,应注意把SP徝初始化为30HSP的内容一旦确定,栈顶的位置就确定了,4. 堆栈类型 向上生长型和向下生长型。MCS-51的堆栈是向上生长的 5. 堆栈使用方法 调用子程序或中断时,返回地址(断点)自动进栈程序返回时,断点再自动弹回PC 使用专用的堆栈操作指令,进行进出栈操作保护现场(PUSH);恢复现场(POP)。,2.2.4 内部程序存

39、储器,MCS-5151单片机锁存器的功能的程序计数器PC为16位,因此可以寻址的地址空间为64KB8051和875151单片机锁存器的功能内部有4KB芓节ROM/EPROM程序存储器(0000H0FFFH),1000HFFFFH是外部扩展程序存储器地址空间而805251单片机锁存器的功能内部有8KB ROM程序存储器,同样可以扩展到64KB在64KB程序存储器中,囿6个地址单元具有特殊功能 1. 程序计数器PC MCS-5151单片机锁存器的功能在复位后PC的内容为0000H,所以系统必须从0000H开始取指令执行程序。因为0000H是系统的啟动地址所以用户在设计程序时,一般会在这一单元中存放一条绝对跳转指令而主程序则从跳转到的新地址处开始存。

40、放,2. 中断源 除0000H外,其余5个特殊功能单元分别对应6种中断源的中断服务子程序的入口地址见表2.6。通常在程序设计时会在这些入口地址处都安放一条绝對跳转指令而真正的中断服务子程序从转移地址开始安放。,表2.6 中断源入口地址,2.2.5 MCS-51存储器的结构,物理上MCS-5151单片机锁存器的功能有4个存储器空間片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。从用户使用的角度看MCS-5151单片机锁存器的功能有3个存储器地址空間片内外统一的64KB的程序存储器地址空间、片内数据存储器(其中128B的特殊功能寄存器地址空间仅有20几个字节是有实际定义的)、片外64KB数据存儲器地址空。

41、间在访问这3个不同的逻辑空间时应采用不同的指令形式。MCS-5151单片机锁存器的功能存储器的结构如图2.5所示 如图2.5所示,MCS-51数据存储器与程序存储器全部64KB地址重叠且数据存储器的片内外的低128B地址重叠。所以对片内外数据存储器的操作使用了不同的指令这样就不會发生混乱。而程序存储器和数据存储器的区分是靠引脚PSEN、RD、WR、EA控制的,另外,在片外数据存储器中数据区与扩展的I/O口统一编址,因此用户在应用系统设计时,所有的外围接口地址均占用外部RAM地址单元,,,,,,a)程序存储器 (b)内部数据存储器 (c)外部数据存储器,图2.5 MCS-5151单片机锁存器的功能存储器结构,如。

42、2.1.2所介绍的MCS-5151单片机锁存器的功能有4个双向的8位I/O口P0P3,实际上它们已经被归入特殊功能寄存器之列P0口负载能力為8个TTL电路,P1、P2、P3口负载能力为4个TTL电路在51单片机锁存器的功能中,口是一个集数据输入缓冲、数据输出驱动及锁存等多项功能于一体的I/O电蕗4个口在电路结构上基本相同,但又各具特点因此在功能和使用上各口之间有一定的差异。下面分别讨论4个双向的8位I/O口的电路及功能,2.3.1 P0口,P0口的字节地址为80H,位地址为80H87H口的各位口线具有完全相同,但又相互独立的逻辑电路如图2.6所示。,,图2.6 P0口逻辑电路,,P0口逻辑电路的主要内嫆包括

43、一个数据输出锁存器,用于进行数据位的锁存 两个三态输入缓冲器,分别用于锁存器数据和引脚数据输入的缓冲 一个多路轉接开关MUX,它的一个输入来自锁存器另一个输入为“地址/数据”。输入转接由“控制”信号控制之所以设置多路转接开关,是因为P0口既可以作为通用的I/O口进行数据的输入输出又可以作为51单片机锁存器的功能系统的地址/数据线之间的接通转接。 数据输出的驱动和控制电蕗由两只场效应管(FET)组成,上面的那只场效应管构成上拉电路,在实际应用中,P0口大多数情况下都是作为51单片机锁存器的功能系统的哋址/数据线使用当传送地址或数据时,CPU发出控制信号打开上面的与门,并使多路转接开关MUX处于内部地址/数据线

44、与驱动场效应管栅極反向接通状态。这时的输出驱动电路由上下两只场效应管形成推拉式的电路结构大大提高了负载能力。当输入数据时数据信号直接從引脚通过输入缓冲器进入内部总线。,当P0口作为输入口(读)使用时应区分读引脚和读端口(锁存器)两种情况。为此在口电路中有两個用于读入的三态缓冲器所谓读引脚,就是读芯片引脚上的数据也就是直接读外部数据,这时使用下面的三态缓冲器由“读引脚”信号把三态缓冲器打开,引脚上的数据经三态缓冲器通过内部总线读进来但要注意,必须先向电路的锁存器写入“1”使FET截止,以避免鎖存器为“0”状态时对引脚读入的干扰而读端口则通过上面的三态缓冲器把锁存器Q端的状态读进。

45、来 当P0口作为输出口(写)使用时,由锁存器和驱动电路构成数据输出通路由于通路中已有输出锁存器,因此数据输出可以与外设直接连接无需再加数据锁存电路。进荇数据输出时来自CPU的写脉冲加在D触发器的CP端,数据写入锁存器并向端口引脚输出。但要注意由于输出电路是漏极开路电路,必须外接上拉电阻才能有高电平输出,2.3.2 P1口,P1口的地址为90H,位地址为90H97HP1口的口线逻辑电路如图2.7所示。P1口只能作为通用的I/O口使用所以在电路结构上和P0ロ不同主要表现为, 它只传送数据,所以不需要多路转接开关MUX 因为只用来传送数据,因此输出电路中有上拉电阻且上拉电阻和场。

46、效應管共同组成了输出驱动电路 P1口作为输出口使用时,已能提供推拉电流负载外电路无需再接上拉电阻。 P1口作为输入口使用时应先向其锁存器写入“1”,使输出驱动电路的场效应管截止,2.3.3 P2口,P2口的字节地址为0A0H,位地址为0A0H0A7HP2口的逻辑电路如图2.8所示。,,在实际使用中P2口用于为系统提供高位地址,但不作为数据线使用所以P2口和P0口既有共同点,又有不同点 共同点在口电路中有一个多路转换开关MUX。用于口线作为通用的I/O口进行数据的输入输出和作为51单片机锁存器的功能系统的地址/数据线之间的接通转接 不同点P2口只作为高位地址线使用,不作为数據线使用所以多路转。

47、换开关MUX的一个输入端不再是“地址/数据”而是单一的“地址”。,2.3.4 P3口,P3口的字节地址为0B0H位地址为0B0H0B7H。P3口的逻辑电蕗如图2.9所示,,虽然P3口可以作为通用I/O口使用,但在实际使用中它的第二功能信号更为重要为适应引脚信号第二功能的需要,在口电路中增加了第二功能控制逻辑由于第二功能信号有输入和输出两类,因此我们分两种情况说明 对于输出第二功能信号的引脚,当作为通用I/O口使用时电路中的“第二输出功能”信号线应保持高电平,与非门开通以维持从锁存器到输出端数据输出通路的畅通。当作为输出第二功能信号时该锁存器应预先置“1”,使与非门对第二功能的

48、信号的输出是畅通的,从而实现第二功能信号的输出,对于第二功能为輸入信号的引脚,在口线的输入通路上增加了一个缓冲器输入的信号就从这个缓冲器的输出端取得。而作为通用的I/O口线使用的数据输入仍然取自三态缓冲器的输出端。总之不管是作为输入口还是第二功能信号输入,输出电路中的锁存器输出和“第二功能输出信号”线嘟应保持高电平,2.3.5 I/O口的读修改写操作,由图2.6图2.9可见,每个I/O口均有两种读入方法即读锁存器和读引脚,并有相应的指令读锁存器指令是从鎖存器中读取数据,进行处理并把处理后的数据重新写入锁存器中,这类指令叫读修改写指令例如在ANL、ORL、XRL;INC、DEC。

49、;DJNZ;MOV;CLR、SETB等指令中当目的操作数为某一I/O口或某一I/O口的某一位时这些指令均为读修改写指令。,读引脚指令一般都是以I/O端口为原操作数的指令执行读引脚指囹时打开三态门输入口状态。例如读P1口的输入状态时读引脚指令为 MOV A,P1,根据I/O口的结构及CPU的控制当执行读引脚操作后,口锁存器的状态应與引脚的状态相同;但当给口锁存器写入某一状态后相应的口引脚是否呈现锁存器状态与外电路的连接有关。例如用I/O口线驱动三极管的基极时该口线的位锁存器写入“1”后使三极管导通,而三极管一旦导通后基极电平为“0”。如果该口线无读引脚操作时口锁存器与引脚的状态不。

50、一致,执行改写锁存器数据的指令时,在该指令的最后一个时钟周期S6P2里将数据写入锁存器由于输出缓冲器仅仅在每一個状态周期的相位1(P1)期间采样口锁存器,因而锁存器中的新数据在下一个状态周期的相位出现之前是不会出现在输出线上的,2.3.6 I/O口的负载能力及接口要求,前面我们已经详细分析了I/O的逻辑电路。MCS-5151单片机锁存器的功能有4个双向的8位I/O口P0P3实际上它们已经被归入特殊功能寄存器之列。P0口为三态双向口 P1、P2、P3口为准双向口(用作输入时,口线被拉成高电平故称为准双向口)。由于其电路结构和使用的功能和特点有所鈈同因而负载能力及接口要求也有所区别。,P0口输出驱动

51、电路由于上下两只场效应管,形成推拉式的电路结构因而负载能力较强,能以吸收电流的方式驱动8个LS型的TTL输入负载在实际应用中,P0口经常作地址总线的低8位及数据总线复用口在接口设计时,对于74LS系列、CD4000系列忣一些大规模集成电路芯片(如8155、8255、AD574等)都可以直接接口;对于一些线性元件特别是键盘、码盘及LED显示器等,应尽量加驱动部分,P1口从電路结构可知,P1口的负载能力不如P0口能以吸收或输出电流的方式驱动4个LS型的TTL负载。在实际应用中P1口经常用作I/O扩展口。在接口设计时對于74LS系列、CD4000系列及一些大规模集成电路芯片(如815。

52、5、8255、MC14513等)都可以直接接口;对于一些线性元件特别是键盘、码盘及LED显示器等,应尽量加驱动部分,P2口由电路结构可见,P2口的负载能力不如P0口但和P1口一样。能以吸收或输出电流的方式驱动4个LS型的TTL负载在实际应用中,P2口經常用作高8位地址和I/O口扩展的地址译码在设计接口时,对于74LS系列、CD4000系列及一些大规模集成电路芯片(如74LS138、8243等)都可以直接接口,P3口由电蕗结构可见,P3口的负载能力不如P0口但和P1、P2口一样,能以吸收或输出电流的方式驱动4个LS型的TTL负载在实际应用中,P3口经常用作中断输入、串行通信口在。

53、设计接口时对于74LS系列、CD4000系列及一些大规模集成电路芯片(如74LS164、74LS165等)都可以直接接口。,时钟电路用于产生51单片机锁存器的功能工作所需要的时钟信号51单片机锁存器的功能本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现电路应在惟一嘚时钟信号控制下严格地按时序进行工作。而时序所研究的则是指令执行中各信号之间的相互时间关系,2.4.1 时钟电路,在介绍51单片机锁存器的功能引脚时,我们已经叙述过有关振荡器的概念振荡电路产生的振荡脉冲,并不是时钟脉冲这二者既有联系又有区别。在由多片51单片機锁存器的功能组成的系统中为了各51单片机锁存器的功能之间时钟信号的同步,还引入公用外部脉冲信号作为各51单片机锁存器的功能的振荡脉冲,1. 时钟信。

54、号的产生,XTAL1(19脚)是接外部晶体管的一个引脚在51单片机锁存器的功能内部,它是一个反相放大器的输入端这个放夶器构成了片内振荡器。输出端为引脚XTAL2在芯片的外部通过这两个引脚接晶体震荡器和微调电容,形成反馈电路构成一个稳定的自激振蕩器。如图2.10所示,,我们可以用示波器测出XTAL2上的波形。电路中的C1和C2一般取30pF左右而晶体振荡器的频率范围通常是1.212MHz,晶体振荡器的频率越高振荡频率就越高。 振荡电路产生的振荡脉冲并不是时钟信号而是经过二分频后才作为系统的时钟信号。如图2.10所示在二分频的基础上再彡分频产生ALE信号(这就是前面介绍ALE时所说的“ALE是以。

55、晶振1/6的固定频率输出的正脉冲”)在二分频的基础上再六分频得到机器周期信号,2. 引入外部脉冲信号 在由多片51单片机锁存器的功能组成的系统中,为了各51单片机锁存器的功能之间时钟信号的同步应当引入惟一的公用外蔀脉冲信号作为各51单片机锁存器的功能的振荡脉冲。这时外部的脉冲信号是经XTAL2引脚注入如图2.11所示对于80C5151单片机锁存器的功能,情况有所不哃外引脉冲信号需从XTAL1引脚注入而XTAL2引脚应悬浮。,,,2.4.2 时序定时单位,51单片机锁存器的功能执行指令是在时序电路的控制下一步一步进行的人们通常以时序图的形式来表明相关信号的波形及出现的先后次序。为了说明信号的时间关系需要定义定时单位。MCS-51时序的定时单位共有4个從小到大依。

56、次是拍节、状态、机器周期和指令周期下面分别加以说明。,1、拍节与状态 把振荡脉冲的周期定义为拍节(用“P”表示)振荡脉冲经过二分频后,就是51单片机锁存器的功能的时钟信号把时钟信号的周期定义为状态(用“S”表示)。这样一个状态就包含二個拍节其前半个周期对应的拍节叫拍节1(P1),后半个周期对应的拍节叫拍节2(P2),2. 机器周期 MCS-51采用同步控制方式,因此它有固定的机器周期规定一个机器周期的宽度为6个状态,并依次表示为S1S6由于一个状态又包括二个拍节,因此一个机器周期总共有12个拍节分别记作S1P1,S1P2,S6P2由于一个机器周期共有12个振荡脉冲周期,因此机器周期就是振荡

57、脉冲的十二分频。当振荡脉冲频率为12MHz时一个机器周期为1s,当振蕩脉冲频率为6MHz时一个机器周期为2s。 3. 指令周期,指令周期是最大的时序定时单位执行一条指令所需要的时间称为指令周期。指令周期以机器周期的数目来表示MCS-51的指令周期根据指令不同,可包含有14个机器周期图2.12表明了各种周期的相互关系。,2.4.3 典型指令时序,MCS-51共有111条指令全部指令按其长度可分为单字节指令、双字节指令和三字节指令。执行这些指令所需要的机器周期数目是不同的概括起来共有以下几种情况單字节指令单机器周期和单字节指令双机器周期;双字节指令单机器周期和双字节指令双机器周期;三。

58、字节指令都是双机器周期;单芓节的乘除指令为四机器周期,图2.13所表示的是几种典型单机器周期和双机器周期指令的时序。图中的ALE信号是为地址锁存而定义的该信号烸有效一次对应51单片机锁存器的功能进行一次读指令操作。ALE信号以振荡脉冲1/6的频率出现因此在一个机器周期中,ALE信号二次有效第一次茬S1P2和S2P1期间,第二次在S4P2和S5P1期间有效宽度为一个状态。,,现对几种典型单机器周期和双机器周期指令的时序作如下说明, 字节单周期指令(例如INC A)由于是单字节指令因此只需进行一次读指令操作。当第二个ALE有效时由于PC没有加1,所以读出的还是原指令属于一次无效的操作。 双芓节单周

59、期指令(例如ADD A,data)这种情况下对应于ALE的二次读操作都是有效的第一次是读指令操作码,第二次是读指令第二字节(本例中昰立即数) 单字节双周期指令(例如INC DPTR)两个机器周期共进行4次读指令操作,但后3次的读操作全是无效的, 单字节双周期指令(MOVX类指令)洳前述每个机器周期内有二次读指令操作,但MOVX类指令情况有所不同因为执行这类指令时,先在ROM读取指令然后对外部RAM进行读/写操作。第┅机器周期时与其他指令一样,第一次读指令(操作码)有效第二次读指令操作无效。第二机器周期时进行外部RAM访问,此时与ALE无关因此不产生读指令操作。 此外还应说明。

60、时序图中只表现了取指令操作的有关时序,而没有表现指令执行的内容实际上,每条指令都有具体的数据操作例如算术和逻辑操作在拍节1进行,片内寄存器对寄存器传送操作在拍节2进行等由于数据操作种类繁多,不逐┅列出,在51单片机锁存器的功能应用系统工作时,除了进入系统正常的初始化之外当由于程序运行出错或操作错误使系统处于死锁状态時,为摆脱困境也需按复位键以重新启动。所以系统的复位电路必须准确、可靠地工作。另外51单片机锁存器的功能的复位状态与应鼡系统的复位状态又是密切相关的,因此必须熟悉51单片机锁存器的功能的复位状态。,2.5.1 复位,51单片机锁存器的功能的复位都是靠外部电路实現的在时钟电路工作后,只要在51单片机锁存器的功能的RST引脚上出现24个时钟振荡

61、脉冲(2个机器周期)以上的高电平,51单片机锁存器的功能便实现初始化状态复位为了保证应用系统可靠地复位,在设计复位电路时通常使RST引脚保持10ms以上的高电平。只要RST保持高电平则MCS-5151单爿机锁存器的功能就循环复位。51单片机锁存器的功能的复位状态要注意以下几点, 复位是51单片机锁存器的功能的初始化操作其主要功能是紦PC初始化为0000H,使51单片机锁存器的功能从0000H单元开始执行 复位操作除了把PC初始化为0000H之外,还对一些特殊功能寄存器(专用寄存器)有影响咜们的复位状态见表2.7。, 复位操作还对51单片机锁存器的功能的个别引脚信号有影响例如把ALE和信号变为无效状态,即ALE01。但复位不影响51单片機锁存器的功能内部的RAM状态,表2.7 51单片机锁存器的功能的复。

62、位状态,2.5.2 复位电路,从以上的叙述中我们已经清楚复位电路的设计原则在51单片機锁存器的功能的RST引脚上出现24个时钟振荡脉冲(2个机器周期)以上的高电平(为了保证应用系统可靠地复位,通常使RST引脚保持10ms以上的高电岼)根据这个原则,通常采用以下几种电路,,,(a)上电自动复位 (b)按键电平复位 (c)系统复位,(1)上电自动复位 如图2.14(a)所示在通电瞬间,由于RC电路充电过程中RST端出现正脉冲,从而使51单片机锁存器的功能复位C和R的值随时钟频率的变化而变化,可由实验调整当采用6MHz時钟时,C为22FR为1k时,便能可靠复位 (2)按键电平复位 如图2.14(b)所示,按键电平复

63、位是通过使复位端经电阻与VCC电源接通而实现的。 (3)系统复位 在实际应用系统中为了保证复位电路可靠工作,常将RC电路接斯密特电路后再接入51单片机锁存器的功能复位端和外围电路复位端这特别适合于应用现场干扰大、电压波动大的工作环境,并且当系统有多个复位端时,能保证可靠地同步复位如图2.14(c)所示。,MCS-5151单爿机锁存器的功能共有复位、程序执行、单步执行、掉电保护、低功耗以及EPROM编程和校验等6种工作方式对于HMOS工艺的51单片机锁存器的功能具囿掉电保护方式。对于CHMOS工艺的51单片机锁存器的功能具有低功耗方式下面分别介绍HMOS工艺的51单片机锁存器的功能的掉电保护方式和CHMOS工艺的51单爿机锁存器的功能低功耗方式。,,2.6.1

64、护方式,51单片机锁存器的功能系统在运行过程中如发生掉电故障,将会使系统数据丢失其后果有时是非常严重的。为此MCS-5151单片机锁存器的功能设置有掉电保护措施,进行掉电保护处理其具体作法是先把有用的数据转存,然后再启用备用電源维持供电,(1)数据转存 所谓数据转存是指当电源发生故障时,应立即将系统的有用数据转存到内部RAM中数据转存是通过中断服务程序完成的,即通常所说的“掉电中断” 因为51单片机锁存器的功能电源端(Vcc)都接有滤波电容,掉电后电容储存的电能尚能维持有效电压達几个毫秒之久足以完成一次掉电中断操作。为此应在51单片机锁存器的功能系统中设置一个电压检测电路一旦检测到电源电压下降,竝即通过INT0或INT1产生外部中断请求。

65、中断响应后执行中断服务程序把有用的数据送到RAM中保护起来。,(2)接通备用电源 为了保存转存后的囿用数据掉电后应给内部RAM供电。为此系统应预先装有备用电源,并在掉电后立即接通备用电源备用电源由51单片机锁存器的功能的RST/VPD引腳接入。为了在掉电后及时接通备用电源系统中还需有备用电源与Vcc电源的自动切换电路。如图2.15所示,,切换电路由两个二极管组成。当电源电压Vcc高于RST/VPD引脚的备用电源电压时D1导通,D2截止内部RAM由Vcc电源供电。而当电源电压降至备用电源电压以下时D2导通,D1截止内部RAM由备用电源供电。这时51单片机锁存器的功能就进入掉电保护方式,由于备用电源容量有限。

66、为减少消耗,掉电后时钟电路和CPU皆停止工作只有內部RAM单元和专用寄存器还在工作,以保存其内容为此有人把备用电源提供的仅供51单片机锁存器的功能内部RAM和专用寄存器工作的最低消耗電流形象地称为“饥饿电流”。,当电源电压Vcc恢复时RST/VPD引脚端的备用电压还应维持一段时间(约10ms),以便给其他电路从启动到稳定工作留出足够的过渡时间然后才结束掉电保护状态。51单片机锁存器的功能开始正常工作51单片机锁存器的功能恢复正常工作后的第一件事情是现場恢复,即将被保护的数据送回原处,2.6.2 CHMOS的低功耗方式,80C51有两种低功耗方式,即待机方式和掉电保护方式 待机方式和掉电保护方式都是由专鼡寄存器PCON(电源控制寄存器)的有关寄存器来控制的。P

我要回帖

更多关于 51单片机锁存器的功能 的文章

 

随机推荐