当前位置:首页 > 单片机 > 单片机
[导读]MCS-51单片机的CPU字长为8位,内部包含运算器、控制器和特殊功能寄存器。由于特殊功能寄存器在功能和使用方法方面与存储器比较相似,因此将与存储器一同讲解。本小节仅介绍运算器和控制器的基本情况。

中央处理器(CPU)

MCS-51单片机的CPU字长为8位,内部包含运算器控制器和特殊功能寄存器。由于特殊功能寄存器在功能和使用方法方面与存储器比较相似,因此将与存储器一同讲解。本小节仅介绍运算器和控制器的基本情况。

1.运算器

运算器包含1个8位的算术逻辑运算单元(ALU)、2个暂存器(TMP1和TMP2)、累加器ACC、寄存器B、程序状态字寄存器(PSW)和1个布尔处理器。

算术逻辑运算单元ALU可以进行1个字节(8位二进制数)的加、减、乘、除等算术运算和“与”“或”“非”等逻辑运算。

累加器ACC和寄存器B均是8位寄存器。进行算术逻辑运算时,ACC提供数据和保存运算结果。在进行乘、除法运算时,寄存器B与ACC配合,提供数据并保存运算结果。

程序状态寄存器PSW是8位寄存器,其中的二进制位用于记录算术逻辑运算结果的状态,如加法是否产生进位、有符号运算结果的符号等。

布尔处理器以PSW中的最高位CY为位累加器,可以进行1个二进制位的逻辑运算,包括“与”“或”“非”等操作。

2.控制器

控制器是CPU的核心,控制、协调整个单片机系统的工作,包括程序计数器(PC)、指令寄存器(IR)、指令译码器(ID)、地址寄存器(AR)、时钟振荡器和定时控制电路等。

程序计数器PC是16位的寄存器,PC中的数作为地址指向程序存储器,由其确定接下来CPU将从程序存储器中的哪一个字节单元读取指令代码。单片机读取一条指令,PC中地址将自动改变,以指向下一个读取指令的存储单元。因为PC所提供的地址是16位的,所以MCS-51单片机所支持的程序存储区最大容量为216个字节单元,即64KB,其地址范围为0000H~FFFFH。

地址寄存器AR将接收PC的值,该值将被送上地址总线,用于选中程序存储器的存储单元。之后,该存储单元中存放的指令代码,将通过数据总线传送给IR。

IR中的指令代码将被送入ID。ID翻译该指令代码后,CPU将产生控制信号,用于控制单片机完成指令代码所指定的操作。

可见,PC的值决定了CPU取指令的顺序,也决定了程序执行的顺序。

时钟振荡器和定时控制电路的作用是产生时钟信号,该时钟信号起到指挥的作用,用于协调单片机各部件相互配合、有序工作。

存储器和寄存器

单片机内部可以存放信息的硬件资源包括存储器和寄存器。存储器可以分为两类,分别是存储程序的程序存储器(ROM)和存储数据的数据存储器(RAM)。存储器按照其所处位置又可以被分为片内和片外两种。寄存器通常具有某些特殊的功能,被称为特殊功能寄存器(Special Function Register,SFR)。

1.片内数据存储器

MCS-51单片机片内RAM的地址范围如图2-4所示,其中52子系列单片机的高128B RAM又被称为附加RAM区。

图2-4 MCS-51单片机片内数据存储器(RAM)的地址范围

a)51子系列b)52子系列

2.特殊功能寄存器

MCS-51单片机内部有很多特殊功能寄存器。特殊功能寄存器不但有地址,而且还有专属的符号名称(如PCON、SCON和PSW等)。图2-4可以发现,特殊功能寄存器的地址范围为80H~FFH,与52子系列单片机片内RAM高128B单元的地址范围重叠。因此,在通过地址访问片内RAM高128B存储单元和特殊功能寄存器时,必须通过数据的寻址方式明确该地址对应的是片内RAM还是SFR。特殊功能寄存器的寻址方式是直接寻址,片内RAM高128B单元的寻址方式是寄存器间接寻址。

“寻址”是汇编源程序设计中的概念,本书将在第3章的3.3节中详细介绍与寻址有关的知识。

另外,某些特殊功能寄存器中的二进制位也有地址,即位地址。有位地址的位可以通过位寻址的方式单独访问。

