【精品】MCS-51单片机的内部结构精品ppt课件.ppt

上传人:1595****071 文档编号:71304117 上传时间:2023-02-02 格式:PPT 页数:75 大小:9.04MB
返回 下载 相关 举报
【精品】MCS-51单片机的内部结构精品ppt课件.ppt_第1页
第1页 / 共75页
【精品】MCS-51单片机的内部结构精品ppt课件.ppt_第2页
第2页 / 共75页
点击查看更多>>
资源描述

《【精品】MCS-51单片机的内部结构精品ppt课件.ppt》由会员分享,可在线阅读,更多相关《【精品】MCS-51单片机的内部结构精品ppt课件.ppt(75页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、MCS-51单片机的内部结构2.1 MCS-512.1 MCS-51单片机逻辑结构与引脚功能单片机逻辑结构与引脚功能一、一、MCS-51MCS-51系列单片机的基本组成系列单片机的基本组成80C5180C51单片机包括:单片机包括:n面向控制的面向控制的8 8位位CPUCPU和指令。和指令。n4K4K字节的程序存储器(字节的程序存储器(FlashFlash)。)。n128128字节的数据存储器字节的数据存储器,21,21个特殊功能寄存器。个特殊功能寄存器。n可编程并行可编程并行I/OI/O口口PO-P3PO-P3,有,有3232位双向输入位双向输入/输出线。输出线。n一个全双工串行口。一个全双

2、工串行口。n两个两个1616位定时器位定时器/计数器。计数器。n五个中断源,两个中断优先级的中断结构。五个中断源,两个中断优先级的中断结构。n一个片内时钟振荡器和时钟电路。一个片内时钟振荡器和时钟电路。n可寻址可寻址64K64K字节的程序存储器和字节的程序存储器和64K64K字节的外部数据存储器。字节的外部数据存储器。二、二、MCS-51MCS-51系列单片机的内部结构系列单片机的内部结构 MCS-51MCS-51系列单片机的内部结构框图系列单片机的内部结构框图1、CPU CPUCPU由运算器、控制器及一些特殊功能寄存器组组成、由运算器、控制器及一些特殊功能寄存器组组成、其结构形式与工作原理和

3、一般的微处理器相同。可执行下其结构形式与工作原理和一般的微处理器相同。可执行下述算术述算术/逻辑运算。逻辑运算。1.11.1、运算器、运算器 算术与逻辑运算部件算术与逻辑运算部件ALUALU ALU ALU由加法器和其他逻辑电路等组成。它的功能是,由加法器和其他逻辑电路等组成。它的功能是,完成各种算术运算和逻辑运算,它可以进行加、减、乘、完成各种算术运算和逻辑运算,它可以进行加、减、乘、除、加除、加1 1、减、减1 1、比较等算术运算和与、或、非、异或、取、比较等算术运算和与、或、非、异或、取反、取补等逻辑运算。以及循环移位、位操作等。反、取补等逻辑运算。以及循环移位、位操作等。n程序状态字寄

4、存器程序状态字寄存器PSWPSW 运算操作过程中的一些状态信息存放在程序状态字寄存器运算操作过程中的一些状态信息存放在程序状态字寄存器PSWPSW中,中,PSWPSW寄存器的字节地址是寄存器的字节地址是DOHDOH,PSWPSW各位的符号与定义如下:各位的符号与定义如下:C C进位标志(进位标志(CYCY),有进位或借位时,),有进位或借位时,C=1C=1,否则,否则C=0C=0;Cy=1 Cy=1提示无符提示无符号数运算超出范围。号数运算超出范围。在进行位操作时,在进行位操作时,CYCY作为位累加器作为位累加器C C,也称为布尔累加器。此外,也称为布尔累加器。此外,循环移位指令和比较转移指令

5、也会影响循环移位指令和比较转移指令也会影响CYCY标志。标志。AC AC辅助进位标志,当累加器中辅助进位标志,当累加器中A3A3向向A4A4有进位或错位时有进位或错位时AC=1AC=1,否则,否则AC=0AC=0;F0 F0用户标志位,可由用户置用户标志位,可由用户置“1 1”,或置,或置“0 0”,作为某一种状态的标,作为某一种状态的标志;志;OVOV溢出标志,计算机中,带符号数通常是用补码表示的溢出标志,计算机中,带符号数通常是用补码表示的对于单字节二进制补码,其所能表示数的范围是对于单字节二进制补码,其所能表示数的范围是-128-128到到 +127+127,如果运算结果超出了这个数值范

6、围,就称为溢出。,如果运算结果超出了这个数值范围,就称为溢出。q一般两个同号数相加或两个异号数相减,有可能发生溢出;一般两个同号数相加或两个异号数相减,有可能发生溢出;q而两个同号数相减或两个异号数相加,则不会发生溢出。而两个同号数相减或两个异号数相加,则不会发生溢出。n n当两个正数相加,若和超过当两个正数相加,若和超过当两个正数相加,若和超过当两个正数相加,若和超过+127+127+127+127时,其结果的符号由正变负,时,其结果的符号由正变负,时,其结果的符号由正变负,时,其结果的符号由正变负,即得出负数,这时即得出负数,这时即得出负数,这时即得出负数,这时OVOVOVOVl l l

7、l。n n同理,两负数相加,结果应为负数,但因和数为同理,两负数相加,结果应为负数,但因和数为同理,两负数相加,结果应为负数,但因和数为同理,两负数相加,结果应为负数,但因和数为-241-241-241-241-l28-l28-l28-l28,有溢出而使结果为正数,此时,有溢出而使结果为正数,此时,有溢出而使结果为正数,此时,有溢出而使结果为正数,此时OV=1OV=1OV=1OV=1。n在乘法运算时,在乘法运算时,OV=1OV=1表示结果超过了表示结果超过了255255,即乘积分别在,即乘积分别在寄存器寄存器B B和和A A中;反之表示乘积在中;反之表示乘积在A A中。中。n在除法运算时,在除

8、法运算时,OV=1OV=1表示除数为表示除数为0 0,不能进行除法,反之,不能进行除法,反之除数不为除数不为0 0,可以进行除法。,可以进行除法。P P奇偶标志,累加器奇偶标志,累加器A A中中“1 1”的个数为奇数时的个数为奇数时P=1P=1,否则,否则P=0P=0;RS1RS1,RS0RS0:工作寄存器组选择控制位。工作寄存器组选择控制位。0 0 00 0 0组(内部组(内部RAMRAM地址地址00H00H07H07H)0 1 10 1 1组(内部组(内部RAMRAM地址地址08H08H0FH0FH)1 0 21 0 2组(内部组(内部RAMRAM地址地址10H10H17H17H)1 1

9、31 1 3组(内部组(内部RAMRAM地址地址18H18H1FH1FH)MCS MCS5151单片机的零标志单片机的零标志z z不包含在不包含在PSWPSW寄存器中,而直寄存器中,而直接安排在累加器接安排在累加器A A中中1.2 控制器控制器n程序计数器程序计数器PCPC 程序计数器程序计数器PCPC(Program CounterProgram Counter)是)是1616位专用寄存器,位专用寄存器,其内容表示下一条要执行的指令的地址,其内容表示下一条要执行的指令的地址,PCPC的内容有自动的内容有自动加加1 1的功能。当的功能。当CPUCPU顺序地执行指令时,顺序地执行指令时,PCPC

10、的内容以增量的的内容以增量的规律变化着,于是当一条指令取出后,规律变化着,于是当一条指令取出后,PCPC就指向下一条指就指向下一条指令的地址,如果不按顺序执行指令,转移到某地址再继续令的地址,如果不按顺序执行指令,转移到某地址再继续执行指令,这时在执行指令,这时在跳转之前必须将转向的程序的入口地址跳转之前必须将转向的程序的入口地址送往程序计数器,送往程序计数器,以便从该入口地址开始执行程序。由此以便从该入口地址开始执行程序。由此可见,可见,PCPC实际上是一个地址指示器,改变实际上是一个地址指示器,改变PCPC中的内容就可中的内容就可以改变指令执行的次序,即改变程序执行的路线。当以改变指令执行

11、的次序,即改变程序执行的路线。当系统系统复位后,复位后,PC=0000HPC=0000H,CPUCPU便从这一固定的入口地址开始执便从这一固定的入口地址开始执行程序。行程序。n堆栈指针堆栈指针SPSP 堆栈是为暂存数据或返回地址而在堆栈是为暂存数据或返回地址而在RAMRAM区专门开辟的一区专门开辟的一个数据存放区,并按照个数据存放区,并按照“后进先出后进先出”的原则进行操作。的原则进行操作。堆栈指针堆栈指针SPSP(Stack PointerStack Pointer)是一个)是一个8 8位寄存器,用位寄存器,用它存放栈顶的地址。它存放栈顶的地址。进栈时,进栈时,SPSP自动加自动加1 1,将

12、数据压入,将数据压入SPSP所所指定的地址单元;出栈时,将指定的地址单元;出栈时,将SPSP所指示的地址单元中的数所指示的地址单元中的数据弹出,然后据弹出,然后SPSP自动减自动减1 1,因此,因此,SPSP总是指向栈顶。总是指向栈顶。系统复位后,系统复位后,SPSP初始化为初始化为07H07H,所以第一个压入堆栈的,所以第一个压入堆栈的数据存放到数据存放到08H08H单元,即堆栈区为从单元,即堆栈区为从07H07H单元开始的一部分单元开始的一部分连续存储单元。连续存储单元。SPSP的内容是可编程的,的内容是可编程的,因而可将堆栈区定位到内因而可将堆栈区定位到内部数据存储器的任意位置。部数据存

13、储器的任意位置。堆栈的大小可用堆栈的大小可用“深度深度”表示,用户在设定堆栈区表示,用户在设定堆栈区时应该考虑到堆栈的深度,时应该考虑到堆栈的深度,以便能满足子程序嵌套时以便能满足子程序嵌套时的需要。的需要。n数据指针数据指针DPTRDPTR 数据指针数据指针DPTRDPTR(Data PointerData Pointer)是一个)是一个1616位的专用寄位的专用寄存器,专门用来存放存器,专门用来存放1616位数据存储器的地址,以便对外部位数据存储器的地址,以便对外部数据存储器数据存储器RAMRAM读写数据,作间接寄存器使用。它可指向读写数据,作间接寄存器使用。它可指向64K64K字节范围内

14、的任一存储单元,也可以分成高字节字节范围内的任一存储单元,也可以分成高字节DPHDPH和和低字节低字节DPLDPL两个独立的两个独立的8 8位寄存器,这为修改位寄存器,这为修改DPTRDPTR的内容提的内容提供了方便。供了方便。n指令寄存器、指令译码器和指令寄存器、指令译码器和CPUCPU定时控制定时控制 CPU CPU从程序存储器内取出的指令首先要送到指令寄存从程序存储器内取出的指令首先要送到指令寄存器,然后送入指令译码器,由指令译码器对指令进行译码,器,然后送入指令译码器,由指令译码器对指令进行译码,即把指令转变成执行该指令所需要的信号,使计算机正确即把指令转变成执行该指令所需要的信号,使

15、计算机正确地执行程序所要求的各种操作。地执行程序所要求的各种操作。三、三、MCS-51MCS-51 单片机的引脚功能单片机的引脚功能 40只引脚双列直插封装(DIP)44只引脚方形封装方式为(4只无用)40 40只引脚按其功能来分,可分为只引脚按其功能来分,可分为3 3类:类:(1 1)电源及时钟引脚)电源及时钟引脚:Vcc:Vcc、VssVss;XTAL1XTAL1、XTAL2XTAL2。(2 2)控控制制引引脚脚:/PSEN/PSEN、/EA/EA、ALEALE、RESET RESET(即即RSTRST)。)。(3 3)I/OI/O口口引引脚脚:P0P0、P1P1、P2P2、P3P3,为为

