第2章 80C51单片机的硬件结构_第1页
第2章 80C51单片机的硬件结构_第2页
第2章 80C51单片机的硬件结构_第3页
第2章 80C51单片机的硬件结构_第4页
第2章 80C51单片机的硬件结构_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

1、第2章 80C51单片机的硬件结构第2.1节 单片机的概念2.1.1 单片机基本概念一、单片机的概念计算机的组成:指由中央处理器CPU(Central Processing Unit)、只读存储器ROM(Read Only Memory)、随机存储器RAM(Random Access Memory)、中断系统(Interrupt System)、定时器/计数器(Timer/Counter)、I/O(Input/Output)接口。如下图所示:CPUROMRAMT/C时钟电路I/O1I/O2I/On总线图11 计算机硬件系统组成在计算机中,这些基本单元都是分别制作成独立功能的芯片,它们分别单独封

2、装,然后通过外部的总线把它们连接起来,构成一台完整的计算机。单片机的组成:将计算机的基本组成部分集成在一个芯片或一个完整封装的器件内。虽然单片机仅仅是一个芯片,但从组成功能上看,它已经具备了计算机系统的基本属性。因此,也把它称为微型单片计算机。单片机主要应用于控制领域,用于实现各种参数的测量和控制功能。为强调其控制属性,有的地方也把单片机称为微控制器(MCU, Micro Controller Unit);单片机在应用时,常常在控制系统中处于核心的地位,并融入其中,即嵌入式系统。为强调其嵌入式特性,有时也称它为嵌入式微控制器(EMCU,Embedded Micro Controller Uni

3、t)。单片机系统:单片机系统是在单片机芯片的基础上扩展其它电路构成的具有一定应用功能的计算机应用系统。也就是说,需要对单片机进行二次开发。二、通用单片机和专用单片机根据控制应用的需要,可以将单片机分成为通用型和专用型两种类型。通用型单片机是一种基本芯片,它的内部资源比较丰富,性能全面且适用性强,能覆盖多种应用需求。用户可以根据需要设计成各种不同应用的控制系统,即通用单片机有一个再设计的过程。(本书所介绍的均为通用型单片机!)专用单片机芯片是针对一种产品或一种控制应用而专门设计的,设计时已经对系统结构的最简化、软硬件资源利用的最优化、可靠性和成本的最佳化等方面都作了通盘的考虑和论证,所以专用单片

