第2章 单片机的结构与原理_第1页
第2章 单片机的结构与原理_第2页
第2章 单片机的结构与原理_第3页
第2章 单片机的结构与原理_第4页
第2章 单片机的结构与原理_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

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

文档简介

1、第第2 2章章 单片机的结构与原理单片机的结构与原理 首首 页页本章内容本章内容2.1 MCS-512.1 MCS-51系列单片机总体结构系列单片机总体结构 2.2 2.2 微处理器微处理器 2.3 MCS-512.3 MCS-51单片机时钟电路及单片机时钟电路及CPUCPU的工作时序的工作时序 2.4 MCS-5l2.4 MCS-5l单片机存储器分类及配置单片机存储器分类及配置 2.5 CHMOS2.5 CHMOS型单片机的低功耗工作方式型单片机的低功耗工作方式 下 页上 页返 回2.1 MCS-512.1 MCS-51系列单片机总体结构系列单片机总体结构 MCS-51MCS-51系列是系列

2、是IntelIntel公司公司2020世纪世纪8080年代初推出的年代初推出的高性能单片机。高性能单片机。MCS-51MCS-51系列单片机包括系列单片机包括5151和和5252两两个子系列。在个子系列。在5151子系列中,主要有子系列中,主要有80318031、80518051和和87518751三个机型,它们的指令系统与芯片引脚完全三个机型,它们的指令系统与芯片引脚完全相同,仅片内相同,仅片内ROMROM有所不同。有所不同。 5151子系列的主要功能为:子系列的主要功能为: 88位位CPUCPU。 128128个字节的片内数据存储器个字节的片内数据存储器 4K 4K字节的片内程序存储器(字

3、节的片内程序存储器(80318031无)。无)。下 页上 页返 回程序存储器的寻址范围为程序存储器的寻址范围为64KB64KB字节。字节。片外数据存储器的寻址范围为片外数据存储器的寻址范围为64KB64KB字节。字节。44个个8 8位并行位并行I/OI/O接口:接口:P0P0、P1P1、P2P2、P3P3。55个中断源,可编程为两个优先级。个中断源,可编程为两个优先级。11个全双工串行个全双工串行I/OI/O接口,可多机通信。接口,可多机通信。22个个1616位定时器位定时器/ /计数器。计数器。2121个专用寄存器。个专用寄存器。111111条指令,含乘法指令和除法指令。条指令,含乘法指令和

4、除法指令。强大的位寻址、位处理能力。强大的位寻址、位处理能力。片内带振荡器,振荡频率片内带振荡器,振荡频率fOSCfOSC范围为范围为1.21.2 12MHZ12MHZ;可有时钟输出。;可有时钟输出。下 页上 页返 回 片内采用单总线结构。片内采用单总线结构。 单一单一+5V+5V供电。供电。 5252子系列主要有子系列主要有80328032、80528052两种机型。与两种机型。与5151子系列不同在于:片内数据存储器增至子系列不同在于:片内数据存储器增至256256个字个字节;片内程序存储器增至节;片内程序存储器增至8KB8KB(80328032无);有无);有3 3个个1616位定时器位

5、定时器/ /计数器;有计数器;有6 6个中断源。个中断源。2.1.1 MCS-512.1.1 MCS-51单片机的内部结构单片机的内部结构 MCS-5lMCS-5l单片机内部结构框如图单片机内部结构框如图2.12.1所示。所示。 1 1MCS-51MCS-51的内部程序存储器的内部程序存储器(ROM)(ROM)和内部数和内部数据存储器据存储器(RAM)(RAM) MCS-51 MCS-51系列的系列的805l805l单片机内部有单片机内部有4KB4KB的程序存的程序存储器,地址范围为储器,地址范围为0000-0FFFH0000-0FFFH。当单片机的。当单片机的下 页上 页返 回图图2.1 M

6、CS-5l2.1 MCS-5l单片机内部结构框图单片机内部结构框图 下 页上 页返 回EAEA引脚为高电平时,程序存储器空间的引脚为高电平时,程序存储器空间的0000-0000-0FFFH0FFFH在单片机内部,在单片机内部,1000-FFFFH1000-FFFFH在单片机外部。在单片机外部。805l805l单片机的内部有单片机的内部有128B128B的数据存储器,地址的数据存储器,地址范围从范围从00-7FH(805200-7FH(8052内部有内部有256B256B,地址范围从,地址范围从00-FFH00-FFH,其中,其中80-FFH80-FFH单元只能用寄存器间接寻单元只能用寄存器间接

7、寻址访问址访问) )。 2 2MCS-51MCS-51的特殊功能寄存器的特殊功能寄存器 内部地址范围从内部地址范围从80-FFH80-FFH为特殊功能寄存器区。为特殊功能寄存器区。单片机的输入输出端口、计数器定时器、单片机的输入输出端口、计数器定时器、串行通信口、累加器及一些控制寄存器等都位串行通信口、累加器及一些控制寄存器等都位于这个地址空间。特殊功能寄存器实际只占用于这个地址空间。特殊功能寄存器实际只占用了了部分部分80-FFH80-FFH地址,其余部分地址保留未地址,其余部分地址保留未下 页上 页返 回用。用。MCS-51MCS-51单片机各种型号间的差别就在于特单片机各种型号间的差别就