16、4 4个个8 8位位I/OI/O口口的的外部引脚。外部引脚。电源引脚电源引脚 (1 1)VccVcc:+5V+5V电源;电源;(2 2)VssVss:接地。:接地。时钟引脚时钟引脚 (1 1)XTAL1XTAL1(1919脚脚):如如果果采采用用外外接接晶晶体体振振荡荡器器时时,此引脚应接地。此引脚应接地。(2 2)XTAL2 XTAL2(1818脚):接外部晶体的另一端。脚):接外部晶体的另一端。并行并行I/OI/O:共共4 4个口,个口,3232根根I/OI/O线。线。P0P0口口:8 8位双向位双向I/OI/O口。口。当使用片外存储器(当使用片外存储器(ROMROM及及RAMRAM)时,

17、作低八位地址和数据总)时,作低八位地址和数据总线分时复用。能驱动线分时复用。能驱动8 8个个LSTTLLSTTL负载。负载。P1P1口口:8 8位、准双向位、准双向I/OI/O口。口。P2 P2口口:8 8位、准双向位、准双向I/OI/O口。当使用片外存储器(口。当使用片外存储器(ROMROM及及RAMRAM)时,输出高)时,输出高8 8位地址。位地址。P2P2口可以驱动口可以驱动4 4个个LSTTLLSTTL负载。负载。P3 P3口口:8 8位、准双向位、准双向I/OI/O口,具有内部上拉电路。口,具有内部上拉电路。P3P3提供提供各种替代功能。在提供这些功能时,其输出锁存器应由程序各种替代