4、机具有十分明显的综合优势。例如电度表和IC卡读写器上的单片机等。三、单片机与单片机系统单片机通常是指芯片本身。单片机系统则是在单片机芯片的基础上扩展其它电路或芯片构成的具有一定应用功能的计算机系统。在单片机系统中,单片机处于核心地位,是构成单片机系统的硬件和软件基础。(通常我们所说的单片机系统都是为实现某一控制应用需要由用户设计的,是一个围绕单片机芯片而组建的计算机控制应用系统。学习单片机,既要学习单片机(单片机内部的组成和原理),也要学习单片机系统(单片机系统的组成方法)四、单片机应用系统与单片机开发系统单片机应用系统是为控制应用而设计的,该系统与控制对象结合在一起使用,是单片机开发应用的成

5、果。单片机开发系统是单片机应用系统开发调试的工具。主要有:逻辑分析仪:只能用于简单的单片机系统;微型计算机:用于复杂的单片机系统;在线仿真器:进行单片机应用系统的软硬件开发和EPROM写入。(这里要求大家了解:仿真器具有专一性,即不同型号的单片机芯片,需要相对应的仿真器,仿真器与编程器的区别,简单地说,仿真器是用来调试程序;而编程器是将调试好的程序写到ROM中去。也俗称烧程序。也有集成了仿真和编程功能于一体的仿真器。仿真器与微机的区别:仿真器没有复杂的操作系统,只有监控程序的开发环境,另外一般也不具有汇编程序。故仿真器基本上都是和微机配合在一起使用。)五、单片机的程序设计语言和软件(这里要问的

6、是:什么是单片机程序设计语言?主要指在单片机系统开发时,人们为实现预想的控制功能而使用的语言,它有机器语言、汇编语言、高级语言等。其中汇编语言、高级语言都是为方便高效编程而发展起来的语言。在实际的单片机系统中,它只能使用机器语言,因此程序员编写的程序需要由编译程序帮忙,将高级语言写的程序翻译成机器语言,这些也是仿真器完成的工作。而编译好的机器语言如何到单片机的存储器中去?依靠编程器。)机器语言是用二进制代码表示的单片机指令,用机器语言构成的程序称之为目标程序。汇编语言是用符号表示的指令,汇编语言是对机器语言的改进,是单片机最常用的程序设计语言。注意:这两种语言均与单片机硬件关系密切,这就要求程

7、序设计人员必须精通单片机的硬件系统和指令系统。高级语言:编译型语言有PL/M51、C-51、C、MBASIC-51等;解释型的有MBASIC和MBASIC-52等。软件:包括各类程序、数据以及相关的文档资料。2.1.2 单片机的发展一、单片机的历史及发展概况(略讲!一两句话简单提出即可。)根据单片机发展过程中各个阶段的特点,(根据单片机的位数和内部资源的多少来划分,内部资源主要是串行口、中断源数量、定时器计数器、存储器大小、相关接口A/D、D/A等)其发展历史大概可划分为以下四个阶段:第一阶段(19741976):单片机的初级阶段。因工艺限制,单片机采用双片的形式,而且功能简单。第二阶段(19

8、761978):低性能单片机阶段。以Intel公司制造的MCS-48系列单片机为代表第三阶段(1978现在):高性能单片机阶段。这个阶段推出的单片机普遍带有串行I/O口,多级中断处理系统,16位定时器计数器,片内ROM、RAM容量加大,且寻址范围可达64K字节,有的还内置有A/D转换器。这类单片机的代表是Intel公司的MCS-51系列,Motorola公司的6810和Zilog公司的Z8等。第四阶段(1982现在):8位单片机的巩固发展以及16位单片机、32位单片机推出阶段。此阶段的主要特征是一方面发展16位单片机、32位单片机及专用型单片机;另一方面不断完善高档8位单片机,改善其结构,以满

9、足不同用户的需要。16位单片机的典型产品如Intel公司生产的MCS-96系列单片机。而32位单片机除了具有更高的集成度外,其振荡频率已达20MHz或更高,这使32位单片机的数据处理速度比16位单片机快许多,性能同8位、16位单片机相比,具有更大的优越性。计算机厂家已投放市场的产品就有70多个系列,500多个品种。单片机的产品已占整个微机(包括一般的微处理器)产品的80%以上,其中8位单片机的产量又占整个单片机的产量的60%以上,因此可以看出,8位单片机在最近若干年里,在工业检测、控制应用方面将继续占有一定的市场份额。(引子:MCS51单片机和8051、8031、89C51等的关系?我们平常老

10、是讲8051,又有什么8031,现在又有89C51,它们之间究竟是什么关系?我们课本提到的80C51和它们又有什么关系呢?下面我们就来先来看看单片机的分类,从中寻找我们的答案! )二、单片机的种类: INTEL公司:8位单片机:MCS-48, MCS-51系列。 16位单片机:MCS-96, MCS-196系列 MOTOROLA公司:68系列,68HC系列。 ZILOG公司: Z8系列 ATMEL公司:89系列 TI公司:MSP系列每个系列都包含若干个子系列或若干型号。通常MCS-51即8051系列。ROM工艺改进后为80C51系列。1、MCS-51单片机系列MCS51为一个单片机系列产品,可

11、分为两个子系列(51子系列和52子系列)和4种类型(8031、8051、8751、8951),如表11所示。它们的差异在于内部资源配置不同(大小和ROM类型)。51子系列为基本型,而52子系列为增强型。2、80C51单片机系列80C51是在MCS-51基础上发展起来的,由于芯片型号众多,把它单独列为一个新的系列,代表当前的8位单片机。后来许多半导体公司以80C51为核心,增加一些功能,并兼容MCS51,命名也显得有些杂乱。新增的功能主要有:数模转换器A/D,可编程计数器阵列PCA,监视定时器WDT,高速I/O口,计数器的俘获/比较逻辑等。MCS-51单片机中包含了10个子系列,每个子系列中又有

12、多种型号。型号ROM/EPROMRAMT/CI/O串行口速度(MHz)8051子系列8031无128232UART1280514K ROM128232UART1287514K EPROM128232UART128751BH4K OTP128232UART128052子系列8032无256332UART1280528K ROM256332UART1287528K EPROM或OTP256332UART1280C51子系列80C31无128232UART12,1680C514K EPROM128232UART12,1687C514K EPROM或OTP128232UART12,16,208051子

13、系列的差别在于:片内是否具有ROM,以及ROM的制造工艺。ROM为掩模工艺型,EPROM为紫外线可擦除型,OTP为一次写入型。UART:通用的异步串行接口。80C51子系列和8051子系列相比,主要差别在于:采用CMOS工艺制造,因此,功耗低得多。)3、80C51和8051的比较:兼容性;芯片工艺;8051为HMOS工艺(高速度、高密度、但功耗大),而80C51为CHMOS工艺(高速度、高密度、低功耗);功能改进;80C51降低功耗、增加待机和调电保护,ROM类型改进和ROM容量增大。(到这里,我们对MCS51单片机和8051、8031、89C51等的关系应该比较清除了吧!MCS51是指由美国

14、INTEL公司(对了,就是大名鼎鼎的INTEL)生产的一系列单片机的总称,这一系列单片机包括了好些品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基础上进行功能的增、减、改变而来的,所以人们习惯于用8051来称呼MCS51系列单片机,而8031是前些年在我国最流行的单片机,所以很多场合会看到8031的名称。INTEL公司将MCS51的核心技术授权给了很多其它公司,所以有很多公司在做以8051为核心的单片机,当然,功能或多或少有些改变,以满足不同的需求,其中89C51就是这几年在我国非常流行的单片机,它是由美国

15、ATMEL公司开发生产的。)三、单片机的特点及应用领域(一般了解)1、单片机的特点: 结构简单,体积小; 性能价格比高(即性价比高); 可靠性高,功耗低;(集成封装,受外界干扰小,功耗低,发热小,寿命长) 应用范围十分广泛。2、单片机的应用范围:构成智能化产品,实现仪器设备的智能化,自动化。智能化仪器仪表。(用单片机实现数据采集、处理,具有自动化程度高,功耗小,抗干扰能力强)家用电器。(实现家用电器的智能化和自动化)在计算机外设中的应用。(打印机、键盘,软盘驱动器,光驱等外设均采用单片机进行控制)在工业测控领域中的应用数据采集与处理;(工业上由单片机来构建的测量控制系统,可以实现工业现场的数据

16、采集与处理的智能化,多功能显示,宽量程的自动切换,取代传统的模拟量显示和手工切换,大大提高测量精度)工业过程控制;(实现生产过程的控制,如数控机床,工业机器人,生产流水线等,也可以用单片机作为它们的前端控制器使用。)。2.2、80C51单片机内部逻辑结构(问题:计算机5大基本组成部分指:CPU, RAM,ROM,I/O,中断系统?)2.2.1 80C51单片机内部逻辑机构图2-1 80C51芯片逻辑结构图中央处理单元CPU CPU是单片机的核心,由运算器和控制器组成,完成运算和控制操作。(对照图2.1, CPU主要由运算部件(即运算器,由ALU, ACC, B, TEMP1, TEMP2,PS

17、W组成,)和控制部件(PC, PC+1寄存器,指令寄存器IP,指令译码器ID,定时控制电路和振荡电路)(PC:用于外部取指令时所需要的地址,从ROM中取出指令代码,送到指令寄存器,再经过指令译码器,变成单片机内部的时序控制信号,这些信号对该条指令应该完成的操作的内部相应部件起作用,以完成对应的操作。执行程序就是不断重复这个过程)内部数据寄存器即图中的RAM,内部数据寄存器包括了128字节8位的RAM和RAM地址寄存器。作用是存放运算的中间结果以及数据的暂存。地址为00H7FH。(80C51内部实际有256个RAM单元,但高128个单元是系统自己定义的专用寄存器,用户不能“随便”使用它们。因此常

18、将前128个单元称为“内部RAM”)内部程序寄存器80C51内部共有4KB掩模ROM,程序地址寄存器。8051或80C51不同型号的单片机,它们的ROM类型或者内部是否有ROM存在差异。程序的地址总是从0000H开始。程序寄存器用于存放程序代码和表格数据。定时/计数器80C51片内有两个16位的定时器/计数器,以实现定时功能和计数功能,并可以根据定时或计数的结果对单片机进行控制。并行I/O口MCS-51共有四个8位并行I/O口,P0P3,以实现单片机与外界交换信息。(对照图说明其位置。I/O口是单片机与外界进行信息交互的通道)串行口MCS-51具有一个全双工的串行口,以实现单片机与其它的数据设

19、备如上位计算机之间的数据传送。中断系统中断系统是为了使单片机具有实时控制能力而设计的内部电路。(5级中断,INT0,INT1,T0, T1,串行口中断。它们是通过P3并行口的第二功能实现输入输出的。)时钟电路外接晶体振荡器,产生振荡脉冲,由定时电路产生时钟脉冲系列,它作为单片机的基本工作拍节,单片机是一个按照基本时序拍节来进行工作的器件。外接的晶体振荡器频率要求一般为1.212MHz。位处理器(以PSW中的进位标志位C作为它的累加位,可以进行数据位的置位,复位,取反,判是否等于0转移,是否等于1转移,清零等,也可以与单片机内部的可寻址位之间进行数据的传递,以及逻辑运算等等。位操作也是通过运算器

20、来实现的,图2.1没有画出。)总线(总线在图中以空心线头表示的线段。系统的地址信号,数据信号,控制信号都是通过总线进行传送的,这样的总线结构减少了单片机的外部连线和引脚,提高单片机的集成度和可靠性,以上即是单片机的基本结构组成。)2.2.2、MCS-51单片机封装与信号引脚80C51有两种封装方式:双列直插式DIP,方形扁平式封装QFP。双列直插式封装芯片的引脚排列如图2.2所示。(有关器件的封装见:器件常见封装.ppt)图2.2 80C51单片机芯片引脚及芯片逻辑符号1.信号引脚介绍输入输出口线 P0.0P0.7 P0口8位双向口线 P1.0P1.7 P1口8位双向口线P2.0P2.7 P2

21、口8位双向口线P3.0P3.7 P3口8位双向口线ALE 地址锁存控制信号功能:a)在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送。如图所示。b)ALE是以六分之一晶振频率的固定频率输出的正脉冲,可作为外部时钟或外部定时脉冲使用。 外部程序存储器读选通信号(问:引脚符号上面的横杠“”表示什么意义?低电平或负跳变)在读外部ROM时/PSEN有效(低电平),以实观外部ROM单元的读操作。 访问程序存储器控制信号当信号为低电平时,对ROM的读操作限定在外部程序存储器;当信号为高电平时,对ROM的读操作是从内部程序存储器开始,并可延续至外部程序存

