单片机原理与接口技术课件 第3章STC单片机CPU子系统_第1页
单片机原理与接口技术课件 第3章STC单片机CPU子系统_第2页
单片机原理与接口技术课件 第3章STC单片机CPU子系统_第3页
单片机原理与接口技术课件 第3章STC单片机CPU子系统_第4页
单片机原理与接口技术课件 第3章STC单片机CPU子系统_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

单片机的基本组成CPU外部存储器控制程序存储器RAMSFR异步串行收发器通用输入/输出定时器晶体振荡器中断控制3.1

STC单片机CPU子系统控制器STC单片机CPU内核功能单元CPUPCDPTRSP运算器控制器

--程序计数器(ProgramCounter,PC)通过PC从程序存储器中不断地取出所要执行的代码。PC的特点就是总是指向下一条所要执行的指令的地址。PC其实质就是实现递增功能的计数器,其计数值是程序存储器的地址。PC的宽度为16位。因此,地址深度为216,即64K,地址的范围为0~65535。控制器

--程序计数器程序计数器并不总是递增的,因为执行机器指令可以分成顺序执行和非顺序执行。程序ROM程序地址寄存器PC+naaaaaaaaaaaaaaaa地址指令新地址(16位)程序计数器(16位)控制器

--双数据指针(DualDataPointer,DPTR)双数据指针是一个16位的专用寄存器。由DPL(低8位)和DPH(高8位)组成。DPTR是8051中唯一可以直接进行16位操作的寄存器。此外,也可以按照字节分别对DPH和DPL进行操作。使用双DPTR扩展标准8051结构如果单片机有外部数据总线,则该单片机设计了两个16位的数据指针DPTR0和DPTR1,这两个数据指针共用一个地址空间。通过软件设置特殊功能寄存器P_SW1的第0位选择当前数据指针。DPS=0,选择DPTR0DPS=1,选择DPTR1控制器

—堆栈及指针在单片机中,有一个称为堆栈的特殊存储空间。其作用主要用于保存现场。①②新地址SP

程序地址寄存器控制器

--堆栈及指针(StackPointer,SP)用于控制指向堆栈空间位置的是堆栈指针SP它是一个8位的专用寄存器该寄存器的内容就是栈顶的地址以三个数据0x30、0x31和0x32入栈和出栈为例。入栈操作时随着数据的入栈操作,(SP)递增,SP总是指向最新保存的数据的存储器的位置,也就是通常所说的,SP总是指向栈顶的位置0X800x81(SP)=0x820x300x800x81(SP)=0x830x820x310x300x800x81(SP)=0x840x820x830x320x310x300x800x81(SP)=0x850x820x830x84地址地址地址地址(a)入栈前(b)数据0x30入栈(c)数据0x31入栈(d)数据0x32入栈出栈操作时随着数据的出栈操作,(SP)递减,SP总是指向最新保存的数据的存储器的位置,SP仍然是指向栈顶的位置。0x800x81(SP)=0x820x300x800x81(SP)=0x830x820x310x300x800x81(SP)=0x840x820x830x320x310x300x800x81(SP)=0x850x820x830x84地址地址地址地址(d)出栈后(c)数据0x30出栈(b)数据0x31出栈(a)数据0x32出栈指针类寄存器(3个)SP(8位):堆栈指针,它是始终指向栈区,具体说始终指向栈顶。DPTR(16位):数据指针,由DPL和DPH组成,存放16位地址,用于对16位地址的程序存储器和扩展RAM进行访问。PC(16位):程序计数器,总是指向下一条所要执行的指令的地址空间。ACCSTC单片机CPU内核功能单元CPU控制器PCDPTRSP运算器ALUBPSW算术逻辑单元(ArithmeticandLogicUnit,ALU),8051CPU的ALU位宽为8位,它可以实现的功能包括:算术运算实现8位的加、减、乘、除、递增、递减、BCD十进制调整和比较运算;逻辑运算实现逻辑与(AND)、逻辑或(OR)、逻辑异或(XOR),逻辑取反(NOT)和旋转/移位操作;按位运算置位、复位、取补;累加器累加器(Accumulator,ACC),也简写为A它是单片机中最繁忙的寄存器,用于向ALU提供操作数,同时许多运算结果也存放在累加器中。实际编程时,ACC通常用A表示。B寄存器在乘法和除法操作中,B寄存器有特殊用途。乘法操作B寄存器A寄存器XA寄存器B寄存器高8位低8位乘数乘数乘积B寄存器除法操作B寄存器A寄存器÷B寄存器A寄存器商余数被除数除数运算器