8、在于特殊功能寄存器数量的多少。殊功能寄存器数量的多少。 3 3中断与堆栈中断与堆栈 MCS-51MCS-51有有5 5个中断源个中断源( (对对8032803280528052为为6 6个个) ),分别为外部中断分别为外部中断0 0、外部中断、外部中断1 1、时钟中断、时钟中断0 0、时、时钟中断钟中断1 1和串行通信中断和串行通信中断( (对对8032803280528052还有时还有时钟中断钟中断2)2),这些中断分为两个优先级,每个中,这些中断分为两个优先级,每个中断源的优先级都是可编程的。堆栈位于单片机断源的优先级都是可编程的。堆栈位于单片机的内部数据存储器中,堆栈是一个向上增长的的内

9、部数据存储器中,堆栈是一个向上增长的后进先出的存储空间,主要用于保存中断返回后进先出的存储空间,主要用于保存中断返回地址和子程序调用返回地址地址和子程序调用返回地址( (由硬件自动保由硬件自动保存存) )也可用指令进行堆栈数据的存取操作。也可用指令进行堆栈数据的存取操作。 下 页上 页返 回 4 4定时计数器与寄存器区定时计数器与寄存器区 MCS-51MCS-51子系列有两个子系列有两个1616位定时计数器,通位定时计数器,通过编程可以实现过编程可以实现4 4种工作模式。种工作模式。MCS-52MCS-52子系列则子系列则有有3 3个个1616位定时计数器。位定时计数器。MCS-5lMCS-5

10、l在内部在内部RAMRAM中中开设了开设了4 4个通用工作寄存器区,共个通用工作寄存器区,共3232个通用寄存个通用寄存器,以适应多种中断或子程序嵌套的要求。器,以适应多种中断或子程序嵌套的要求。 5 5指令系统指令系统 MCS-51MCS-51的指令系统有加、减、乘、除等算术的指令系统有加、减、乘、除等算术运算指令;逻辑运算指令;位操作指令;数据运算指令;逻辑运算指令;位操作指令;数据传送指令及多种程序转移指令。当振荡器频率传送指令及多种程序转移指令。当振荡器频率接接12MHz12MHz时,大部分指令执行时间为时,大部分指令执行时间为1s1s,少部,少部分为分为2s2s,乘除指令的执行时问也

11、只有,乘除指令的执行时问也只有4s4s。 下 页上 页返 回 6 6布尔处理器布尔处理器 MCS-51MCS-51的布尔处理器实际上是一个完整的一的布尔处理器实际上是一个完整的一位微计算机。这个一位微机有自己的位微计算机。这个一位微机有自己的CPUCPU、位寄、位寄存器、存器、I I0 0口和指令集口和指令集( (对于对于MCS-51MCS-51是一个指令是一个指令子集子集) )。把八位微机和一位微机结合在一起是微。把八位微机和一位微机结合在一起是微机技术上的一个突破。一位机在开关决策、逻机技术上的一个突破。一位机在开关决策、逻辑电路仿真和实时测控方面非常有效,而八位辑电路仿真和实时测控方面非

12、常有效,而八位机在运算处理、智能仪表常用的数据采集方面机在运算处理、智能仪表常用的数据采集方面有明显的长处。在有明显的长处。在MCS-51MCS-51系列单片机中八位机系列单片机中八位机和一位机和一位机( (布尔处理器布尔处理器) )的硬件资源是复合在一的硬件资源是复合在一起的,二者相辅相承,这是起的,二者相辅相承,这是MCS-51MCS-51在设计上的在设计上的精美之处,也是一般微机所不具备的。精美之处,也是一般微机所不具备的。 下 页上 页返 回2.1.2 MCS-512.1.2 MCS-51单片机的引脚描述单片机的引脚描述 MCS-51MCS-51系列系列80518051单片机单片机采用

13、采用4040引脚的双列直插封引脚的双列直插封装装(DIP) (DIP) 。其引脚功能可。其引脚功能可分为四类:分为四类: 1 1电源引脚电源引脚VccVcc(4040脚)脚)和和VssVss(2020脚)。脚)。 2 2外接晶体引脚外接晶体引脚XTALlXTALl和和XTAL2XTAL2。XTAL1(19XTAL1(19脚脚) )和和XTAl2(18XTAl2(18脚脚) )引脚接外部引脚接外部振荡器的信号。振荡器的信号。 3 3控制和复位引脚控制和复位引脚ALEALE、PSENPSEN、EAEA和和RSTRST。图图2.2 MCS-512.2 MCS-51芯片引脚图芯片引脚图下 页上 页返

14、回 ALE(30 ALE(30脚脚) ):当访问外部存储器时,:当访问外部存储器时,ALE(ALE(允许允许地址锁存地址锁存) )的输出用于锁存地址的低位字节。的输出用于锁存地址的低位字节。ALEALE端总是出现正脉冲信号,其频率为振荡器频端总是出现正脉冲信号,其频率为振荡器频率的率的1 16 6。需要注意的是,每当访问外部数据。需要注意的是,每当访问外部数据存储器时,将跳过一个存储器时,将跳过一个ALEALE脉冲。脉冲。ALEALE端可以驱端可以驱动动8 8个个TTLTTL门电路。门电路。 PSEN(29PSEN(29脚脚) ):外部程序存储器的读选通信号。:外部程序存储器的读选通信号。在从

15、外部程序存储器取指令在从外部程序存储器取指令( (或常数或常数) )期间,每期间,每个机器周期两次个机器周期两次PSENPSEN有效。但在此期间,每当有效。但在此期间,每当访问外部数据存储器时,这两次有效的访问外部数据存储器时,这两次有效的PSENPSEN信信号将不出现。号将不出现。PSENPSEN同样可以驱动同样可以驱动8 8个个TTLTTL门电路。门电路。下 页上 页返 回 EA(31 EA(31脚脚) ):当:当EAEA端保持高电平时,访问内部端保持高电平时,访问内部程序存储器,超过片内程序存储器容量程序存储器,超过片内程序存储器容量(8051(8051为为4KB)4KB)时,自动转向执