22、储器。RST 复位信号当输入的复位信号延续2个机器周期以上高电平时即为有效,用以完成单片机的复位操作。(复位的意义是让PC恢复到0000h,从程序开始处重新开始运行。相关寄存器赋初值,如SP=07H,P1P3为FFH,其它寄存器均为00h)XTAL1和XTAL2外接晶体引线端当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。VSS地线Vcc5V电源2、信号引脚的第二功能(某些引脚定义了两个功能,即引脚复用!) “复用”即给一些信号引脚赋予双重功能。第二功能信号定义主要集中在P3口线中,另外再加上几个其它信号线。1、常见的第二功能信号P3口线的

23、第二功能P3口8条口线都定义有第二功能,如表所示。EPROM存储器程序固化所需要的信号编程脉冲:30脚(ALE/PROG)编程电压(25V):31脚(/Vpp)备用电源引入备用电源是通过9脚(RST/VPD)引入的。当电源发生故障,电压降低到下限值时,备用电源经此端向内部RAM提供电压,以保护内部RAM中的信息不丢失。说明:(问:为什么要“复用”?解决功能多与引脚数有限之间的矛盾,)a)第一功能信号与第二功能信号是单片机在不同工作方式下的信号,因此不会发生使用上的矛盾。b)P3口线先按需要优先选用它的第二功能,剩下不用的才作为I/O口线使用。(引脚表现的是单片机的外特性或硬件特性,用户应在了解

24、其特性的基础上来使用它们,组建自己的单片机应用系统,大家至少要认识它们,最好熟记于心。)2.3、MCS-51单片机的内部存储器(内部存储器包括内部的数据存储器和内部程序存储器,由于MCS-51系列单片机中,不同型号的单片机内部RAM和ROM的存储容量以及型式是不一样的,为便于讲解,我们以80C51为例,来作介绍。)1内部数据存储器低128单元(共256个单元,按照功能不同,通常划分为两个部分,)低128单元(单元地址00H7FH)高128单元(单元地址80HFFH)用户RAM区位寻址区四组通用寄存器三组通用寄存器二组通用寄存器一组通用寄存器专用寄存器区00H08H10H18H20H30H7FH

