《单片机课件第2章》由会员分享,可在线阅读,更多相关《单片机课件第2章(111页珍藏版)》请在金锄头文库上搜索。
1、第2章 MCS-51系列单片机的结构及原理 2.1 MCS-51单片机内部结构 2.2 单片机的外部结构 2.3 单片机的工作方式 习题与思考题 第2章 MCS-51系列单片机的结构及原理 第2章 MCS-51系列单片机的结构及原理 2.1 MCS-51单片机内部结构2.1.1 MCS-51单片机组成MCS-51单片机内部包含下列几个部件: 一个8位CPU; 一个片内振荡器及时钟电路; 4 KB ROM程序存储器; 128 B RAM数据存储器; 两个16位定时器/计数器;第2章 MCS-51系列单片机的结构及原理 可寻址64 KB外部数据存储器和64 KB外部程序存储器控制电路; 32条可编
2、程的I/O线(四个8位并行I/O端口); 一个可编程全双工串行口; 具有五个中断源、两个优先级嵌套中断结构。8051单片机框图如图2-1所示。各功能部件由内部总线连接在一起。图中4 KB的ROM存储器部分用EPROM替换就成为8751的结构图;去掉ROM部分就成为8031的结构图。第2章 MCS-51系列单片机的结构及原理 图2-1 8051单片机框图第2章 MCS-51系列单片机的结构及原理 1CPUCPU是单片机的核心部件,它由运算器和控制器等部件组成。1) 运算器运算器的功能是进行算术运算和逻辑运算,它可以对半字节 (4位)、单字节等数据进行操作。例如,运算器能完成加、减、乘、除、加1、
3、减1、BCD码十进制调整、比较等算术运算和与、或、异或、求补、循环等逻辑操作,操作结果的状态信息送至状态寄存器。8051运算器还包含有一个布尔处理器,用来处理位操作。它是以进位标志位C为累加器的,可执行置位、复位、取反、等于1转移、等于0转移、等于1转移且清零以及进位标志位与其他可寻址的位之间进行数据传送等位操作,也能在进位标志位与其他可位寻址的位之间进行逻辑与、或操作。第2章 MCS-51系列单片机的结构及原理 2) 程序计数器PC程序计数器PC用来存放即将要执行指令的地址,共16位,可对64 KB程序存储器直接寻址。执行指令时,PC内容的低8位经P0口输出,高8位经P2口输出。3) 控制部
4、件CPU执行指令时,将通过程序计数器PC在程序存储器中读取的指令代码存放到指令寄存器中,经译码后由定时与控制电路发出相应的控制信号,完成指令功能。 第2章 MCS-51系列单片机的结构及原理 2振荡与时钟电路8051片内设有一个由反相放大器所构成的振荡电路,XTAL1和XTAL2分别为振荡电路的输入端和输出端,时钟可以由内部方式产生或外部方式产生。内部方式时钟电路如图2-2所示。在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就产生自激振荡。定时元件通常采用石英晶体和电容组成的 并联谐振回路。晶振可以在1.212 MHz之间选择,电容值在530 pF之间选择,电容的大小可起频率微调作用
5、。振荡频率主要由石英晶振的频率确定,目前,51系列单片机的晶振频率fosc范围为1.212 MHz,其典型值为6 MHz、11.0592 MHz、12 MHz等。第2章 MCS-51系列单片机的结构及原理 图2-2 时钟振荡电路第2章 MCS-51系列单片机的结构及原理 外部方式的时钟很少用,若要用时,只要将XTAL1接地,XTAL2接外部振荡器即可。对外部振荡信号无特殊要求,只要保证脉冲宽度,一般采用频率低于12 MHz的方波信号。时钟发生器把振荡频率2分频,产生一个两相时钟信号P1和P2供单片机使用。P1在每一个状态S的前半部分有效,P2在每个状态S的后半部分有效。第2章 MCS-51系列
6、单片机的结构及原理 3存储器MCS-51单片机的程序存储器和数据存储器空间是互相独立的,物理结构也不同。程序存储器为只读存储器(ROM),数据存储器为随机存取存储器(RAM)。数据存储器又分为内部RAM和外部RAM,单片机的外部数据存储器编址方式采用与I/O端口统一编址的方式。有关存储器的内容将在下一节讲述。 第2章 MCS-51系列单片机的结构及原理 4并行I/O端口MCS-51单片机设有4个8位双向I/O端口(P0、P1、P2、P3),每一条I/O线都能独立地用作输入或输出。P0口为三态双向口,能带8个LSTTL电路。P1、P2、P3口为准双向口(在用作输入线时,口锁存器必须先写入“1”,
7、故称为准双向口),负载能力为4个LSTTL电路。第2章 MCS-51系列单片机的结构及原理 1) P0端口双向口图2-3是P0口(P0.0P0.7,3239脚)其中一位的结构图,包括1个输出锁存器、2个三态缓冲器、1个输出驱动电路和1个输出控制端。输出驱动电路由一对场效应管组成,其工作状态 受输出端的控制,输出控制端由1个与门、1个反相器和1个转换开关MUX组成。对8051/8751来讲,P0口既可作为输入/输出口,又可作为地址/数据总线使用。第2章 MCS-51系列单片机的结构及原理 图2-3 P0口的位结构图第2章 MCS-51系列单片机的结构及原理 (1) P0口作地址/数据复用总线使用
8、。若从P0口输出地址或数据信息,此时控制端应为高电平,转换开关MUX将反相器输出端与输出级场效应管V2接通,同时与门开锁,内部总线上的地址或数据信号通过与门去驱动V1管,又通过反相器去驱动V2管,这时内部总线上的地址或数据信号就传送到P0口的引脚上。例如,若地址/数据为0时,该信号一方面通过与门使V1截止,另一方面,在控制信号作用下,该信号经反相器使V2导通,从而在引脚上输出0信号;反之,若地址/数据为1时,将会使V1导通,V2截止,引脚输出1信号。工作时低8位地址与数据线分时使用P0口。低8位地址由ALE信号的负跳变使它锁存到外部地址锁存器中,而高8位地址由P2口输出(P0口和P2口的地址/
9、数据总线功能详见第8、9章)。第2章 MCS-51系列单片机的结构及原理 (2) P0口作通用I/O端口使用。对于有内部ROM的单片机,P0口也可以作通用I/O端口,此时控制端为低电平,转换开关把输出级与锁存器的Q端接通,同时因与门输出为低电平,输出级V1管处于截止状态,输出级为漏极开路电路,在驱动NMOS电路时应外接上拉电阻;作输入口用时,应先将锁存器写“1”,这时输出级两个场效应管均截止,可作高阻抗输入,通过三态输入缓冲器读取引脚信号,从而完成输入操作。第2章 MCS-51系列单片机的结构及原理 2) P1口准双向口(1) P1口(P1.0P1.7,18脚)作通用I/O端口使用。P1口是一
10、个有内部上拉电阻的准双向口,位结构如图2-4所示,P1口的每一位口线能独立用作输入线或输出线。作输出时,如将“0”写入锁存器,场效应管导通,输出线为低电平,即输出为“0”。因此在作输入时,必须先将“1”写入锁存器,使场效应管截止。该口线由内部上拉电阻提拉成高电平,同时也 能被外部输入源拉成低电平,即当外部输入“1”时该口线为高电平,而输入“0”时,该口线为低电平。P1口作输入时,可被任何TTL电路和MOS电路驱动,由于具有内部上拉电阻,也可以直接被集电极开路和漏极开路电路驱动,不必外加上拉电阻 。P1口可驱动4个LSTTL门电路。第2章 MCS-51系列单片机的结构及原理 图2-4 P1口的位
11、结构图第2章 MCS-51系列单片机的结构及原理 (2) P1口其他功能。P1口在EPROM编程和验证程序时输入低8位地址;在8032/8052系列中P1.0和P1.1是多功能的,P1.0可作定时器/计数器2的外部计数触发输入端T2,P1.1可作定时器/计数器2的外部控制输入端T2EX。3) P2口准双向口P2口(P2.0P2.7,2128脚)的位结构如图2-5所示,引脚上拉电阻同P1口。在结构上,P2口比P1口多一个输出控制部分。第2章 MCS-51系列单片机的结构及原理 图2-5 P2口的位结构图第2章 MCS-51系列单片机的结构及原理 (1) P2口作通用I/O端口使用。当P2口作通用
12、I/O端口使用时,是一个准双向口,此时转换开关MUX倒向左边,输出级与锁存器接通,引脚可接I/O设备,其输入/输出操作与P1口完全相同。第2章 MCS-51系列单片机的结构及原理 (2) P2口作地址总线口使用。当系统中接有外部存储器时,P2口用于输出高8位地址A15A8。这时在CPU的控制下,转换开关MUX倒向右边,接通内部地址总线。P2口的口线状态取决于片内输出的地址信息,这些地址信息来源于PCH、DPH等。在外接程序存储器的系统中,由于访问外部存储器的操作连续不断,P2口不断送出地址高8位。例如,在8031构成的系统中,P2口一般只作地址总线口使用,不再作I/O端口直接连外部设备。第2章
13、 MCS-51系列单片机的结构及原理 在不接外部程序存储器而接有外部数据存储器的系统中, 情况有所不同。若外接数据存储器容量为256 B,则可使用“MOVX A,Ri”类指令由P0口送出8位地址,P2口上引脚的信号在整个访问外部数据存储器期间也不会改变,故P2口仍可作通用I/O端口使用。若外接存储器容量较大,则需用“MOVX A,DPTR”类指令,由P0口和P2口送出16位地址,在读写周期内,P2口引脚上将保持地址信息。P2口可驱动4个LSTTL门电路。第2章 MCS-51系列单片机的结构及原理 4) P3口双功能口P3口(P3.0P3.7,1017脚)是一个多用途的端口,也是一个准双向口,作
14、为第一功能使用时,其功能同P1口。P3口的位结构如图2-6所示。第2章 MCS-51系列单片机的结构及原理 图2-6 P3口的位结构图第2章 MCS-51系列单片机的结构及原理 当作第二功能使用时,每一位功能定义如表2-1所示。P3口的第二功能实际上就是系统具有控制功能的控制线。此时相 应的口线锁存器必须为“1”状态,与非门的输出由第二功能输出线的状态确定,从而P3口线的状态取决于第二功能输出线的电平。在P3口的引脚信号输入通道中有2个三态缓冲器,第二功能的输入信号取自第一个缓冲器的输出端,第二个缓冲器仍 是第一功能的读引脚信号缓冲器。P3口可驱动4个LSTTL门电路。第2章 MCS-51系列
15、单片机的结构及原理 第2章 MCS-51系列单片机的结构及原理 每个I/O端口内部都有一个8位数据输出锁存器和一个8位数据输入缓冲器,内部的4个数据输出锁存器与端口号P0、P1、P2和P3同名,皆为特殊功能寄存器。因此,CPU数据从并行I/O端口输出时可以得到锁存,数据输入时可以得到缓冲。第2章 MCS-51系列单片机的结构及原理 4个并行I/O端口作为通用I/O口使用时,共有写端口、读端口和读引脚三种操作方式。写端口实际上就是输出数据,是将 累加器A或其他寄存器中的数据传送到端口锁存器中,然后经输出锁存器自动从端口引脚线上输出。读端口不是真正地从外 部输入数据,而是将端口锁存器中的输出数据读
16、到CPU的累加器。读引脚才是真正的输入外部数据的操作,是从端口引脚线上读入外部的输入数据。端口的上述三种操作实际上是通过指令或程序来实现的,这些将在以后的章节中详细介绍。第2章 MCS-51系列单片机的结构及原理 5串行I/O端口8051有一个全双工的可编程串行I/O端口。这个串行I/O端口既可以在程序控制下将CPU的8位并行数据变成串行数据一位一位地从发送数据线TXD发送出去,也可以把串行接收到的数据变成8位并行数据送给CPU,而且这种串行发送和串行接收可以单独进行或者同时进行。第2章 MCS-51系列单片机的结构及原理 8051串行发送和串行接收利用了P3口的第二功能,即利用P3.1引脚作为串行数据的发送线TXD,P3.0引脚作为串行数据的接收线RXD,如表2-1所示。串行I/O口的电路结构还包括串行口控制器SCON、电源及波特率选择寄存器PCON和串行数据缓冲器SBUF等,它们都属于特殊功能