1、主要内容主要内容vMCS-51总体结构总体结构vMCS-51时钟及时钟及CPU工作时序工作时序vMCS-51存储器配置存储器配置 MCS-51系列基本产品型号:系列基本产品型号:8051、8031、8751称为称为 51子系列。子系列。不同型号不同型号MCS-51单片机单片机CPU处理能力和指令系统完全兼容,只是存储器处理能力和指令系统完全兼容,只是存储器和和I/O接口的配置有所不同。接口的配置有所不同。片片内内 ROM 形形式式 无无 ROM EPROM EEPROM 片片内内ROM 容容量量 片片内内RAM容容量量 定定时时/计计数数器器 中中断断源源 51 子子系系列列 8031 805
2、1 8751 8951 4KB 128B 2 5 52 子子系系列列 8032 8052 8752 8952 8KB 256B 3 6 v硬件硬件基本配置:基本配置:8位位CPU片内片内ROM/EPROM、RAM 片内并行片内并行 I/O接口接口 片内片内16位定时器位定时器/计数器计数器 片内中断处理系统片内中断处理系统 片内全双工串行片内全双工串行I/O口口vMCS-51单片机引脚单片机引脚 电源引脚电源引脚Vcc和和Vss(GND)外接晶振引脚外接晶振引脚XTAL1,XTAL2 I/O引脚引脚P0、P1、P2和和P3 控制和复位引脚控制和复位引脚ALE、RST PSENEA8031805
3、18751 1I/O口线功能口线功能4个个8位并行位并行 I/O 接口引脚接口引脚:P0.0P0.7(低(低8位地址、数据、双向位地址、数据、双向三态三态I/O口)口)P1.0P1.7(准双向(准双向I/O口)口)P2.0P2.7(高(高8位地址、准双向位地址、准双向I/O)P3.0P3.7(准双向(准双向I/O口、口、每条引脚每条引脚都有第二功能都有第二功能)为多功能引脚,可自动)为多功能引脚,可自动切换用作控制总线和或切换用作控制总线和或I/O 接口外部引接口外部引脚。脚。803180518751 2控制线控制线 :地址锁存允许信号端地址锁存允许信号端 :外部程序存储器读选通外部程序存储器
4、读选通 信号端信号端 :程序存储器选择信号端程序存储器选择信号端 和编程电源输入端和编程电源输入端RST/VPD:复位信号端和后备电源复位信号端和后备电源 输入端。输入端。v 输入输入10ms以上高电平脉冲,以上高电平脉冲,单片机复位单片机复位(初始化)(初始化)。v VPD使用后备电源,可实现掉电保护使用后备电源,可实现掉电保护。ALE/PROGPSENPPEA/V803180518751 vMCS-51单片机内部结构单片机内部结构(图图)中央处理器中央处理器 CPU内部结构内部结构1.算术逻辑运算单元算术逻辑运算单元ALU(8位位)+、算术运算,与、或、非、异或逻辑运算、循环算术运算,与、
5、或、非、异或逻辑运算、循环移位、位处理。移位、位处理。2.寄存器阵列寄存器阵列(1)工作寄存器工作寄存器R0R7(8位)位)暂存运算数据和中间结果。暂存运算数据和中间结果。4个工作寄存器区,工作寄存器个工作寄存器区,工作寄存器0区区3区区。每个区均含每个区均含8个寄存器个寄存器R0R7。用。用PSW中的两位中的两位PSW.4和和PSW.3来切换来切换选择四个工作寄存器区中的一个作为选择四个工作寄存器区中的一个作为当前工作寄存器区当前工作寄存器区进行读、写操作进行读、写操作。(2)累加器累加器ACC(8位位)需要需要ALU处理的数据和计算结果多数要经过处理的数据和计算结果多数要经过A累加器。累加
6、器。(3)寄存器寄存器B(8位位)与与A累加器配合执行乘、除运算。亦可作通用寄存器。累加器配合执行乘、除运算。亦可作通用寄存器。(4)程序状态字程序状态字PSW(8位位)存放存放ALU运算过程的标志状态运算过程的标志状态Cy AC F0 RS1 RS0 OV P进位进位/辅助进位辅助进位/用户定用户定/选工作寄选工作寄/溢出标志溢出标志/奇偶标志奇偶标志(5)数据指针数据指针DPTR(16位位)存放片外存储器地址,作为片外存储器的指针。可分成两存放片外存储器地址,作为片外存储器的指针。可分成两个个8位寄存器位寄存器DPH、DPL使用。使用。(6)堆栈指针堆栈指针SP(8位位)按按“先进后出、后
7、进先出先进后出、后进先出”的原则存取数据的存储区。的原则存取数据的存储区。MCS-51堆栈设在片内堆栈设在片内RAM区。数据入栈区。数据入栈/出栈时,出栈时,SP自动加自动加1/减减 1,其内容始终为栈顶地址。,其内容始终为栈顶地址。复位时:复位时:(SP)=07H,编程时必须在初始化程序中对,编程时必须在初始化程序中对SP进行初进行初始化。始化。(7)程序计数器程序计数器PC(16位位)CPU总是按总是按PC的指示读取程序。的指示读取程序。PC可自动加可自动加1。因。因此此CPU执行程序一般是顺序方式。当发生转移、子程执行程序一般是顺序方式。当发生转移、子程序调用、中断和复位等操作,序调用、
8、中断和复位等操作,PC被强制改写,程序执被强制改写,程序执行顺序也发生改变。行顺序也发生改变。复位时复位时,(PC)=0000H。v三总线结构:三总线结构:1.地址总线地址总线(Address Bus)总线宽度为16位,可访问 64K外部存储器。A0A7P0口(经锁存器)A8A15P2口2.数据总线数据总线(Data Bus)总线宽度为8位(P0)3.控制总线控制总线(Control Bus)由P3口和4根独立控制线组成MCS-51时钟时钟v时 钟 频 率 范 围 要 求 在时 钟 频 率 范 围 要 求 在1.2MHz12MHz之间。之间。1内部时钟方式:内部时钟方式:内部一个内部一个高增益
9、反相放大器与片外石英高增益反相放大器与片外石英晶体或陶瓷谐振器构成了一个晶体或陶瓷谐振器构成了一个自激振荡器。自激振荡器。晶体振荡器的振荡频率决定单晶体振荡器的振荡频率决定单片机的时钟频率。片机的时钟频率。2外部时钟方式:外部时钟方式:外部振荡器输入时钟信号。外部振荡器输入时钟信号。XTAL1 单片机单片机 XTAL2 振荡周期:振荡周期:为单片机提供定时信号的振荡源周期。为单片机提供定时信号的振荡源周期。时钟周期:时钟周期:又称状态周期或又称状态周期或S周期。时钟周期是振周期。时钟周期是振 荡周期的两倍荡周期的两倍。机器周期机器周期:完成一个基本操作所需要的时间。:完成一个基本操作所需要的时
10、间。一个机器周期由一个机器周期由12个时钟周期组成。个时钟周期组成。指令周期指令周期:一条指令的执行时间。:一条指令的执行时间。以机器周期为单位可分为:以机器周期为单位可分为:单周期单周期、双双 周期周期和和四周期四周期指令。指令。若外接晶振为若外接晶振为12MHz时,时,MCS-51单片机的四个周单片机的四个周期的具体值为:期的具体值为:振荡周期振荡周期112 us;时钟周期时钟周期16 us;机器周期机器周期1 us;指令周期指令周期14 us;对于单字节单周期指令,在对于单字节单周期指令,在S1P2把指令码读入指令寄存器,并开始执行把指令码读入指令寄存器,并开始执行指令,在指令,在S4P
11、2仍旧读下一指令的操作码,但被读进来的字节不予考虑仍旧读下一指令的操作码,但被读进来的字节不予考虑(要丢弃),且(要丢弃),且PC不加不加1。对于双字节单周期指令,在。对于双字节单周期指令,在S1P2把指令码读把指令码读入指令寄存器,并开始执行指令,在入指令寄存器,并开始执行指令,在S4P2读入指令的第二字节。无论是读入指令的第二字节。无论是单字节还是双字节均在单字节还是双字节均在S6P2结束该指令的操作。结束该指令的操作。(a)单字节指令单字节指令(b)双字节指令双字节指令对于单字节双周期指令,在两个机器周期之内要进行对于单字节双周期指令,在两个机器周期之内要进行4次读操作。只是后次读操作。
12、只是后3次次读操作无效。读操作无效。在片外存储器不作存取时,每一个机器周期中在片外存储器不作存取时,每一个机器周期中ALE信号有效两次,具有稳信号有效两次,具有稳定的频率。所以,定的频率。所以,ALE信号是时钟振荡频率的信号是时钟振荡频率的1/6,可以用作外部设备的时,可以用作外部设备的时钟信号。钟信号。在对片外在对片外RAM进行读写时,进行读写时,ALE信号会出现非周期现象。信号会出现非周期现象。访问片外访问片外RAM的的单字节双周期指令的时序如下图所示,单字节双周期指令的时序如下图所示,在第二个机器周期内没有读操作码的在第二个机器周期内没有读操作码的操作,而是进行外部数据存储器的寻址和数据
13、选通操作,而是进行外部数据存储器的寻址和数据选通,所以在,所以在S1P2S2P1间无间无ALE信号。信号。MCS-51单片机存储器空间结构图单片机存储器空间结构图图(图(a)是程序存储器,图()是程序存储器,图(b)是内部数据存储器,)是内部数据存储器,图(图(c)是外部数据存储器)是外部数据存储器 一、五个独立的存储空间一、五个独立的存储空间164KB程序存储器空间程序存储器空间(00FFFFH)2.256B片内数据存储器空间片内数据存储器空间(00FFH)3.128B片内特殊功能寄存器空间片内特殊功能寄存器空间(800FFH)4.位寻址空间位寻址空间(00H0FF)5.64KB外部数据存储
14、器空间外部数据存储器空间(00FFFFH)MCS-51存储器配置存储器配置程序存储器程序存储器6464KB KB 程序存储器空间程序存储器空间 不同电平,选择片内或片外低位存储单元不同电平,选择片内或片外低位存储单元 特殊存储单元:特殊存储单元:复位入口复位入口:0000H 中断入口中断入口:0003HINT0 000BHT0 0013H INT1 001BHT1 0023HSISOEA数据存储器数据存储器2)特殊功能寄存器特殊功能寄存器 SFR占用字节地址:占用字节地址:80HFFH位寻址寄存器:位寻址寄存器:其字节地址可被其字节地址可被8整除。整除。v 专用寄存器:专用寄存器:A、B、PS
15、W、DPTR、SPv I/O接口寄存器:接口寄存器:P 0、P 1、P 2、P 3、SBUF、TMOD、TCON、SCON 表表2-5 特殊功能寄存器地址映象特殊功能寄存器地址映象 v存储器结构注意点存储器结构注意点1 1ROMROM(80518051)引脚引脚 片内:片内:4KB;片外:;片外:64KB64KB中的中的60KB(“MOVC”););2 2RAMRAM 片内:片内:256B(00H-0FFH)256B(00H-0FFH),片外:片外:64KB(0000H-0FFFFH)64KB(0000H-0FFFFH),片内外片内外RAMRAM总和总和超过超过64KB,系统用两种操作码助记符
16、区,系统用两种操作码助记符区分片内、片外分片内、片外RAMRAM:“MOV”对片内对片内RAMRAM寻址,寻址,“MOVX”对片外对片外RAMRAM寻址,寻址,EA片内片内RAMRAM由以下几部分组成:由以下几部分组成:(1 1)工作寄存器区()工作寄存器区(00H-1FH00H-1FH)分为四个区分为四个区 PSW.4和和PSW.3;(2 2)位寻址区()位寻址区(20H-2FH20H-2FH)例:位置位指令:例:位置位指令:SETB 7FHSETB 7FH;其中其中7FH7FH表示表示20H-2FH20H-2FH中中物理地址为物理地址为2FH的的RAMRAM单元的单元的第七第七位位!也可将
17、物理地址和位地址结合起来表示!也可将物理地址和位地址结合起来表示,如位地址如位地址00H可可表示成表示成20H.0。(3 3)堆栈和数据缓冲区()堆栈和数据缓冲区(30H-7FH30H-7FH)进栈时,堆栈指针(进栈时,堆栈指针(SPSP)先加)先加1 1再存再存数据;出栈时,数据;出栈时,先退先退数据再将(数据再将(SPSP)减)减1 1。复位复位时,(时,(SP)=07H!(4 4)SFR(SFR(离散离散地分布在地分布在80H-0FFH80H-0FFH地址范围内地址范围内)共共2121个个SFRSFR,80H-0FFH80H-0FFH中中不被不被SFRSFR占用的占用的RAMRAM单元实际并单元实际并不存在,无法访问。不存在,无法访问。