25、FFH80H低128单元高128单元80C51内部数据存储器配置图(低128单元是提供给用户使用的数据存储器单元,我们称之为内部RAM,)寄存器区:内部RAM的前32个单元作为寄存器使用,共分为四组,每组含8个寄存器,在组中按R7R0编号。地址:00H1FH单元。(任意时刻,CPU只能对其中一组寄存器进行操作,正在使用的那组寄存器称当前寄存器组,)RS0、RS1决定当前工作寄存器组。通用寄存器有两种使用方法:MOV A, R0与MOV A, 00H位寻址区:片内20H2FH(既可字节操作,又可位操作)位地址:00H7FH。(是位处理器的数据存储空间)例如:清除位地址00H单元:CLR 00H

26、对字节单元清零不能使用CLR指令,只能采用: MOV 00H, #00H 或 ANL 00H, #00H用户RAM区:供用户使用的一般RAM区,其单元地址为30H7FH。对于用户RAM区,只能以存储单元(字节地址)的形式来使用,在一般应用中常把堆栈开辟在此区中。2内部数据存储器高128单元(我们一般称它们为专用寄存器区或特殊功能寄存器区) 专用寄存器简介(用于存放相应功能部件的控制命令、状态或者数据,因此称专用寄存器区。共22个,有21个可寻址,对其中的5个进行介绍) 程序计数器(PC)(16位寄存器,寻址范围达64K字节,自动加1功能,实现顺序执行功能,没有地址,不可寻址,用户没有办法对它读