—程序状态字比特位76543210名字CYACF0RS1RS0OVRSVP进位标志辅助进位标志通用标志0寄存器组选择位溢出标志保留位奇偶标志位在程序状态字(ProgramStatusWord,PSW),保存一些具有特殊含义的比特位,这些位反映当前8051CPU内的工作状态。ACC有奇数个1,P=1ACC有偶数个1,P=0加法最高位有进位,=1减法最高位有借位,=1无进位/借位,=03.2STC单片机存储器结构和地址空间58KB0xE7FF0x0000程序Flash高128字节低128字节0x000xFF0x800x7F基本RAM特殊功能寄存器3840字节0x0EFF0x0000扩展RAMIAP15W4K58S4单片机内部在物理上主要有3个相互独立的存储器空间:程序存储器(程序Flash)、片内基本RAM、片内扩展RAM。程序存储器功能:存放单片机工作时的程序,保存用户程序、数据和表格信息单片机设置一个16位的程序计数器(PC),用于指示下一时刻CPU将要所执行的程序在ROM空间中的地址;PC指针长度为16位,所以单片机的程序存储器空间最大为64kB;当单片机复位后,程序计数器(PC)的内容为0x0000。程序Flash存储器类型程序存储器STC15W4K08S40x0000~0x1FFF(8K)STC15W4K16S40x0000~0x3FFF(16K)STC15W4K24S40x0000~0x5FFF(24K)STC15W4K32S40x0000~0x7FFF(32K)STC15W4K40S40x0000~0x9FFF(40K)STC15W4K48S40x0000~0xBFFF(48K)STC15W4K56S40x0000~0xDFFF(56K)STC15W4K60S40x0000~0xEFFF(60K)IAP15W4K58S40x0000~0xE7FF(58K)IAP15W4K61S40x0000~0xF3FF(61K)数据存储器数据存储器存储单片机运行期间所需要的数据和临时生成的数据,需要能够快速读出和写入数据。此类存储器掉电后,存储的数据会丢失,不能永久保存。内部数据RAM存储器STC15系列单片机内部RAM空间可以分成三个部分。堆栈·数据缓冲可位寻址区工作寄存器组3工作寄存器组2工作寄存器组1工作寄存器组0字节地址低128字节RAM这部分RAM区域也称为通用RAM区域。分为:工作寄存器组区可位寻址区用户RAM区域和堆栈区R0~R70x07

┊0x000x0F┊0x080x17

┊0x100x1F┊0x180x2F┊0x200x7F

┊0x30只能字节寻址

0x30—0x7F可位寻址区(也可字节寻址)

0x20—0x2F工作寄存器组区0x00—0x1FRS1RS0当前使用的工作寄存器组(R0~R7)000011102113比特位76543210名字CYACF0RS1RS0OVRSVP程序状态字(PSW)堆栈·数据缓冲可位寻址区工作寄存器组3工作寄存器组2工作寄存器组1工作寄存器组0字节地址只能字节寻址

0x30—0x7F可位寻址区(也可字节寻址)

0x20—0x2F工作寄存器组区0x00—0x1F0x07

┊0x000x0F┊0x080x17

┊0x100x1F┊0x180x2F┊0x200x7F

┊0x30低128字节RAM这部分RAM区域也称为通用RAM区域。分为:工作寄存器组区可位寻址区用户RAM区域和堆栈区字节地址B7位地址B00x2F7F7E7D7C7B7A79780x2E77767574777271700x2D6F6E6D6C6B6A69680x2C67666564636261600x2B5F5E5D5C5B5A59580x2A57565554535251500x294F4E4D4C4B4A49480x2847464544434241400x273F3E3D3C3B3A39380x2637363534333231300x252F2E2D2C2B2A29280x2427262524232221200x231F1E1D1C1B1A19180x2217161514131211100x210F0E0D0C0B0A09080x200706050403020100可位寻址区用户RAM区和堆栈可位寻址区工作寄存器组3工作寄存器组2工作寄存器组1工作寄存器组0字节地址低128字节RAM这部分RAM区域也称为通用RAM区域。分为:工作寄存器组区可位寻址区用户RAM区域和堆栈区只能字节寻址

0x30—0x7F可位寻址区(也可字节寻址)

0x20—0x2F工作寄存器组区0x00—0x1F0x07

┊0x000x0F┊0x080x1F┊0x180x2F┊0x200x7F

┊0x300x17

┊0x10高128字节RAM高128字节RAM:间接寻址特殊功能寄存器:直接寻址特殊功能寄存器SFR是具有特殊功能的RAM区域,它是一系列控制寄存器和状态寄存器的集合,对STC单片机内的各个功能模块进行管理、控制和监视。

(1)分布在80H-FFH地址空间,与片内数据存储器统一编址。

(2)当寄存器地址能够被8整除时才可以进行位操作,其他区域不可以进行位操作。特殊功能寄存器地址0/81/92/A3/B4/C5/D6/E7/F地址0xF8P7CHCCAP0HCCAP1HCCAP2H

0xFF0xF0BPWMCFGPCA_PWM0PCA_PWM1PCA_PWM0PWMCRPWMIFPWMFDCR0xF70xE8P6CLCCAP0LCCAP1LCCAP2L

0xEF0xE0ACCP7M1P7M0

CMPCR1CMPCR20xE7……0x98SCONSBUFS2CONS2BUF

P1ASF

0x9F0x90P1P1M1P1M0P0M1P0M0P2M1P2M0CLK_DIVPCON20x970x88TCONTMODTL0RL_TL0TL1RL_TL1TH0RL_TH0TH1RL_TH1AUXRINT_CLK0AUXR20x8F0x80P0SPDPLDPHS4CONS4BUF

PCON0x87内部数据RAM存储器

——内部扩展RAM在STC15W4K32S4系列的单片机除了集成256字节的内部RAM外,还集成了3840字节的扩展RAM区,其地址范围是0x0000~0x0EFF。通过使用xdata声明存储类型来访问内部中,扩展RAM区域。58KB0xE7FF0x0000程序Flash高128字节低128字节0x000xFF0x800x7F基本RAM特殊功能寄

温馨提示

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

评论

0/150

提交评论