需要特别注意的是,只有字节地址能够被8整除的特殊功能寄存器中的位才有位地址,才能按位寻址。

3.片内数据存储器的划分

片内数据存储器的不同区域有不同的寻址方式,其划分如图2-5所示。为了强调区分特殊功能寄存器区与52子系列附加通用RAM区的方法,图2-5中也给出了SFR区的寻址方式。

图2-5片内数据存储器的划分

(1)工作寄存器区

工作寄存器区共有32个字节,分成0区、1区、2区和3区,共4个子区,见表2-4。每个子区均有R0~R7共8个工作寄存器。单片机CPU每一时刻只能使用一个工作寄存器子区,所用寄存器子区由PSW寄存器的PSW.4位和PSW.3位决定,见表2-4。工作寄存器区中的所有寄存器均可以通过寄存器寻址、直接寻址和寄存器间接寻址的方式访问。

(2)位寻址区

位寻址区的每个字节都有字节地址,可以通过直接寻址和寄存器间接寻址的方式访问。另外,位寻址区中的每个位都有地址,即位地址,可以通过位寻址方式单独访问,见表2-5。

(3)通用RAM区

MCS-51单片机的低128B通用RAM区可以采用直接寻址和寄存器间接寻址的方式访问,

而52子系列的高128B通用RAM区仅能采用寄存器间接寻址的方式访问。

4.片外数据存储器和I/O接口

MCS-51单片机可以扩展64KB的片外数据存储器,其地址范围如图2-6所示。需要特别指出的是,单片机的片外扩展I/O空间与片外RAM的地址是统一编址的,即在0000H~0FFFFH共64K个地址中,一部分地址分配给片外RAM,一部分地址分配给片外扩展的I/O接口,也可以全部地址都分配给片外RAM或I/O接口。因为是统一编址的,所以在程序中访问片外RAM和片外扩展I/O接口的指令相同。

图2-6片外数据存储器(RAM)区或片外扩展I/O区的地址范围

另外,片外RAM区(或片外扩展I/O区)与片内RAM区是独立编址的,即图2-5中片内RAM区地址00H~FFH不会分配给片外RAM区(或片外扩展I/O区),同样,图2-6中片外RAM区(或I/O区)地址0000H~0FFFFH也不会分配给片内RAM区。因为是独立编址的,所以访问片内RAM区和访问片外RAM区(或片外扩展I/O区)时所用的指令不同。

5.程序存储器

程序存储器(ROM)用来存放代码,MCS-51单片机除片内ROM外,还可以扩展

64KB的片外程序存储器。图2-7给出了程序存储器的配置,图中的EA是单片机的引脚,

决定了单片机是否使用片外程序存储器。由图2-7可知,当EA=0时,单片机只能使用片外

程序存储器;当EA=1时,对于51子系列单片机,地址为0000H~0FFFH的存储单元来自于片内ROM,对于52子系列单片机,地址为0000H~1FFFH的存储单元来自于片内ROM,其他地址所对应的存储单元则均来自于片外ROM。

图2-7程序存储器的配置

a)EA=0

b)51子系列单片机且EA=1 c)52子系列单片机且EA=1

在单片机程序中,有一类被称为中断服务子程序的特殊子程序,专用于处理中断源所产生的中断事件。在程序存储器中,有一块区域专用于存放中断服务处理子程序的指令代码。

以51子系列单片机为例(见表2-1),该系列单片机有5个中断源,分别是INT0、T0、

INT1、T1和串口中断,它们的中断服务处理程序在ROM中的存放地址分别为0003H、000BH、0013H、001BH和0023H,这些地址被称为中断服务处理程序的入口地址,如图2-8所示。程序存储器的地址0000H对应于复位入口,即主程序的入口,单片机开始工作时将首先从程序存储器中地址为0000H的存储单元中取指令的。

图2-8中断服务处理子程序的入口

需要注意,比较中断服务处理程序的中断入口地址后,可以发现相邻入口地址之间的差很小,如:T0中断入口与INT0中断入口之差为000BH-0003H=8H。这意味着如果T0中断与INT0中断的中断服务处理程序都存在,则INT0中断服务处理程序的长度不能超过8B,否则将占用T0中断服务处理程序的存储空间。解决这一问题的方法是,将中断服务处理子程序存放在ROM的其他位置,而仅在中断入口存储单元存放一条能跳转至中断服务处理程序的跳转指令。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