27、写,但在使用调用、转移、返回等指令时,这些指令能够自动改变PC中的内容,从而改变程序执行的顺序。例如:执行 LCALL Addr16)PCPCPC158PC70SPSP+1SP+1(PC)+3 入栈LCALL Addr16PC中的数据为将要执行的指令地址。累加器A(ACC)累加器为8位寄存器,地址为:E0H。作用: 用于存放操作数,是ALU输入的一个重要来源; 是ALU运算结果的暂存单元,用于存放运算的中间结果。 是数据传送的中转站,单片机中的大部分数据传送都是通过累加器进行。 在变址寻址方式中把累加器作为变址寄存器使用。A:代表累加器的符号,而ACC代表累加器使用的寄存器单元的地址。 B寄存

28、器8位寄存器,主要用于乘除运算。(当然也可以作一般寄存器使用)乘法运算:乘积的高8位存于B中,低8位存于A中。除法运算:B中为除数,A中为商值。例如:MUL AB; AB(BA),B中放高8位数据,A中放低8位数据。DIV AB; AB(A)商值,(B)余数。程序状态字(PSW) 8位寄存器,用于寄存指令执行的状态信息。(有的是根据指令执行的结果,由硬件来自动设置的;有的是通过指令来对它设置的。PSW的位状态由专门的指令进行测试,也可由指令进行读出,一些条件转移指令就将根据PSW中有关位的状态以进行判别,以决定程序是否转移)程序状态字的定义如下:CY(PSW.7):进位标志位,位累加器C。*