16、行外部程序存储器。当时,自动转向执行外部程序存储器。当EAEA保持低电平时,则只访问外部程序存储器,不保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器。对于管是否有内部程序存储器。对于80318031来说,无来说,无内部程序存储器,故内部程序存储器,故EAEA脚必须常接地。单片机脚必须常接地。单片机只在复位期间采样只在复位期间采样EAEA脚的电平。脚的电平。 RST(9RST(9脚脚) ):在此引脚上出现两个机器周期的:在此引脚上出现两个机器周期的高电平将使单片机复位。建议在此引脚与高电平将使单片机复位。建议在此引脚与VssVss引引脚之间连接一个约脚之间连接一个约8.2kQ8.

17、2kQ的下拉电阻,与的下拉电阻,与VccVcc引引脚之间连接一个约脚之间连接一个约lOFlOF的电容,以保证可靠复的电容,以保证可靠复位。下图为复位电路。位。下图为复位电路。下 页上 页返 回 图图2.3 MCS-512.3 MCS-51复位电路原理图复位电路原理图 MCS-51MCS-51复位后,复位后,P0P0P3P3口输出高电平,堆栈口输出高电平,堆栈指针指针SPSP置为置为07H07H,清,清“0”0”程序计数器程序计数器PCPC和其余和其余的特殊功能寄存器,如下表所示。的特殊功能寄存器,如下表所示。RSTRST由高电平由高电平变为低电平后,变为低电平后,80318031从从0 0地址

18、开始执行程序。地址开始执行程序。 下 页上 页返 回表表2.1 MCS-512.1 MCS-51复位后内部寄存器初态复位后内部寄存器初态 下 页上 页返 回 4 4输入输出引脚输入输出引脚P0P0、PlPl、P2P2、P3(P3(共共3232根根) ) PO PO口口(32(323939脚脚) ):双向:双向8 8位三态位三态I IO O口,数据口,数据/ /地址总线口,能以吸收电流的方式驱动地址总线口,能以吸收电流的方式驱动8 8个个TTLTTL负载。负载。 P1P1口口(1(18 8脚脚) ):是:是8 8位准双向位准双向I IO O口。因其输口。因其输出没有高阻状态,输入也不能锁存。故不

19、是出没有高阻状态,输入也不能锁存。故不是下 页上 页返 回真正的双向真正的双向I IO O口。口。P1P1口能驱动口能驱动( (吸收或输出电吸收或输出电流流)4)4个个TTLTTL负载。负载。 P2P2口口(21(212828脚脚) ):是:是8 8位准双向位准双向I IO O口。在访口。在访问外部存储器时,可作为高问外部存储器时,可作为高8 8位地址总线。位地址总线。P2P2可可以驱动以驱动( (吸收或输出电流吸收或输出电流)4)4个个TTLTTL负载。负载。 P3P3口口(10(101717脚脚) ):是:是8 8位准双向位准双向I IO O口,是一口,是一个复用双功能口(普通个复用双功能

20、口(普通I IO O口口/ /第二功能)。该第二功能)。该口能驱动口能驱动( (吸收或输出电流吸收或输出电流)4)4个个TTLTTL负载。作为负载。作为第二功能使用时,各引脚的定义如表第二功能使用时,各引脚的定义如表2.22.2所示。所示。注:注:P3P3口的每一条引脚均可独立定义为普通口的每一条引脚均可独立定义为普通I IO O口口/ /第二功能。第二功能。下 页上 页返 回表表2.2 P32.2 P3口第口第2 2功能表功能表下 页上 页返 回2.1.3 MCS-512.1.3 MCS-51单片机的片外总线结构单片机的片外总线结构 单片机的引脚除了电源、复位、时钟和用户单片机的引脚除了电源

21、、复位、时钟和用户I IO O口外,其余脚都是为实现系统扩展而设置的。口外,其余脚都是为实现系统扩展而设置的。这些引脚构成了这些引脚构成了MCS-51MCS-51单片机片外三总线结构。单片机片外三总线结构。 1) 1) 地址总线地址总线(AB)(AB):地址总线宽度为:地址总线宽度为1616位,可位,可访问访问64KB64KB的外部程序存储器和的外部程序存储器和64KB64KB的外部数据的外部数据存储器。低存储器。低8 8位地址总线位地址总线(A0(A0A7)A7)由由P0P0口经地址口经地址锁存器提供,高锁存器提供,高8 8位地址总线位地址总线(A8(A8A15)A15)直接由直接由P2P2

22、口提供。口提供。 2) 2) 数据总线数据总线(DB)(DB):数据总线宽度为:数据总线宽度为8 8位,由位,由P0P0口提供。口提供。 3) 3) 控制总线控制总线(CB)(CB):由:由P3P3口的第二功能状态和口的第二功能状态和4 4根独立控制线根独立控制线RESETRESET、EAEA、ALEALE和和PSENPSEN组成。组成。下 页上 页返 回2.2 2.2 微处理器微处理器 微处理器(微处理器(CPUCPU)由运算器和控制器组成。)由运算器和控制器组成。2.2.1 2.2.1 运算器运算器 运算器运算器( (如图如图2.12.1所示所示) ),以算术逻辑单元,以算术逻辑单元ALU