18、功能。在提供这些功能时,其输出锁存器应由程序置置1 1。P3P3口可以驱动口可以驱动4 4个个LSTTLLSTTL负载。负载。串行口:串行口:nP3.0P3.0RXDRXD串行输入口串行输入口nP3.1P3.1TXDTXD串行输出口串行输出口中断:中断:nP3.2P3.2外部中断外部中断0 0输入输入nP3.3P3.3外部中断外部中断1 1输入输入定时器定时器/计数器:计数器:nP3.4P3.4定时器定时器/计数器计数器T0T0的外部输入的外部输入nP3.5P3.5定时器定时器/计数器计数器T1T1的外部输入的外部输入数据存储器选通:数据存储器选通:nP3.6P3.6WRWR低电平有效,输出,

19、片外存储器写选通。低电平有效,输出,片外存储器写选通。nP3.7P3.7RDRD低电平有效,输出,片外存储器读选通。低电平有效,输出,片外存储器读选通。控制线控制线nRST/VRST/VPDPD复位输入信号,高电平有效。在振荡器工作时,在复位输入信号,高电平有效。在振荡器工作时,在RSTRST上作用两个机器周期以上的高电平,将器件复位。上作用两个机器周期以上的高电平,将器件复位。其第二功能为备用电源输入端。其第二功能为备用电源输入端。nEA/VEA/Vpppp片外程序存储器访问允许信号,低电平有效。片外程序存储器访问允许信号,低电平有效。EA=1EA=1,选择选择片内片内程序存储器(程序存储器

20、(80C5180C51为为4KB4KB,80C5280C52为为8KB8KB););EA=0EA=0,则程序存储器全部在则程序存储器全部在片外片外而不管片内是否有程序存储器。而不管片内是否有程序存储器。其第二功能其第二功能V Vpppp为编程电压输入端,使用为编程电压输入端,使用87518751编程时,施编程时,施加加21V21V的编程电压。的编程电压。nALE/PROGALE/PROG地址锁存允许信号,输出。地址锁存允许信号,输出。在访问片外存储器或在访问片外存储器或I/OI/O时,用于锁存低八位地址,以时,用于锁存低八位地址,以实现低八位地址与数据的隔离。由于实现低八位地址与数据的隔离。由