29、AC(PSW.6): 辅助进位标志位,(低4位向高位进位或借位时,硬件自动对该位置1)* F0(PSW.5):用户标志位,也称软件标志位。(用户定义的标志位,用户根据需要,由软件指令对它置位或复位,然后在程序的其它段中,对这个标志位进行检测,决定程序是否转移)* RS1和RS0(PSW.4和PSW.3):工作寄存器组选择位。*OV(PSW.2):溢出标志位。符号数的加减:OV=1表示加减运算结果超出了A所表达的符号数范围:128(00H)127(FFH)。乘法运算:OV=1表示乘积超过255,即乘积分别在B与A中;OV=0表示乘积为8位,只放在A中。除法运算:OV=1表示除数为0,除法不能进行

30、;OV=0表示除数不为0,除法可正常进行。*P(PSW.0):奇偶标志位。(A)中“1”的个数为偶数,P0;(A)中“1”的个数为奇数,P1;数据指针(DPTR)16位寄存器,在访问外部64K数据存储器时作地址指针使用。DPTR为16位,可分为两个8位寄存器:DPH DPTR高位字节、8位;DPL DPTR低位字节、8位。专用寄存器的字节寻址(见课本p21,表23,这21个寄存器是不连续地分布在高128个单元中,因此对于其它没有定义的单元,用户是不能使用的,如果访问它们得到的将是不确定的状态)专用寄存器的位寻址(在表23中打“*”号的寄存器表示可以位寻址,使用方法和内部RAM中的位寻址区完全相

31、同。)3、MCS-51的堆栈操作堆栈是一种数据结构。数据写入堆栈称为入栈(PUSH)。数据从堆栈中读出称之出栈(POP)。数据操作规则:“后进先出”LIFO。即先入栈的数据由于存放在栈的底部,因此后出栈;而后入栈的数据存放在栈的顶部,因此先出栈。、堆栈的功用堆栈主要是为子程序调用和中断操作而设立的。其具体功能有两个:保护断点和保护现场。(问:断点和现场有什么区别?端点是指程序运动到此的PC值,现场则是程序运动到此,相关寄存器单元的内容。)、堆栈的开辟堆栈只能开辟在芯片的内部数据存储器中,即所谓的内堆栈形式。、堆栈指示器(堆栈指针)堆栈指示器SP(Stack Pointer)的内容是堆栈栈顶的存

32、储单元地址。SP是一个8位寄存器。说明:系统复位后,SP的内容为07H,但由于堆栈最好在内部RAM的30H7FH单元(低128单元的位寻址区后)中开辟,所以在程序设计时应注意把SP值初始化为30H以后。、堆栈使用方式堆栈的使用有两种方式。自动方式:即在调用子程序或中断时,返回地址(断点)自动进栈。程序返回时,断点再自动弹回PC。指令方式:即使用专用的堆栈操作指令,进行进出栈操作。其进栈指令为PUSH,出栈指令为POP。例如保护现场就是指令方式进行操作。堆栈随数据压入时,堆栈指针的变化情况可以分为:向下生长型和向上生长型。MCS-51为向上生长型。4内部程序存储区片内ROM: 4K 0000H0