23、ALU为核心,含累加器为核心,含累加器A A、暂存器、程序状态字、暂存器、程序状态字PSWPSW、B B寄存器等许多部件。寄存器等许多部件。 1. 1. 算术逻辑单元算术逻辑单元 它在控制器所发内部控制信号的控制下进行它在控制器所发内部控制信号的控制下进行各种算术操作和逻辑操作。算术逻辑单元除能各种算术操作和逻辑操作。算术逻辑单元除能完成带进位位完成带进位位/ /不带进位位加法、带进位位减法、不带进位位加法、带进位位减法、加加1 1、减、减1 1、逻辑与、逻辑或、逻辑异或、循环、逻辑与、逻辑或、逻辑异或、循环移位以及数据传送、程序转移等一般操作外,移位以及数据传送、程序转移等一般操作外,其特点

24、是:其特点是:下 页上 页返 回 能和能和B B寄存器一起完成乘法与除法操作。寄存器一起完成乘法与除法操作。 可进行多种内容交换操作。可进行多种内容交换操作。 能作比较判跳操作。能作比较判跳操作。 很强的位操作功能。很强的位操作功能。 2 2累加器累加器 累加器累加器A A是最常用的专用寄存器。进入是最常用的专用寄存器。进入ALUALU作作算术操作和逻辑操作的操作数很多来自算术操作和逻辑操作的操作数很多来自累加器累加器A A,操作的结果也常送回操作的结果也常送回A A。 3 3程序状态字程序状态字 程序状态字程序状态字PSWPSW是一个是一个8 8位寄存器,它包含了位寄存器,它包含了许多程序状

25、态信息,其各位的含义如下许多程序状态信息,其各位的含义如下( (其中其中D1D1位未定义位未定义) ):下 页上 页返 回 (1) (1)进位标志进位标志C(PSW.7)C(PSW.7):在执行某些算术操作:在执行某些算术操作类、逻辑操作类指令时,可被硬件或软件置位类、逻辑操作类指令时,可被硬件或软件置位或清零。如或清零。如8 8位加法运算时,如果运算结果的最位加法运算时,如果运算结果的最高位高位D7D7有进位,则有进位,则C=1C=1,否则,否则C=0C=0。 (2)(2)辅助进位标志辅助进位标志AC(PSW.6)AC(PSW.6):8 8位加法运算时,位加法运算时,如果低半字节的最高位如果

26、低半字节的最高位D3D3有进位,则有进位,则AC=1AC=1,否,否则则AC=OAC=O。 (3)(3)软件标志软件标志FO(PSW.5)FO(PSW.5):这是用户定义的一:这是用户定义的一个状态标志。可通过软件对它置位、清零,在个状态标志。可通过软件对它置位、清零,在编程时,也常测试其是否建起而进行程序分支。编程时,也常测试其是否建起而进行程序分支。下 页上 页返 回 (4) (4)工作寄存器区选择位工作寄存器区选择位RSlRSl、RS0(PSW.4RS0(PSW.4、PSW.3)PSW.3):可借软件置位或清零,以选定:可借软件置位或清零,以选定4 4个工作个工作寄存器中的一个区投入工作

27、。寄存器中的一个区投入工作。 (5)(5)溢出标志溢出标志OV(PSW.2)OV(PSW.2):作有符号数加法、:作有符号数加法、减法时由硬件置位或清除,以指示运算结果是减法时由硬件置位或清除,以指示运算结果是否溢出。否溢出。OV=1OV=1反映它已超出了累加器以补码形反映它已超出了累加器以补码形式表示一个有符号数的范围式表示一个有符号数的范围(-128(-128+127)+127)。 (6)(6)奇偶标志奇偶标志P(PSW.O)P(PSW.O):每执行一条指令,单:每执行一条指令,单片机都能根据片机都能根据A A中中1 1的个数的奇偶自动令的个数的奇偶自动令P P置位或置位或清零:奇为清零:

28、奇为1 1,偶为,偶为O O。此标志对串行通信的数。此标志对串行通信的数据传输非常有用。据传输非常有用。下 页上 页返 回2.2.2 2.2.2 以定时控制逻辑为中心的控制器以定时控制逻辑为中心的控制器 控制器是控制器是CPUCPU的大脑中枢,包括定时控制逻辑,的大脑中枢,包括定时控制逻辑,指令寄存器、译码器、数据指示器指令寄存器、译码器、数据指示器DPTRDPTR、程序、程序计数器计数器PCPC、堆指针、堆指针SPSP、RAMRAM地址寄存器、地址寄存器、1616位地位地址缓冲器等。能根据不同的指令产生相应的操址缓冲器等。能根据不同的指令产生相应的操作时序和控制信号。作时序和控制信号。 程序

29、计数器程序计数器PCPC:专门用来控制指令执行顺序:专门用来控制指令执行顺序的寄存器,单片机上电的寄存器,单片机上电( (或复位或复位) )时,时,PCPC自动装自动装入入0000H0000H,一般情况下单片机每取一次机器码,一般情况下单片机每取一次机器码,PCPC就自动加就自动加1 1,从而保证了指令的顺序执行。,从而保证了指令的顺序执行。PCPC的内容也可以被指令强迫改写。的内容也可以被指令强迫改写。下 页上 页返 回 数据指示器数据指示器DPTRDPTR:它由:它由DPHDPH、DPLDPL两个两个8 8位的专位的专用寄存器组成,用寄存器组成,1616位的地址指针用于访问单片位的地址指针

30、用于访问单片机外部数据存储器或扩展的机外部数据存储器或扩展的I IO O口。口。 堆栈指针堆栈指针SPSP:堆栈建在片内:堆栈建在片内RAMRAM区,具体位置区,具体位置由由SPSP的内容规定,的内容规定, SPSP总是指向栈顶,它是一个总是指向栈顶,它是一个8 8位的专用寄存器,复位时,位的专用寄存器,复位时,(SP) =07H(SP) =07H,用户,用户可以通过软件对可以通过软件对SPSP直接赋值。堆栈是向上生成直接赋值。堆栈是向上生成的,即压栈时,使的,即压栈时,使SPSP的内容增的内容增1 1后作压人操作,后作压人操作,出栈时,先把栈顶的数据弹出,然后使出栈时,先把栈顶的数据弹出,然

