第二章MCS-51单片机芯片的结构及原理.ppt
文本预览下载声明
从逻辑上划分有3个存储器地址空间: 片内外统一编址的64 KB程序存储器地址空间, 内部128 B或256 B(对于52系列)数据存储器地址空间 外部64 KB的数据存储器地址空间,片内128 B的特殊功能寄存器(SFR)。 注意:在访问这3个不同的逻辑空间的时候,应选用不同形式的指令(例如:MOV、MOVC、MOVX)。如图2-4所示为MCS-51系列单片机存储器的分配图。 F0(PSW.5)用户标志位。用户可以根据自己的需要对F0位赋予一定的含义。F0可用软件置位或复位,也可以通过软件测试F0来控制程序的流向。 RS1、RS0(PSW.4、PSW.3)工作寄存器组选择控制位。用软件可对RS1、RS0作不同的组合,以确定工作寄存器(R0~R7)的组号。这两位与寄存器组的对应关系如下: OV(PSW.2)溢出标志。当进行带符号数补码运算时,如果有溢出,即当运算结果超出-128~+127的范围时,OV置1;无溢出时,OV清0。 —(PSW.1)为保留位,80C51未用,8052作为F1用户标志位,同F0。 P(PSW.0)奇/偶标志。每个指令周期均由硬件来置位或清0,以指出累加器A中1的个数的奇偶性。若1的个数为奇数,则P置位,否则清0。在串行通信中常用此标志位来校验数据传输的可靠性。 (5) 堆栈指针SP。堆栈是一个特殊的存储区,用来暂时存放数据和地址,它是按照“先进后出”的原则存放数据的。这种数据结构方式对于处理中断,调用子程序都非常方便。 在MCS-51单片机中通常指定片内数据存储区中的一部分作为堆栈。第1个进栈的数据其所在的存储单元称为栈底,对应最后进栈数据的存储单元叫栈顶。堆栈指针SP是一个8位特殊功能寄存器,它指出栈顶在片内RAM中的位置。每存入(或取出)一个字节数据,SP就自动加1(或减1),SP始终指向新的栈顶。由于系统复位后堆栈指针初始化值为07H,这使得堆栈实际从08H单元开始工作。堆栈指针SP的内容可由软件修改。 (6) 数据指针DPTR。数据指针DPTR是一个16位的特殊功能寄存器,由高位字节DPH和低位字节DPL组成。它主要用于存放16位地址,常用作间址寄存器和基址寄存器,以便对片外数据存储器和程序存储器进行访问。DPTR既可以作为一个16位寄存器来使用,也可以作为2个独立的8位寄存器DPH和DPL使用。 (7) 并行的I/O接口P0、P1、P2、P3均为8位。通过对这4个寄存器的读/写,可以实现数据从相应接口的输入/输出。 (8) 其余的特殊功能寄存器将在以后的章节中详细介绍。 使用注意事项: ? ?51系列21个可寻址的特殊功能寄存器是不连续地分散在内部RAM高128单元中。尽管还剩余许多空闲单元,但用户并不能使用。如果访问了这些单元,读出的为不定数,而写入的数被舍弃。而在52系列是可以将其他单元作为通用寄存器使用的。 ? 在22个特殊功能寄存器中,唯一一个不可寻址的特殊功能寄存器就是程序计数器PC,PC在物理上是独立的,不占据RAM单元,是一个不可寻址的特殊功能寄存器。 ? 对特殊功能寄存器只能使用直接寻址方式,在指令中即可使用寄存器符号表示,也可使用寄存器地址表示。 ? 特殊功能寄存器P0~P3分别是I/O端口P0~P3的锁存器。在MCS-51中可以把I/O口当作—般的特殊功能寄存器来使用,没有专门设置的口操作指令,全部采用统一的MOV指令,使用方便。 2) 可位寻址的特殊功能寄存器 在21个可寻址的特殊功能寄存器中,还有11个寄存器可以位寻址,如前面表2-4所示。 MCS-51单片机特殊功能寄存器中可位寻址共有83位,其中许多位还有其专用名称,寻址时既可使用位地址,也可使用位名称,如表2-5所示。特殊功能寄存器的可寻址位加上位寻址区的128个通用位,构成了MCS-51位处理器的整个数据位存储空间。 表2-5 特殊功能寄存器位地址表 2)指令执行与时序 计算机在执行指令时,一条指令经译码后产生若干个基本的微操作,这些微操作所对应的脉冲信号在时间上的先后次序称为计算机的时序。 ⑴有关CPU时序的几个概念 ①节拍与状态 把振荡脉冲的周期定义为节拍(用P表示)。振荡脉冲经过两分频后,就是单片机的时钟信号,把时钟信号的周期定义为状态(用S表示)。这样,一个状态就包含两个节拍,其前半周期对应的节拍叫节拍1(P1),后半周期对应的节拍叫节拍2(P2)。 ②时钟周期 时钟周期也称为状态周期(用S表示)。时钟周期是计算机中最基本的时间单位。在一个时钟周期内,CPU完成一个最基本的动作。MCS-51单片机中一个时钟周期为振荡周期的2倍。 ③机器周期 MCS-5
显示全部