33、FFFH,(注意它们中一些特殊单元的使用,它们包括以下几个部分)0000H0002H 系统的上电复位程序入口地址0003H000AH 外部中断0的中断地址区000BH0012H定时器/计数器0的中断地址区0013H001AH外部中断1的中断地址区001BH0022H定时器/计数器1的中断地址区0023H002AH串行中断地址区(也就是说,如果有这些中断服务程序的话,它的首地址要放在相应的中断地址区里来使用。)5MCS-51单片机系统的存储器结构特点把数据存储器和程序存储器分开;存储器有内外之分。MCS-51单片机由芯片内存储器和芯片外扩展存储器构成了单片机应用系统的整个存储器系统。(图2.6中

34、,8051内部有4k存储区,当,表示从内部开始寻址,一直达到片外的64K范围,如果内部不具有程序存储器或不使用内部程序存储器,。存储器的正确使用,以及片外存储区的扩展是构成单片机系统的一个重要内容,在以后的章节中还要加以介绍)。2.3 MCS - 51并行I/O端口(前面我们介绍了MCS-51单片机内部的CPU结构,存储器的结构和地址分配等内容,这节课我们来对单片机的并行输入输出口进行介绍。)单片机端口是一个集数据输入缓冲、数据输出驱动及锁存等多项功能于一体的I/O电路。MCS-51单片机有四个8位的并行双向I/O口,分别记为P0、P1、P2、P3(共占用32根硬件线,其中的每一根引脚线都能独

35、立地作为输入或输出线使用。这些端口设计巧妙,认识这些端口的设计,不仅可以合理地使用它们,也可以参考它们设计一些外围电路。这4个并行口有许多相同之处,各端口因使用要求不同,也有差异。)一、P0口P0口的字节地址为80H,位地址为80H87H。P0口:是漏极开路的准双向口。低8位地址/数据总线口。1P0口的结构(图2.7为P0口某一路的电路结构图,由1个输出锁存器,2个输入缓冲器(注意它们分别带有控制信号线),多路开关(可以让p0口既可作通用I/O口,又可作地址/数据线使用),反相器和与门(两者构成它的控制部分),输出是由两个场效应管构成的输出驱动电路。)OC门,又称集电极开路门,即集电极悬空的门