31、后使SPSP的内的内容减容减1 1。下 页上 页返 回2.3 MCS-512.3 MCS-51单片机时钟电路及单片机时钟电路及CPUCPU的工作时序的工作时序2.3.1 2.3.1 时钟电路时钟电路 1 1NMOSNMOS型单片机时钟电路型单片机时钟电路 时钟电路控制着单片机的工作节奏。时钟电路控制着单片机的工作节奏。MCS-51MCS-51单单片机允许的时钟频率典型值为片机允许的时钟频率典型值为12MHz12MHz。时钟频率主。时钟频率主要由晶振的频率决定,电容要由晶振的频率决定,电容C Cl l和和C C2 2的作用:一是起的作用:一是起振,二是对频率微调振,二是对频率微调 (C(C1 1

32、、C C2 2变大,变大,f f变小变小) ),典型,典型值为值为30pF30pF。图。图2.4b2.4b是从外部直接输入时钟的电路。是从外部直接输入时钟的电路。图图2.4 2.4 NMOSNMOS型单型单片机的时片机的时钟电路原钟电路原理图理图 下 页上 页返 回 2 2CMOSCMOS型单片机时钟电路型单片机时钟电路 CM0SCM0S型单片机内部有一个可控的反相放大器,外型单片机内部有一个可控的反相放大器,外接晶振接晶振( (或陶瓷谐振器或陶瓷谐振器) )和电容组成振荡器,图和电容组成振荡器,图2.5a2.5a为为CMOSCMOS型单片机时钟电路图。振荡器工作受型单片机时钟电路图。振荡器工

33、作受PDPD端控端控制,由软件置制,由软件置“l”PD(l”PD(即特殊功能寄存器即特殊功能寄存器PCON.1)PCON.1),使使PD=0PD=0,振荡器停止工作,单片机停止工作,以达,振荡器停止工作,单片机停止工作,以达到节电目的。清零到节电目的。清零PDPD,使振荡器工作,单片机正常,使振荡器工作,单片机正常运作。运作。CM0SCM0S型也可直接从外部输入时钟,如图型也可直接从外部输入时钟,如图2.5b2.5b。图图2.5 2.5 CMOSCMOS型单型单片机的时片机的时钟电路原钟电路原理图理图下 页上 页返 回2.3.2 CPU2.3.2 CPU的工作时序的工作时序 一条指令可以分解为

34、若干基本的微操作,而一条指令可以分解为若干基本的微操作,而这些微操作所对应的脉冲信号,在时间上有严这些微操作所对应的脉冲信号,在时间上有严格的先后次序,这些次序就是单片机的时序。格的先后次序,这些次序就是单片机的时序。图图2.62.6表明了各种周期的相互关系。表明了各种周期的相互关系。下 页上 页返 回 图图2.6 MCS-512.6 MCS-51单片机各种周期的相互关系单片机各种周期的相互关系 1) 1) 振荡周期:振荡源的周期。振荡周期:振荡源的周期。 2) 2) 时钟周期:状态周期或时钟周期:状态周期或S S周期。时钟周期周期。时钟周期是振荡周期的两倍,时钟周期被是振荡周期的两倍,时钟周

35、期被P1P1节拍和节拍和P2P2节节拍。拍。P1P1信号有效时,这时通常完成算术逻辑操信号有效时,这时通常完成算术逻辑操作;作;P2P2信号有效时,内部寄存器与寄存器间的信号有效时,内部寄存器与寄存器间的传输一般在此状态发生。传输一般在此状态发生。下 页上 页返 回 3) 3) 机器周期:一个机器周期由机器周期:一个机器周期由6 6个状态个状态(s1(s1、s2S6)s2S6)组成,即组成,即6 6个时钟周期,个时钟周期,1212个振荡周期。个振荡周期。可以用机器周期把一条指令划分成若干个阶段,可以用机器周期把一条指令划分成若干个阶段,每个机器周期完成某些规定操作。每个机器周期完成某些规定操作

36、。 4) 4) 指令周期:执行一条指令所占用的全部时指令周期:执行一条指令所占用的全部时间,一个指令周期通常含有间,一个指令周期通常含有1 14 4个机器周期。个机器周期。 若外接晶振为若外接晶振为12MHz12MHz时,振荡周期时,振荡周期=1=112s12s;时钟周期时钟周期=1=16s6s;机器剧期;机器剧期=ls=ls;指令周期;指令周期=1=14s4s。 在在MCS-51MCS-51的指令系统中,指令周期有单周期、的指令系统中,指令周期有单周期、双周期和双周期和4 4周期指令。周期指令。下 页上 页返 回 图图2.72.7列举了几种典型指令的列举了几种典型指令的CPUCPU取指令和执

37、取指令和执行指令的时序。由于行指令的时序。由于CPUCPU取出指令和执行指令的取出指令和执行指令的时序信号不能从外部观察到,所以图中列出了时序信号不能从外部观察到,所以图中列出了XTAL2(18XTAL2(18脚脚) )端出现的振荡器信号和芯片端出现的振荡器信号和芯片ALE(30ALE(30脚脚) )端的信号作参考。在访问外部数据存储器的端的信号作参考。在访问外部数据存储器的机器周期内,机器周期内,ALEALE信号一次有效,即执行信号一次有效,即执行MOVXMOVX指指令时,只在令时,只在S1P2S1P2至至S2P1S2P1期间产生期间产生ALEALE信号,因此信号,因此ALEALE的频率是不