21、于ALEALE以以1/61/6的振荡频率的振荡频率固定速率输出,可作为对外输出的时钟或用作外部定时脉固定速率输出,可作为对外输出的时钟或用作外部定时脉冲。在冲。在EPROMEPROM编程期间,作输入。输入编程脉冲(编程期间,作输入。输入编程脉冲(PROGPROG)ALE ALE可以驱动可以驱动8 8个个LSTTLLSTTL负载。负载。nPSENPSEN片外程序存储器读选通信号,低电平有效。片外程序存储器读选通信号,低电平有效。在从片外程序存储器取指期间,在每个机器周期中,当在从片外程序存储器取指期间,在每个机器周期中,当有效时,程序存储器的内容被送上有效时,程序存储器的内容被送上P0P0口(数

22、据总线)。口(数据总线)。四、四、MCS-51MCS-51的外部总线结构的外部总线结构2.2 MCS-512.2 MCS-51的寻址空间与存储器结构的寻址空间与存储器结构 80C5180C51在在物理结构物理结构上有四个存储空间:上有四个存储空间:片内程序存储器、片内程序存储器、片外程序存储器、片内数据存储器和片外数据存储器。片外程序存储器、片内数据存储器和片外数据存储器。在在逻辑上逻辑上,80C5180C51有三个存储空间:片内外统一编址有三个存储空间:片内外统一编址的的64K64K字节的程序存储器字节的程序存储器地址空间(用地址空间(用1616位地址)、位地址)、片内片内128128字节的

23、数据存储器字节的数据存储器地址空间(用地址空间(用8 8位地址)、位地址)、片外片外64K64K字节的数据存储器字节的数据存储器地址空间。在访问这三个不同的逻辑空地址空间。在访问这三个不同的逻辑空间时,应采用不同的指令。间时,应采用不同的指令。2.2 MCS-512.2 MCS-51的寻址空间与存储器结构的寻址空间与存储器结构一、程序存储器一、程序存储器 EA EA引脚接高电平时,程序从片内程序存储器引脚接高电平时,程序从片内程序存储器0000H0000H开开始执行,即访问片内存储器;当始执行,即访问片内存储器;当PCPC值超出片内值超出片内ROMROM容量时,容量时,会自动转向片外程序存储器

24、空间执行。会自动转向片外程序存储器空间执行。EAEA引脚接低电平时,引脚接低电平时,迫使系统全部执行片外程序存储器迫使系统全部执行片外程序存储器0000H0000H开始存放的程序。开始存放的程序。对对80318031,由于片内无,由于片内无ROM/EPROMROM/EPROM,必须使,必须使EA=0EA=0,程序存储,程序存储器只能片外扩展,即器只能片外扩展,即0000H-FFFFH0000H-FFFFH都是指向片外都是指向片外EPROMEPROM的。的。在程序存储器中,有六个地址单元被保留用于某些特定在程序存储器中,有六个地址单元被保留用于某些特定的地址,如表所示。的地址,如表所示。表表 5

25、 5种中断源的中断入口地址种中断源的中断入口地址 外部中断外部中断0 0 0003H0003H 定时器定时器0(T0)0(T0)000BH 000BH外部中断外部中断1 1 0013H 0013H 定时器定时器1(T1)1(T1)001BH 001BH 串行口串行口 0023H 0023H 单片机复位后,程序计数器单片机复位后,程序计数器PCPC的内容为的内容为0000H0000H,即系统从,即系统从0000H0000H单元开单元开始执行程序。一般在始执行程序。一般在0000H-0002H0000H-0002H单元存放一条绝对转移指令,而用单元存放一条绝对转移指令,而用户设计的主程序应从跳转后

26、的地址开始存放,以便户设计的主程序应从跳转后的地址开始存放,以便CPUCPU复位后,复位后,PCPC从从0000H0000H起始地址跳转到用户程序去执行。起始地址跳转到用户程序去执行。5 5个中断源的中断入口地址间个中断源的中断入口地址间隔都只有隔都只有8 8个单元,存放中断服务程序往往是不够用的。所以通常在个单元,存放中断服务程序往往是不够用的。所以通常在这些入口存放一条绝对转移指令,使程序转到相应的中断服务程序的这些入口存放一条绝对转移指令,使程序转到相应的中断服务程序的起始地址。起始地址。例:例:ORG 0000HORG 0000H LJMP START LJMP START .ORG

27、1000H ORG 1000HSTART:MOV TMOD,#27HSTART:MOV TMOD,#27H .二、数据存储器二、数据存储器 数据存储器用于存放运算的中间结果、数据暂存和缓数据存储器用于存放运算的中间结果、数据暂存和缓冲以及标志位等。所以数据存储器由读写存储器冲以及标志位等。所以数据存储器由读写存储器RAMRAM构成。构成。80528052片内片内RAMRAM有有256256字节,片外最大可扩展字节,片外最大可扩展64K64K字节字节RAMRAM。片。片内和片外内和片外RAMRAM是独立编址的,用不同的指令来访问不同的是独立编址的,用不同的指令来访问不同的数据存储器,即用数据存储

28、器,即用MOVMOV指令访问片内指令访问片内RAMRAM,而用,而用MOVXMOVX指令访指令访问问片外片外RAMRAM。片内数据存储器片内数据存储器 片内数据存储器的配置如图所示。片内数据存储器为片内数据存储器的配置如图所示。片内数据存储器为8 8位地址,(位地址,(80528052)最大可寻址)最大可寻址256256个单元(个单元(00H-FFH00H-FFH),),这是最灵活的地址空间。它由工作寄存器区、位寻址区和这是最灵活的地址空间。它由工作寄存器区、位寻址区和数据缓冲区组成,不同的地址区域内,功能不完全相同。数据缓冲区组成,不同的地址区域内,功能不完全相同。片内数据存储器片内数据存储

29、器通用通用RAM区区80单元单元可位寻址可位寻址区区16单元单元工作寄存工作寄存区区片内数据存储器片内数据存储器特特殊殊功功能能寄寄存存器器1 1、工作寄存器、工作寄存器0 0 0组(组(00H07H)0 1 1组(组(08H0FH)1 0 2组(组(10H17H)1 1 3组(组(18H1FH)1 1、工作寄存器、工作寄存器 在低在低128128字节字节RAMRAM区中,地址区中,地址00H-1FH00H-1FH为为通用工作寄存器通用工作寄存器区,区,共分为四个组,每组有共分为四个组,每组有8 8个工作寄存器个工作寄存器R0-R7R0-R7,共占用共占用3232个单元。个单元。工作寄存器和工

30、作寄存器和RAMRAM地址的对应关系如表所示。每组寄存器均可选地址的对应关系如表所示。每组寄存器均可选作作CPUCPU当前使用的工作寄存器组。用户可以通过指令对当前使用的工作寄存器组。用户可以通过指令对PSWPSW中中RSIRSI和和RSORSO的设置来决定的设置来决定CPUCPU当前所使用的寄存器组。寄存器组别确当前所使用的寄存器组。寄存器组别确定以后,究竟使用组中的哪一个寄存器就由定以后,究竟使用组中的哪一个寄存器就由8 8位地址号指示了。位地址号指示了。CPUCPU复位以后,由于复位以后,由于PSWPSW中各位均为中各位均为0 0,所以选定第,所以选定第0 0组工作寄存组工作寄存器。器。

31、若程序中并不需要用四个工作寄存器组,那么剩下的工作若程序中并不需要用四个工作寄存器组,那么剩下的工作寄存器组所对应的地位单元可以作为一般的数据缓冲区使用。寄存器组所对应的地位单元可以作为一般的数据缓冲区使用。2 2、位寻址区、位寻址区 20H-2FH20H-2FH为位寻址区为位寻址区。每个单元有。每个单元有8 8位,位,1616个单元共个单元共128128位,每一位分配有一个位,每一位分配有一个8 8位地址,称为位地址,其范围位地址,称为位地址,其范围是是00H-7FH00H-7FH。位寻址区的每一位都可以当作一个软件触发。位寻址区的每一位都可以当作一个软件触发器,由程序直接进行位处理。程序设

32、计时,通常把各种程器,由程序直接进行位处理。程序设计时,通常把各种程序状态标志、位控制变量设在位寻址区内。同样,序状态标志、位控制变量设在位寻址区内。同样,位寻址位寻址区的区的RAMRAM单元也可以作为一般的数据缓冲器使用单元也可以作为一般的数据缓冲器使用。30H-7FH30H-7FH为数据缓冲区为数据缓冲区,用来存放数据。此外,用户,用来存放数据。此外,用户堆栈一般设在这个区间。堆栈一般设在这个区间。3 3、特殊功能寄存器、特殊功能寄存器SFRSFR 在高在高128128字节字节RAMRAM区,区,80H-FFH80H-FFH地址为特殊功能寄存器地址为特殊功能寄存器SFRSFR(Specia

33、l Functional RegisterSpecial Functional Register)区,)区,SFRSFR是用于对是用于对片内功能模块进行管理、控制、监视的控制寄存器和状态片内功能模块进行管理、控制、监视的控制寄存器和状态寄存器,是一个具有特殊功能的寄存器,是一个具有特殊功能的RAMRAM区。区。80C5180C51有有2121个特殊个特殊功能寄存器功能寄存器,如,如I/OI/O口锁存器,定时器、串行口缓冲器以口锁存器,定时器、串行口缓冲器以及各种控制寄存器和状态寄存器都以特殊功能寄存器的形及各种控制寄存器和状态寄存器都以特殊功能寄存器的形式出现,离散地分布在式出现,离散地分布在

34、80H-FFH80H-FFH范围内。特殊功能寄存器范围内。特殊功能寄存器的名称如下:的名称如下:3 3、特殊功能寄存器、特殊功能寄存器SFRSFR3 3、特殊功能寄存器、特殊功能寄存器SFRSFRnA A(或(或ACCACC):累加器):累加器A AnB B:B B寄存器寄存器nPSWPSW:程序状态字:程序状态字nSPSP:堆栈指针:堆栈指针nDPTRDPTR:数据指针(由:数据指针(由DPHDPH和和DPLDPL组成)组成)nPO-P3PO-P3:P0P0口锁存器一口锁存器一P3P3口口锁存器锁存器nIPIP:中断优先级控制寄存器:中断优先级控制寄存器nIEIE:中断允许控制寄存器:中断允

35、许控制寄存器nTMODTMOD:定时器:定时器/计数器方式控制寄存器计数器方式控制寄存器nTCONTCON:定时器:定时器/计数器控制寄存器计数器控制寄存器nTH0TH0:定时器:定时器/计数器计数器0 0(高字节)(高字节)nTL0TL0:定时器:定时器/计数器计数器0 0(低字节)(低字节)nTHITHI:定时器:定时器/计数器计数器1 1(高字节)(高字节)nTLITLI:定时器:定时器/计数器计数器1 1(低字节)(低字节)nSCONSCON:串行口控制寄存器:串行口控制寄存器nSBUFSBUF:串行口数据缓冲器:串行口数据缓冲器nPCONPCON:电源控制寄存器:电源控制寄存器片外数

36、据存储区片外数据存储区n片外数据存储器是在外部存放数据的区域,这一区域只能片外数据存储器是在外部存放数据的区域,这一区域只能用寄存器间接寻址的方法访问,所用的寄存器为用寄存器间接寻址的方法访问,所用的寄存器为DPTRDPTR、R1R1或或R0R0。n当用当用R0R0、R1R1寻址时,由于寻址时,由于R0R0、R1R1为为8 8位寄存器,因此最大位寄存器,因此最大寻址范围为寻址范围为256B256B;当用;当用DPTRDPTR寻址时,由于寻址时,由于DPTRDPTR为为1616位寄存位寄存器,因此最大寻址范围为器,因此最大寻址范围为64KB64KB。2.3 MCS-51 2.3 MCS-51的并

37、行的并行I/OI/O口口 80C51 80C51单片机共有四个单片机共有四个8 8位的并行双向口,计有位的并行双向口,计有3232根输根输入入/输出(输出(I/OI/O)口线。各口的每一位均由锁存器、输出驱)口线。各口的每一位均由锁存器、输出驱动器和输入缓冲器组成。可利用任一端口输入输出数据,动器和输入缓冲器组成。可利用任一端口输入输出数据,每条口线也可单独使用,或在任一位上输入输出开关量,每条口线也可单独使用,或在任一位上输入输出开关量,或对位进行逻辑操作。除或对位进行逻辑操作。除P1P1口仅做口仅做I/OI/O口外,其余各端口口外,其余各端口均具有双功能,可由用户选择使用。均具有双功能,可

38、由用户选择使用。一、一、P0 P0端口端口 字节地址为字节地址为80H,80H,位地址位地址80H80H87H87H。P0P0口某一位的电路包括:口某一位的电路包括:(1)(1)一个数据输出锁存器,用于数据位的锁存。一个数据输出锁存器,用于数据位的锁存。(2)(2)两个三态的数据输入缓冲器,分别用于锁存器数据和引脚数据的输入缓冲。两个三态的数据输入缓冲器,分别用于锁存器数据和引脚数据的输入缓冲。(3)(3)一个多路转接开关一个多路转接开关MUXMUX,实现锁存器输出和地址,实现锁存器输出和地址/数据线之间的接通转接。数据线之间的接通转接。(4)(4)数数据据输输出出的的驱驱动动和和控控制制电电

39、路路,由由两两只只场场效效应应管管(FETFET)组组成成,上上面面的的那那只只场场效效应管构成上拉电路。应管构成上拉电路。P0P0口口传传送送地地址址或或数数据据时时,CPUCPU发发出出控控制制信信号号1 1,打打开开上上面面的的与与门门,使使多多路路转转接接开开关关MUXMUX打打向向上上边边,使使内内部部地地址址/数数据据线线与与下下面面的的场场效效应应管管处处于于反反相相接接通通状状态态。这这时时的的输输出出驱驱动动电电路路由由于于上上下下两两个个FETFET处处于于反反相相,形形成成推推拉拉式式电电路路结结构构,大大大大的的提提高高了了负负载载能能力力。而而当当输输入入数数据据时时

40、,数数据据信信号号则直接从引脚通过输入缓冲器进入内部总线。则直接从引脚通过输入缓冲器进入内部总线。P0P0口口作作为为通通用用的的I/OI/O口口使使用用。这这时时,CPUCPU发发来来的的“控控制制”信信号号为为低低电电平平0 0,封封锁锁了了与与门门,并并将将输输出出驱驱动动电电路路的的上上拉拉场场效效应应管管T1T1截截止止,而而多多路路转转接接开开关关MUXMUX打打向向下下边边,与与D D锁存器的锁存器的/Q/Q端接通。端接通。当当P0P0口口作作为为输输出出口口使使用用时时,来来自自CPUCPU的的“写写入入”脉脉冲冲加加在在D D锁锁存存器器的的CPCP端端,内内部部总总线线上上

41、的的数数据据写写入入D D锁锁存存器器,并并向向端端口口引引脚脚P0.xP0.x输输出出。但但要要注注意意,由由于于输输出出电电路路是是漏极开路(因为这时上拉场效应管截止),漏极开路(因为这时上拉场效应管截止),必须外接上拉电阻才能有高电平输出。必须外接上拉电阻才能有高电平输出。当当P0P0口口作作为为输输入入口口使使用用时时,应应区区分分“读读引引脚脚”和和“读读锁锁存存器器”。“读读引引脚脚”就就是是直直接接读读取取引引脚脚 P0.x P0.x 上上的的状状态态,这这时时由由“读读引引脚脚”信信号号把把下下方方缓缓冲冲器器打打开开,引引脚脚上上的的状状态态经经缓缓冲冲器器读读入入内内部部总

42、总线线;“读读引引脚脚”前前该口锁存器必须先置该口锁存器必须先置1 1。MOV P0,#0FFH MOV P0,#0FFH MOV A,P0 MOV A,P0 “读读锁锁存存器器”则则是是“读读锁锁存存器器”信信号号打打开开上上面面的的缓缓冲冲器器把把锁锁存存器器Q Q端的状态读入内部总线。端的状态读入内部总线。CPUCPU执行一次读执行一次读-改改-写操作。写操作。ANLANL,ORLORL,XRLXRL;JBCJBC;CPLCPL;INCINC,DECDEC;DJNZDJNZ;MOVMOV;CLRCLR,SETBSETB;这些指令均执行一次读这些指令均执行一次读-改改-写操作。写操作。二、

43、二、P1P1端口端口 字节地址为字节地址为90H90H,位地址,位地址90H90H97H97H。P1P1口只作为通用的口只作为通用的I/OI/O口使用口使用,在电路结构上与,在电路结构上与P0P0口有两点区别:口有两点区别:(1 1)因为因为P1P1口只传送数据,所以不再需要多路转接开关口只传送数据,所以不再需要多路转接开关MUXMUX。(2 2)由由于于P1P1口口用用来来传传送送数数据据,因因此此输输出出电电路路中中有有上上拉拉电电阻阻,这这样样电电路路的的输输出不是三态的,所以出不是三态的,所以P1P1口是口是准双向口准双向口。因此:因此:(1 1)P1P1口作为口作为输出输出口使用时,

44、与口使用时,与P0P0口不同的是,外电路无需再接上拉电阻。口不同的是,外电路无需再接上拉电阻。(2 2)P1P1口口作作为为输输入入口口使使用用时时,应应先先向向其其锁锁存存器器先先写写入入 “1 1”,使使输输出出驱驱动动电路的电路的FETFET截止。截止。MOV P1,#0FFH MOV P1,#0FFH MOV A,P1 MOV A,P1三、三、P2 P2端口端口 字节地址为字节地址为A0HA0H,位地址,位地址A0HA0HA7HA7H。在在实实际际应应用用中中,因因为为P2P2口口用用于于为为系系统统提提供供高高位位地地址址,因因此此同同P0P0口口一一样样,在在口口电电路路中中有有一

45、一个个多多路路转转接接开开关关MUXMUX。但但MUXMUX的的一一个个输输入入端端不不再再是是“地地址址/数数据据”,而而是是单单一一的的“地地址址”,这这是是因因为为P2P2口口只只作作为为地地址址线线使使用用。当当P2P2口口用用作作为为高高位位地地址址线线使使用用时时,多多路路转转接接开开关关应应接接向向“地地址址”端端。正正因因为为只只作作为为地地址址线线使使用用,口口的的输输出出用用不不着着是是三态的,所以,三态的,所以,P2P2口也是一个准双向口。口也是一个准双向口。此外,此外,P2P2口口也可以作为也可以作为通用通用I/OI/O口使用,这时,多路转接开关口使用,这时,多路转接开

46、关接向锁存器接向锁存器Q Q端。端。P2P2口口作为作为输入输入口使用时,应先向其锁存器先写入口使用时,应先向其锁存器先写入 “1 1”,使输出驱动电路的,使输出驱动电路的FETFET截止。截止。四、四、P3 P3端口端口 P3P3口的字节地址为口的字节地址为B0HB0H,位地址为,位地址为B0HB0HB7HB7H P3P3口口的的第二功能第二功能定义定义。表表 P3 P3口的第二功能定义口的第二功能定义 口引脚口引脚 第二功能第二功能 P3.0P3.0 RXD RXD(串行输入口)(串行输入口)P3.1 P3.1 TXD TXD(串行输出口)(串行输出口)P3.2 P3.2/INT0 /IN

47、T0(外部中断(外部中断0 0)P3.3 P3.3/INT1 /INT1(外部中断(外部中断1 1)P3.4 P3.4 T0 T0(定时器(定时器0 0外部计数输入)外部计数输入)P3.5 P3.5 T1 T1(定时器(定时器1 1外部计数输入)外部计数输入)P3.6 P3.6/WR /WR(外部数据存储器写选通)(外部数据存储器写选通)P3.7 P3.7/RD /RD(外部数据存储器读选通)(外部数据存储器读选通)(1 1)当当作作通通用用的的I/OI/O口口使使用用时时,电电路路中中的的“第第二二输输出出功功能能”线线应应保保持持高高电电平平,与与非非门门开开通通,以以使使锁锁存存器器的的

48、Q Q端端输输出出通通路路保保持持畅畅通通。当当输输入入信信号号时时,该锁存器应预先置该锁存器应预先置“1 1”。引脚信号通过缓冲器送到内部总线。引脚信号通过缓冲器送到内部总线。(2 2)作为第二功能用作为第二功能用:输出时,输出时,Q=1Q=1,打开与非门,第二功能输出;,打开与非门,第二功能输出;输入时,引脚信号通过缓冲器送到第二输入功能端。输入时,引脚信号通过缓冲器送到第二输入功能端。P0P0P3P3端口功能小结:端口功能小结:(1 1)P0P0P3P3口口都都是是并并行行I/OI/O口口,都都可可用用于于数数据据的的输输入入和和输输出出,但但P0P0口口和和P2P2口口除除了了可可进进

49、行行数数据据的的输输入入/输输出出外外,通通常常用用来来构构建建系系统统的的数数据据总总线线和和地地址址总总线线,所所以以在在电电路路中中有有一一个个多多路路转转接接开开关关MUXMUX,以以便便进进行行两两种种用用途途的的转转换换。而而P1P1口口和和P3P3口口没没有有构构建建系系统统的的数数据据总总线线和和地地址址总总线线的的功功能能,因因此此,在在电电路路中中没没有有多多路路转转接接开开关关MUXMUX。由由于于P0P0口口可可作作为为地地址址/数数据据复复用用线线使使用用,需需传传送送系系统统的的低低8 8位位地地址址和和8 8位位数数据据,因因此此MUXMUX的的一一个个输输入入端

50、端为为“地地址址/数数据据”信信号号。而而P2P2口口仅仅作作为为高高位位地地址址线线使使用用,不不涉涉及及数数据据,所所以以MUXMUX的一个输入信号为的一个输入信号为“地址地址”。(2 2)在在4 4个个口口中中只只有有P0P0口口是是一一个个真真正正的的双双向向口口,P1P1P3P3这这3 3个个口口都都是是准准双双向向口口。原原因因是是在在应应用用系系统统中中,P0P0口口作作为为系系统统的的数数据据总总线线使使用用时时,为为保保证证数数据据的的正正确确传传送送,需需要要解解决决芯芯片片内内外外的的隔隔离离问问题题,即即只只有有在在数数据据传传送送时时芯芯片片内内外外才才接接通通;不不

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