36、电路,这种门电路在使用时必须外接上拉电阻。OC门2作为通用I/O口使用(此时,控制线C为“0”,MUX与锁存器的端相连,作通用I/O口使用,它有2个功能,首先看它作为输出口时候的使用情况,从内部总线发“1”(或“0”)时,在写入控制信号作用下,可传递到Q和端,到T2管的栅极为“0”(或“1”),T2管截止(或导通),T1也处于截止(因控制线为“0”),对T2管漏极开路,从而不能得到“1”,要想外部引脚有此信号(即作为输出口),需要在外部接上拉电阻。)(下面再来看,作为输入口使用的情况。作为输入口使用时,我们希望引脚上面的0或1电平能够通过下面的通道进入到内部总线,但单片机作了一个设计,即要想外

37、部引脚的电平能够进入,需要先作一个置1的操作,使得T2管截止,为什么要作这个工作呢?我们来分析一下,假设T2此时处于导通状态,则引脚被钳位为低电平0上,无论外面输入的是什么电平,都将是0,因此要先让T2截止,需要从内部总线送一个“1”信号,看图,T2截止。把这样一种操作,所对应的P口,称为准双向口。)3作为地址/数据总线使用(此时控制线发出“1”信号(作用有2,一个打开与门,另一个将MUX打向反相器的输出端),此时的口线就作为地址和数据总线来使用了。送出“0”或“1”状态,假设为“0”,反相器的输出端为“1”,T2导通,T1截止,输出为“0”;当为“1”信号时,反相器的输出端为“0”,T2截止

38、,与门打开,T1导通,P0.X上拉为高电平。所以,作为地址和数据线使用的时候,这两个管子具有推挽的作用,增强其驱动能力。以上为P口两种使用状态时的工作原理。)二、P1口:P1口的字节地址为90H,位地址为90H97H。P1口:带有上拉电阻的8位准双向I/O口。P1口作为输出口使用时,已能对外提供推拉电流负载,外电路无需再接上拉电阻。P1口作为输入口使用时,应先向其锁存器写入“1”,使输出驱动电路的FET截止。(由电路可知,P1口也是一个准双向口)三、P2口P2口的字节地址为A0H,位地址为A0HA7H。P2口:内部带有上拉电阻的8位准双向I/O口;在访问外部存储器时是高8位地址线输出口。(因为

39、有两个功能:IO和地址总线,所以也接一个多路转接开关MUX,它的工作原理和P0口相似,相对简单一些,没有数据总线的关系。)四、P3口P3口的字节地址为B0H,位地址为B0HB7H。P3口:内部带有上拉电阻的8位准双向I/O口,此外,它还具有第二功能。口线第二功能信号名称I/O特性P3.0RXD串行数据接收输入P3.1TXD串行数据发送输出P3.2外部中断0申请输入P3.3外部中断1申请输入P3.4T0定时器/计数器0计数输入输入P3.5T1定时器/计数器1计数输入输入P3.6外部RAM写选通输出P3.7外部RAM读选通输出(下面看P3口的电路特点)(作为特定的口线,某个时刻仅选择一个功能,图中

40、将输入输出同时表示在图中,是为了说明问题的方便。首先作为输入输出通道,第二输出功能线为1,当总线送1,锁存器Q端为1,经与非门后为0,场效应管截止,P3.X为高;当总线送0,锁存器Q端为0,经与非门后为1,场效应管导通,P3.X为低;作为输入口,和前面介绍的口相同,需要先置1,因此也为准双向口。)(作为第二功能,譬如作第二输出功能时,单片机通过内部总线,使Q端保持为1,与非门打开,如果此时输出为0,栅极为1,FET导通,P3.x为低,输出等于0。如果此时输出为1,栅极为0,FET截止,P3.x为高,输出等于1。)(作为第二输入功能时,增加了一个缓冲器,P3.x信号如果是第二功能输入信号时,该信

41、号通过该缓冲器,由中间的引线输入到某个寄存器中去,不会通过读引脚的三态门而进入内部总线。如果P3.x信号不是第二功能输入信号,而是要进入内部总线的信号时,读引脚信号有效,三态门打开,但会不会又进入到中间引线相连的某个寄存器中去呢?不会的,单片机设计时是作了考虑的,不会让该信号进入到第二功能的特殊寄存器中去的。)(这四个电路的共有特性,就是上面这个缓冲器的作用,单片机经常需要对它送出的信号进行读回和判别。这时读回的是锁存器输出端信号,而非已经送到外部引脚的信号。)(把握准双向、多功能的特点)2.4 时钟电路与时序 (单片机内部是一个复杂的时序电路,要学习好它,也需要对时序有一定的了解,这一节课我

42、们向大家介绍单片机的时钟电路、以及它的时序,同时也讲解一下单片机的复位电路的设计。)MCS-51单片机时钟电路与时序,时钟电路。时钟信号的产生:(图2.11中,有高增益的放大器,两端接XTAL1和XTAL2,其中XTAL1为信号输入引脚,XTAL2为信号的输出引脚,使用时在此两个引脚之间跨接晶体振荡器,同时对地分别接上一个2040pF的电容,这个自激振荡电路就送出一个振荡时钟,此振荡时钟并不能为单片机使用,如果要使用它,还必须要单片机内部的时钟电路对此振荡脉冲的频率进一步的分频,我们来看这个电路:)S1P1 P2S2P1 P2P1 P2 (在自激振荡器的后面,加一些分频电路,通过这些分频电路,输出的脉冲信号就是单片机所需要的一些时钟信号。振荡电路首先经过2分频电路后,能够得到2个状态时钟,分别定义为P1和P2,它们与振荡脉冲的关系如下:)(振荡脉冲的

温馨提示

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

评论

0/150

提交评论