38、稳定的。所以,当我们把的频率是不稳定的。所以,当我们把AIEAIE引引脚作为时钟输出时,在脚作为时钟输出时,在CPUCPU执行执行MOVXMOVX指令时,会指令时,会丢失一个周期,这一点应特别注意。图丢失一个周期,这一点应特别注意。图2.72.7中的中的ALEALE信号只是一般的情况,仅作参考。信号只是一般的情况,仅作参考。下 页上 页返 回图图2.7 2.7 MCS-51MCS-51单片机单片机典型指典型指令的取令的取指执指执行时序行时序 下 页上 页返 回 对于单周期指令,从对于单周期指令,从SlP2SlP2开始执行指令,这开始执行指令,这时操作码被锁存到指令寄存器内。如果是双字时操作码被

39、锁存到指令寄存器内。如果是双字节指令,则在同一机器周期的节指令,则在同一机器周期的S4P2S4P2读人第二个读人第二个字节。如果是单字节指令,则丢弃字节。如果是单字节指令,则丢弃S4P2S4P2读人第读人第二个字节,且程序计计数器不加二个字节,且程序计计数器不加1 1。这两类指令。这两类指令都会在都会在S6P2S6P2结束时完成操作。结束时完成操作。 对于单字节双周期指令,在两个机器周期内对于单字节双周期指令,在两个机器周期内发生发生4 4次读操作码的操作,但后次读操作码的操作,但后3 3次读操作郁是次读操作郁是无效的。另外,比较特殊的是无效的。另外,比较特殊的是MUL(MUL(乘法乘法) )

40、和和DIV(DIV(除法除法) )指令是单字节指令是单字节4 4周期的。周期的。 图中图中d d表示访问外部数据存储器指令表示访问外部数据存储器指令MOVXMOVX的的下 页上 页返 回时序,这是一条单字节双周期指令,一般情况时序,这是一条单字节双周期指令,一般情况下,两个指令码字节在一个机器周期内从程序下,两个指令码字节在一个机器周期内从程序存储器取出,而在存储器取出,而在MOVXMOVX执行其期间,少执行两执行其期间,少执行两次取指操作。在第次取指操作。在第l l机器周期机器周期S5S5开始时,送出外开始时,送出外部数据存储器地址,随后读或写数据。读写期部数据存储器地址,随后读或写数据。读

41、写期间间ALEALE端不输出有效信号端不输出有效信号( (会丢失一个会丢失一个AIEAIE周期周期) ),在第在第2 2机器周期,即外部数据存储器已被寻址和机器周期,即外部数据存储器已被寻址和选通后,也不产生取指操作。选通后,也不产生取指操作。2.4 MCS-5l2.4 MCS-5l单片机存储器分类及配置单片机存储器分类及配置 MCS-51MCS-51单片机存储器从物理结构上可分为:单片机存储器从物理结构上可分为:片内、片外程序存储器与片内、片外数据存储片内、片外程序存储器与片内、片外数据存储下 页上 页返 回器器4 4个部分;从寻址空间分布分为:程序存储器、个部分;从寻址空间分布分为:程序存

42、储器、内部数据存储器和外部数据存储器内部数据存储器和外部数据存储器3 3个部分;从个部分;从功能上分为:程序存储器、内部数据存储器、功能上分为:程序存储器、内部数据存储器、特殊功能寄存器、位地址空间和外部数据存储特殊功能寄存器、位地址空间和外部数据存储器器5 5个部分。图个部分。图2.82.8是是MCS-51MCS-51单片机存储器空间单片机存储器空间结构图。图结构图。图2.8a2.8a是程序存储器,图是程序存储器,图2.8b2.8b是内部是内部数据存储器,图数据存储器,图2.8c2.8c是外部数据存储器。是外部数据存储器。下 页上 页返 回 图图2.8 MCS-5l2.8 MCS-5l单片机

43、存储器空间结构图单片机存储器空间结构图 MCS-5lMCS-5l系列单片机有系列单片机有5 5个独立的存储空间:个独立的存储空间: 64KB64KB程序存储器空间程序存储器空间(0(00FFFFH)0FFFFH)。 256B256B内部内部RAMRAM空间空间(0(00FFH)0FFH)。 128B128B内部特殊功能寄存器空间内部特殊功能寄存器空间(80(800FFH)0FFH)。 位寻址空间位寻址空间(0(00FFH)0FFH)。 64KB64KB外部数据存储器外部数据存储器(RAM(RAMI0)I0)空间空间(0(00FFFFH)0FFFFH)。下 页上 页返 回2.4.1 2.4.1

44、程序存储器程序存储器 MCS-51MCS-51的程序存储器的程序存储器空间为空间为64KB64KB。0 0开始的部开始的部分程序存储器分程序存储器(4KB(4KB,8KB8KB,)可以在片内也可以在片内也可以在片外,由单片机可以在片外,由单片机的输入引脚的输入引脚EAEA的电平控的电平控制。若单片机内部有程制。若单片机内部有程序存储器,则单片机的序存储器,则单片机的EAEA引脚必须接引脚必须接Vcc(+5V)Vcc(+5V),PCPC的值在的值在0 00FFFH0FFFH时,时,图图2.9 MCS-512.9 MCS-51复位和中断入口复位和中断入口 下 页上 页返 回CPUCPU取指令时访问

45、内部程序存储器;取指令时访问内部程序存储器;PCPC值大于值大于0FFFH0FFFH时,访问外部程序存储器。如果时,访问外部程序存储器。如果EAEA接接Vss(Vss(地地) ),则,则CPUCPU总是从外部的程序存储器中总是从外部的程序存储器中取指令。引脚取指令。引脚PSENPSEN输出外部程序存储器的读输出外部程序存储器的读选通信号,仅当选通信号,仅当CPUCPU访问外部程序存储器时,访问外部程序存储器时,PSENPSEN才有效才有效( (输出负脉冲输出负脉冲) )。对于内部没有程。对于内部没有程序存储器的单片机必须外接程序存储器,引序存储器的单片机必须外接程序存储器,引脚脚EAEA必须接

46、地。必须接地。 MCS-5lMCS-5l复位以后,复位以后,PCPC为为O O,CPUCPU从地址从地址0 0开始开始执行程序。另外,执行程序。另外,MCS-51MCS-51的中断入口也是固的中断入口也是固定的,程序存储器地址定的,程序存储器地址0003H0003H、000BH000BH、0013H0013H、001BH001BH和和0023H0023H单元为中断人口单元为中断人口 。 2.4.2 2.4.2 数据存储器数据存储器 MCS-51MCS-51内部数据存内部数据存储器空间为储器空间为256B256B,但,但一般为一般为128B(128B(如如805l805l、87518751、80

47、31)8031)或或256B256B( (如如80528052、80328032、8752)8752)。内部。内部RAMRAM中不中不同的区域从功能和用同的区域从功能和用途方面来划分,如图途方面来划分,如图所示分为所示分为3 3个区域:个区域: 2.10 MCS-512.10 MCS-51内部内部RAMRAM功能划分功能划分 工作寄存器区、位寻址区、堆栈和数据缓冲器区。工作寄存器区、位寻址区、堆栈和数据缓冲器区。 1 1工作寄存器区图工作寄存器区图下 页上 页返 回下 页上 页返 回内部内部RAMRAM的的00H00H1FH1FH区域为四组寄存器区,每个区域为四组寄存器区,每个区有区有8 8个

48、工作寄存器个工作寄存器R0R0R7R7。 CPUCPU当前使用的工当前使用的工作寄存器区是由程序状态字作寄存器区是由程序状态字PSWPSW的第三位的第三位PSW.3(RS0)PSW.3(RS0)和第四位和第四位PSW.4(RS1)PSW.4(RS1)指示的,寄存指示的,寄存器和器和RAMRAM单元地址对应关系为:单元地址对应关系为: 工作寄存器工作寄存器0 0组组R0R0R7R7:000007H07H,RS1=0RS1=0,RS0=0RS0=0 工作寄存器工作寄存器1 1组组R0R0R7R7:08080FH0FH,RS1=0RS1=0,RS0=1RS0=1 工作寄存器工作寄存器2 2组组R0R

49、0R7R7:101017H17H,RS1=1RS1=1,RS0=0RS0=0 工作寄存器工作寄存器3 3组组R0R0R7R7:18181FH1FH,RS1=1RS1=1,RS0=1RS0=1 对于这部分对于这部分RAMRAM,CPUCPU对它们的操作可视为工对它们的操作可视为工作寄存器作寄存器( (寄存器寻址寄存器寻址) ),也可视为一般,也可视为一般RAM(RAM(直直接寻址或寄存器间接寻址接寻址或寄存器间接寻址) )。 下 页上 页返 回 2 2位寻址区位寻址区 MCS-51MCS-51的内部的内部RAMRAM中中20H20H2FH2FH单元以及特殊功单元以及特殊功能寄存器中地址为能寄存器

50、中地址为8 8的倍数的特殊功能寄存器可的倍数的特殊功能寄存器可以位寻址。这些以位寻址。这些RAMRAM单元和特殊功能寄存器既有单元和特殊功能寄存器既有一个字节地址,每一位又有一个字节地址,每一位又有1 1个位地址,既可以个位地址,既可以字节操作也可以位操作。表字节操作也可以位操作。表2.52.5列出了内部列出了内部RAMRAM中位寻址区的位地址编址,表中位寻址区的位地址编址,表2.62.6列出了基本的列出了基本的特殊功能寄存器中具有位寻址功能的位地址编特殊功能寄存器中具有位寻址功能的位地址编址。址。20H20H2FH2FH位寻址区域,占据位地址空间的位寻址区域,占据位地址空间的00H00H7F

51、H7FH。下 页上 页返 回表表2.5 2.5 内部内部RAMRAM中位地址表中位地址表下 页上 页返 回表表2.2.6 6特殊功能寄存器地址映象特殊功能寄存器地址映象 下 页上 页返 回 3 3堆栈和数据缓冲器堆栈和数据缓冲器 堆栈是堆栈是器用于保护器用于保护CPUCPU的现场一个后进先出的的现场一个后进先出的RAMRAM缓冲。缓冲。MCS-51MCS-51的堆栈一般设在的堆栈一般设在30307FH(7FH(或或3030FFH)FFH)。栈顶位置由。栈顶位置由SPSP所指出。复位以后所指出。复位以后(SP)(SP)为为07H07H。内部。内部RAMRAM中除工作寄存器、位标志和堆中除工作寄存

52、器、位标志和堆栈区以外的单元都可以作为数据缓冲器使用,栈区以外的单元都可以作为数据缓冲器使用,存放输入的数据或运算的结果。存放输入的数据或运算的结果。 4 4特殊功能寄存器特殊功能寄存器(SFR)(SFR) MCS-51 MCS-51内部的内部的I I0 0口锁存器以及定时器、串口锁存器以及定时器、串行口、中断等各种控制寄存器和状态寄存器都行口、中断等各种控制寄存器和状态寄存器都作为作为SFRSFR,离散地分布在,离散地分布在RAMRAM的的8080FFHFFH。下 页上 页返 回 累加器累加器ACCACC(A A):用于存放参加运算的操作):用于存放参加运算的操作数和运算的结果。数和运算的结

53、果。 寄存器寄存器B B:在乘法和除法运算中存放操作数和:在乘法和除法运算中存放操作数和运算的结果,在其他运算中,存中间结果。运算的结果,在其他运算中,存中间结果。 SPSP:8 8位的堆栈指针。数据进入堆栈前位的堆栈指针。数据进入堆栈前SPSP加加l l,数据退出堆栈后数据退出堆栈后SPSP减减1 1,复位后,复位后SPSP为为07H07H。若不。若不对对S S设置初值,则堆栈在设置初值,则堆栈在08H08H开始的区域。开始的区域。 DPTRDPTR:1616位的数据指针。由位的数据指针。由DPHDPH和和DPLDPL所组成,所组成,一般作为访问外部数据存储器的地址指针使用,一般作为访问外部

54、数据存储器的地址指针使用,对对DPTRDPTR操作可以对操作可以对DPHDPH和和DPLDPL单独进行。单独进行。 特殊功能寄存器空间中有些单元是空着的,特殊功能寄存器空间中有些单元是空着的,作为保留,用户程序不要对其操作。作为保留,用户程序不要对其操作。 下 页上 页返 回 5 5外部外部RAMRAM和和I IO O口口 MCS-51MCS-51最多可以扩展最多可以扩展64KB64KB的外部的外部RAMRAM和和I I0 0口。口。外部扩展外部扩展RAMRAM和和I I0 0口是统一编址的,也就是说口是统一编址的,也就是说一个一个I IO O口相当于口相当于RAMRAM的一个存储单元,的一个

55、存储单元,CPUCPU都都是通过是通过MOVXMOVX指令对它们进行读写操作的。指令对它们进行读写操作的。2.5 CHMOS2.5 CHMOS型单片机的低功耗工作方式型单片机的低功耗工作方式 MCS-51MCS-51系列的系列的CHMOSCHMOS型单片机提供两种节电工型单片机提供两种节电工作方式:空闲方式作方式:空闲方式( (等待方式等待方式) )和掉电方式和掉电方式( (停机停机方式方式) ),特别适用于电源功耗要求很低的应用场,特别适用于电源功耗要求很低的应用场合。合。CHMOSCHMOS型单片机的工作电源和后备电源加在型单片机的工作电源和后备电源加在同一个引脚同一个引脚VccVcc,正

56、常工作电流为,正常工作电流为111120mA20mA,空闲状态时为空闲状态时为1.71.75mA5mA,掉电状态时为,掉电状态时为5 5下 页上 页返 回50A50A。空闲方式和掉电方式的内部控制电路如。空闲方式和掉电方式的内部控制电路如下图所示。在空闲方式中,振荡器保持工作,下图所示。在空闲方式中,振荡器保持工作,而而CPUCPU停止工作。在掉电方式中,振荡器停止,停止工作。在掉电方式中,振荡器停止,单片机内部所有的功能部件停止工作。单片机内部所有的功能部件停止工作。 图图2.11 2.11 空闲方式和掉电方式控制电路图空闲方式和掉电方式控制电路图 下 页上 页返 回 CHMOS CHMOS

57、型单片机的节电工作方式是由特殊功能型单片机的节电工作方式是由特殊功能寄存器寄存器PCONPCON控制的,控制的,PCONPCON的格式如下:的格式如下: 其中:其中: SMODSMOD:串行口波特率倍率控制位。:串行口波特率倍率控制位。 GFlGFl:通用标志位。:通用标志位。 GF0GF0:通用标志位。:通用标志位。 PDPD:掉电方式控制位,置:掉电方式控制位,置“1”1”后,使后,使器件进入掉电方式。器件进入掉电方式。 IDLIDL:空闲方式控制位,置:空闲方式控制位,置“l”l”后,使后,使器件进人空闲方式。器件进人空闲方式。 下 页上 页返 回 PCON.4 PCON.4PCON.6

58、PCON.6为保留位,对于为保留位,对于HM0SHM0S型型单片机仅单片机仅SMODSMOD位有效。对于位有效。对于CHMOSCHMOS型单片机,型单片机,当当IDLIDL和和PDPD同时置同时置“l”l”时,也使器件进入掉时,也使器件进入掉电方式。电方式。2.5.1 2.5.1 空闲方式空闲方式 CPUCPU执行一条置执行一条置“l”PCON.0(IDL)l”PCON.0(IDL)的指令,的指令,就进入空闲方式状态。中断、串行口和定时就进入空闲方式状态。中断、串行口和定时器继续工作。器继续工作。CPUCPU现场现场(SP(SP、PCPC、PSWPSW、ACC)ACC)、内部内部RAMRAM和

59、其他特殊功能寄存器内容维持不和其他特殊功能寄存器内容维持不变,引脚保持进入空闲方式时的状态,变,引脚保持进入空闲方式时的状态,ALEALE和和PSENPSEN保持逻辑高电平。保持逻辑高电平。 下 页上 页返 回 进入空闲方式以后,有两种方法使器件退进入空闲方式以后,有两种方法使器件退出空闲方式:出空闲方式: 一是被允许的中断源请求中断时,由内部一是被允许的中断源请求中断时,由内部的硬件电路清零的硬件电路清零PC0N.0(IDL)PC0N.0(IDL),中止空闲方,中止空闲方式,式,CPUCPU响应中断。响应中断。PCONPCON中的中的GF0GF0或或GFlGFl可用可用来指示中断发生在正常工作

温馨提示

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

评论

0/150

提交评论