首页 80C51单片机结构和原理

80C51单片机结构和原理

举报
开通vip

80C51单片机结构和原理80C51单片机结构和原理 第二章 80C51单片机结构和原理 本章基本要求:通过本章的学习要求熟悉80C51单片机的基本结构、应用模式、内部资源配置及基本时序。重点掌握80C51单片机的存储器配置和I/O口特点及其应用。 2.1 80C51系列概述 单片机是微型计算机的一个分支,是电子计算机家族中的一员,在组成原理上它同典型的计算机没有本质的区别,只是在结构上有它独特的特点。所以,可以用微型机的眼光来看待单片机,用微型机的思路来学习单片机。 2.1.1 MCS—51单片机系列 MCS—51是Intel...

80C51单片机结构和原理
80C51单片机结构和原理 第二章 80C51单片机结构和原理 本章基本要求:通过本章的学习要求熟悉80C51单片机的基本结构、应用模式、内部资源配置及基本时序。重点掌握80C51单片机的存储器配置和I/O口特点及其应用。 2.1 80C51系列概述 单片机是微型计算机的一个分支,是电子计算机家族中的一员,在组成原理上它同典型的计算机没有本质的区别,只是在结构上有它独特的特点。所以,可以用微型机的眼光来看待单片机,用微型机的思路来学习单片机。 2.1.1 MCS—51单片机系列 MCS—51是Intel公司生产的一种单片机系列的名称。属于这一系列的单片机有很多种,如8031/8051/8751,8032/8052/8752,80C31/80C51/87C51,80C32/80C52/87C52等。 在制造 工艺 钢结构制作工艺流程车尿素生产工艺流程自动玻璃钢生产工艺2工艺纪律检查制度q345焊接工艺规程 上,该系列单片机有两种:一种是HMOS工艺,即高密度短沟道MOS工艺。另一种是CHMOS工艺,即互补金属氧化物的HMOS工艺。CHMOS工艺是CMOS工艺和HMOS工艺的结合,既保持了HMOS工艺的高速度和高密度特点,同时又具有CMOS工艺的低功耗特点。在产品型号中凡带有字母“C”的芯片就是CHMOS芯片,不带有字母“C”的即为HMOS芯片。 在功能上,该系列单片机有基本型和增强型两大类,以芯片型号的末位数字来区分。“1”为基本型,“2”为增强型。如8031/8051/8751,80C31/80C51/87C51为基本型,8032/8052/8752,80C32/C80C52/C87C52为增强型。 在片内程序存储器的配置上,该系列单片机有三种形式,即掩膜ROM、EPROM和ROMLess(无片内程序存储器)。如: 80C51有4K字节的掩膜ROM; 87C51有4K字节的EPROM ; 80C31在芯片内无程序存储器,在应用时要在单片机芯片外部扩展程序存储器。 2.1.2 80C51系列 80C51是MCS—51系列单片机中CHMOS工艺的一个典型品种,其他厂商以8051为基核开发出的CHMOS工艺单片机产品统称为80C51系列。当前常用的80C51系列产品有: ATMEL公司的:89C51、89C52、89C2051等。 Intel公司的:80C31、80C51、87C51、80C32、80C52、87C52等 2.2 80C51的基本结构 2.2.1 80C51的基本结构 80C51单片机的基本结构如下图2.1所示。 - 1 - XTAL2XTAL1 VCC ROM/EPROM/FLASHRAM 128字节定时/计数器时钟电路 4K 字节SFR 21个2个 CPU VSS 中断系统串行口并行口总线控制 5中断源 2优先级、全双工 1个4个 P0P1P2P3RSTALEPSENEA 图2.1 单片机的基本结构图 注:与并行口P3复用的引脚:串行口输入和输出引脚RXD和TXD;外部中断输入引脚 RDINT0INT1WR和;外部计数输入引脚T0和T1;外部数据存储写和读控制信号和。 由上图可见,80C51单片机主要有以下几部分组成: 一. CPU系统(中央处理器) ? 8位CPU,含布尔处理器; ? 时钟电路; ? 总线控制逻辑。 二. 存储器系统 ? 4KB的程序存储器(ROM); ? 128B的数据存储器(RAM); ? 特殊功能寄存器SFR。 三. 并行I/O口和其他功能单元 ? 4个并行I/O口; ? 2个16位定时/计数器; ? 1个全双工异步串行口; ? 中断系统。 2.2.2 80C51的应用模式 一. 总线型应用模式 一般的微型处理器芯片都有单独的“三总线”:地址总线、数据总线、控制总线。但单片机由于芯片引脚数量的限制,数据总线和地址总线经常复用,切许多引脚还要与并行I/O口引脚兼用。典型的总线型单片机产品有80C31/AT89C51等。 1. 总线型应用的“三总线”模式 常用的总线型单片机有40个引脚,除部分特殊引脚外,其余引脚大多是为应用系统总线扩展而设置的,如图2.2所示。 - 2 - 图2.2 总线型应用的“三总线”模式 应用系统在以下情况时需要进行扩展: ?芯片内部没有ROM(如80C31)或内部ROM容量不够用时(如80C51); ?系统需要扩展并行总线外围器件时(如扩展8155或ADC0809等)。 这种总线型应用在扩展外围器件较多时接线较复杂、系统可靠性降低,在系统 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 时尽量减少扩展数量。 2. 非总线型应用的“多I/O”模式 在不使用单片机的扩展功能时,由于可以利用的通用I/O口线的数量较多,此时也可以采用非总线型的“多I/O”应用模式,如图2.3所示。 图2.3 非总线型应用的“多I/O”模式 二. 非总线型单片机应用模式 非总线型单片机将用于外部总线扩展用的I/O口线和控制功能线去掉,从而减少单片机的引脚数和减小体积。对于不需要进行并行外围扩展、装置的体积要求苛刻且程序量不大的系统(如智能传感器等)极其适合。非总线型单片机典型产品有:AT89C2051/AT89C4051 等。 2.3 80C51产品资源配置与引脚封装 - 3 - 2.3.1 80C51产品资源配置 80C51系列单片机虽然组成相同,但不同型号的产品在资源配置上存在一些差异。典型的单片机产品资源配置 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 如表2.1所示。 表2.1 80C51系列典型产品资源配置 分类 芯片型号 存储器类型及字节数 片内其它功能单元数量 ROM RAM 并行口 串行定时/计数中断源 口 器 80C31 无 128 4个 1个 2个 5个 基80C51 4K掩膜 128 4个 1个 2个 5个 本87C51 4K EPROM 128 4个 1个 2个 5个 型 总89C51 4K Flash 128 4个 1个 2个 5个 线80C32 无 256 4个 1个 3个 6个 型 增80C52 84K掩膜 256 4个 1个 3个 6个 强87C52 84K EPROM 256 4个 1个 3个 6个 型 89C52 84K Flash 256 4个 1个 3个 6个 非总线型 89C2051 2K Flash 128 2个 1个 2个 5个 89C4051 42K Flash 128 2个 1个 2个 5个 由上表可见: ?增强型与基本型在以下几点不同: ?片内ROM从4KB增加到8KB; ?片内RAM从128B增加到256B; ?定时/计数器从2个增加到3个; ?中断源由5个增加到6个。 2.3.2 80C51单片机的封装与引脚 80C51系列单片机一般采用双列直插式(DIP)形式封装。这里只介绍常用的总线型DIP40封装和非总线型DIP20封装,如图2.4所示。 一. 总线型DIP40封装引脚介绍 ? 输入/输出口线 P0.0,P0.7 P0口8位双向口线 P1.0,P0.7 P1口8位双向口线 P2.0,P2.7 P2口8位双向口线 P3.0,P3.7 P3口8位双向口线或第二功能引脚 ? ALE 地址锁存控制信号 在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存器锁存起来,以 实现低位地址和数据的分时传送。 ? 外部程序存储器读选通信号 - 4 - 在读外部ROM时有效(低电平),以实现外部ROM单元的读操作。 ? 访问程序存储器控制信号 当信号为低电平时,对ROM的读操作限定在外部程序存储器;当信号为高 电平时,则对ROM的读操作是从内部程序存储器开始;并可延续至外部程序存储器。 ? RST 复位信号 当输入的复位信号延续2个机器周期以上高电平时即为有效,用于完成单片机的复 位操作。 ? XTAL1和XTAL2 外接晶体引线端 当使用芯片内部时钟时,此2个引线端用于外接石英晶体和微调电容;当使用外部 时钟时,用于接外部时钟脉冲信号。 ? Vss 地线 ? Vcc 电源接入引脚(+5V) 图2.4 80C51单片机引脚封装 二. 非总线型DIP20封装引脚介绍(以89C2051为例) ? 输入/输出口线 P0.0,P0.7 一般I/O口引脚 P3.0,P3.5、P3.7 一般I/O口引脚或第二功能引脚 ? XTAL1和XTAL2 外接晶体引线端 ? Vcc 电源接入引脚 ? GND 地线引脚 ? RST 复位信号引脚 - 5 - 2.4 80C51的内部结构 2.4.1 80C51单片机芯片内部逻辑结构 80C51单片机芯片内部的逻辑结构如图2.5所示。 现对各组成部分的情况介绍如下: 一. 中央处理器(CPU) 中央处理器简称CPU,是单片机的核心,完成运算和控制操作,按其功能,中央处理器包括运算器和控制器两部分电路。 1. 运算器电路 运算器是单片机的运算部件,用于实现算术和逻辑运算。图2.5中的ALU(算术逻辑单元)、ACC(累加器)、B寄存器、PSW(程序状态字寄存器)和两个暂存器等属于运算电路。 运算电路以ALU为核心,完成基本的算术运算和逻辑运算,运算和操作结果的状态由状态寄存器PSW保存。 累加器ACC为8位寄存器,是程序中最常用的专用寄存器,用于向ALU提供操作数和存放运算的结果。 寄存器B也是一个8位的寄存器,主要用于乘除运算。 程序状态字寄存器PSW是一个8位状态标志寄存器,用于寄存指令执行的状态信息,可作为控制程序转移的条件,供程序判别和查询。 暂存寄存器用来暂时存放数据总线或其他寄存器送来的操作数。 2. 控制器电路 控制电路是单片机的指挥控制部件,保证单片机各部分能自动而协调地工作。图2.5中的程序计数器PC、PC增量器、指令寄存器IR、指令译码器ID、定时和控制等都属于控制电路。 程序计数器PC是一个16位的计数器。其 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 为将要执行的指令地址,寻址范围达64KB,具有自动加1功能,以实现程序的顺序执行。PC没有地址,是不可寻址的,用户无法对它进行读写。但在执行转移、调用、返回等指令时能自动改变其内容,以改变程序的执行顺序。单片机上电或复位时,PC自动清0,装入地址0000H,保证程序从0000H地址开始执行。 指令寄存器IR保存当前正在执行的一条指令。 定时和控制是微处理器的核心部件,用于控制取指令、执行指令、存取操作数或运算结果等操作,向其它部件发出各种微操作控制信号,协调各部件的工作。 二. 内部数据存储器 内部数据存储器在图2.5中包括RAM(128B)和RAM地址寄存器等。实际上80C51芯片中共有256个RAM单元,但其中后128单元被专用寄存器占用,供用户使用的只是前128单元,用于存放可读写的数据。通常所说的内部数据存储器是指前128单元,简称“内部RAM”。 三. 内部程序存储器 内部程序存储器在图2.5中包括ROM(4KB)和地址寄存器AR等。80C51共有4KB掩膜ROM,用于存放程序和原始数据。因此称之为程序存储器,简称“内部ROM”。 四. 定时/计数器 80C51共有2个16位的定时/计数器,以实现定时或计数功能,并以其定时或计数结果对单片机进行控制。 五. 并行I/O口 - 6 - 80C51工友4个8位的I/O口(P0、P1、P2、P3),使实现数据的并行输入输出。 六. 串行口 80C51单片机有一个全双工的串行口(P3口的两个引脚P3.0和P3.1),以实现单片机和其它数据设备之间的串行数据传送。 七. 特殊功能寄存器SFR 80C51单片机内部有SP、DPTR(可分成两个8位寄存器DPH、DPL)、PCON、IE、IP等21个特殊功能寄存器单元,他们同内部RAM的128B统一编址,地址范围是80H,FFH,这些SFR只用到了21B单元,且这些单元是离散分布的。 图2.5 80C51内部逻辑结构 2.4.2 80C51单片机的时钟和时序 单片机的工作过程是:取指令?译码?微操作?再取指令?译码?微操作,这样自动地、一步一步地由微操作依序完成相应指令规定的功能。各指令的微操作在时间上有严格的次序,称之为时序。单片机的时钟信号就是用来为单片机芯片内部各种微操作提供时间基准。 一. 时钟信号的产生方式 80C51单片机的时钟信号一般有两种产生方式:内部时钟方式和外部时钟方式。具体电路如图2.6所示。 内部时钟方式是利用单片机内部一振荡电路,在XTAL1和XTAL2引脚外接晶振,就构成了自激振荡器并在单片机内部产生时钟脉冲信号。电容器C1和C2的作用是稳定频率和快速起振,电容值在5,30PF,典型值为30PF。晶振典型值为12MHZ和6MHZ。 - 7 - 外部时钟方式是把外部已有的时钟信号引入到单片机内,主要用于多片80C51单片机同时工作的情况,使实现各单片机的同步。 CYSXTAL2 悬空 XTAL2 C1 振荡器 C2外部 时钟XTAL1 XTAL1信号 80C5180C51 (a)内部时钟方式 (b)外部时钟方式 图2.6 80C51单片机时钟信号产生方式 二. 80C51的时序定时单位 为了说明信号的时间关系,需要定义定时单位。80C51时序的定时单位共有4个,从小到大依次为:拍节、状态、机器周期和指令周期。如图2.7所示。 机器周期 TCY S1S2S3S4S5S6振荡器 晶振周期 P1 分 频80C51P2 器 时钟周期(S状态) 图2.7 80C51单片机的时钟信号 1. 拍节和状态 把振荡脉冲的周期定义为拍节(用“P”表示)。振荡脉冲经过二分频后,就是单片机的时钟信号,把时钟信号的周期定义为状态(用“S”表示)。这样,一个状态就包含两个拍节,前半周期对应的拍节叫拍节1(用“P1”表示),后半周期对应的拍节就叫拍节2(用“P2”表示)。 2. 机器周期 80C51单片机中规定一个机器周期的宽度为6个状态,依次表示为:S1,S6。因此一个机器周期包含12个拍节,分别表示为:S1P1,S1P2,S2P1,S2P2,„„,S6P1,S6P2。由于一个机器周期共有12个振荡脉冲周期,因此机器周期为振荡脉冲的十二分频。如振荡脉冲频率为12MHZ,则一个机器周期为1μS。 3. 指令周期 指令周期是最大的时序定时单位,指指令一条指令所需要的时间。指令周期以机器周期的数目来表示,80C51的指令周期根据指令的不同,有一个、两个、三个或四个机器周期。 三. 80C51的典型时序 - 8 - 80C51单片机共有111条指令,全部指令按其长度可分为单字节、双字节和三字节指令。执行这些指令所需要的机器周期数目是不同的,概括起来共有以下几种情况:单字节指令单机器周期和单字节指令双机器周期;双字节指令单机器周期和双字节指令双周期;三字节的指令都是双机器周期,而单字节的乘除法指令则为四机器周期。 1. 单周期指令时序 单周期指令时序如图2.8所示。 1个机器周期1个机器周期 S1S2S3S4S5S6S1S2S3S4S5S6 P1P1 P2P2 ALEALE 读操作码空读读操作码读第二字节 (a)单字节指令 (b)双字节指令 图2.8 单周期指令时序图 对于单字节单周期指令来说,只需要进行一次读指令操作,当第二个ALE有效时,由于PC没有加1,则读出的还是原来的指令,属于一次无效操作。 对于双字节单周期指令来说,ALE的两次读操作都是有效的,第一次读指令操作码,第二次读指令第二字节(如操作数)。 2. 双周期指令时序 双周期指令时序如图2.9所示。 对于一般的单字节双周期指令(除MOVX类指令外)来说,两个机器周期共进行4次读指令操作,其中后3次的读操作是无效的。 但对于MOVX类指令来说,在对片外RAM进行读/写操作时,ALE信号会出现非周期现象。在第二机器周期无读操作码的操作,而是进行外部数据存储器的寻址和数据选通 。如图2.10所示。 第1机器周期第2机器周期 S1S2S3S4S5S6S1S2S3S4S5S6 P1 P2 ALE 读操作码图2.9 单字节双周期指令时序图 空读3次 - 9 - 第1机器周期第2机器周期 S1S2S3S4S5S6S1S2S3S4S5S6 P1 P2 ALE空读 读操作码 数据地址及选通图2.10 MOVX类双周期指令时序图 2.4.3 80C51单片机的复位 复位目的是使单片机或系统中的其它部件处于某种确定的初始状态。单片机的工作就是从复位开始的。 一. 复位电路 复位电路可采用简单的电阻、电容及按键开关构成上电自动复位和手动复位两种,也可采用专门的复位集成芯片。图2.11是两种典型的简单复位电路接法。 Vcc+5V+5VVCC 22ufK复位按键1UF 80C51RST 1KΩ80C5110KΩ 51KΩ GND (a) 上电自动复位 (b) 上电自动复位+按键复位 图2.11 单片机复位电路 二. 单片机复位后的状态 单片机的复位操作使单片机进入初始化状态,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除PC之外,复位操作还对其它一些专用寄存器有影响,如表2.1所示。 表2.2 单片机复位状态 专用寄存器 复位状态 专用寄存器 复位状态 专用寄存器 复位状态 PC 0000H IP ×××00000B TH1 00H ACC 00H IE 0××00000B TL1 00H B 00H TMOD 00H SCON ××H PSW 00H TCON 00H P0,P3 0FFH SP 07H TH0 00H 注:×为不定状态 DPTR 0000H TL0 00H - 10 - 2.5 80C51单片机的I/O口结构与操作 80C51单片机共有4个I/O口P0、P1、P2和P3。各接口均由接口锁存器、输出驱动器和输入缓冲器组成。P1、P2和P3三个端口内部都有上拉电阻,称之为准双向口,在读这些端口之前应先写1,否则读入的数据不能保证正确。P0口为开漏极输出,内部没有上拉电阻,为三态双向I/O口,是 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的双向口,可自由读写。P0、P1、P2和P3口的位结构如图2.12所示。 地址控制C读锁存器CCV R P2.X内部总线 Q引脚D1P2.X 1锁存器 CLMUXT0 写锁存器 读引脚 (a)P0口位结构图 读锁存器CCV R P1.X 内部总线 Q引脚D P1.X 锁存器Q CLT写锁存器 读引脚 (b)P1口位结构图 - 11 - 地址控制C 读锁存器CCV R P2.X内部总线 Q引脚D1 P2.X1 锁存器 CL MUXT0写锁存器 读引脚 (c) P2口位结构图 读锁存器CC V第二输出功能W R P3.X内部总线 Q引脚D P3.X &锁存器 CLT写锁存器 第二输入功能读引脚 (d)P3口位结构图 图2.12 I/O口位结构图 实际应用要点: ? 当P0、P1、P2、P3作为一般输入/输出口用时,应外接1,10KΩ的上拉电阻。特别是当P0口用于外部扩展时,因为输出驱动级的漏极开路,所以必须外接上拉电阻,否则不能正常工作。 ? 当需要外部程序存储器和数据存储器扩展时,P0口作为分时复用的低8位地址/数据总线,P2口作为高8位地址总线。 ? P3口是双功能接口,除具有数据输入/输出功能外,每一条接口线还具有不同的第二功能,各引脚的具体定义如表2.3所示。 - 12 - 表2.3 P3口各引脚第二功能定义表 引脚序号 第二功能符号 第二功能说明 P3.0 RXD 串行接口输入 P3.1 TXD 串行接口输出 P3.2 外部中断0输入 INT0 INT1P3.3 外部中断1输入 P3.4 T0 定时/计数器0的外部输入 P3.5 T1 定时/计数器1的外部输入 WRP3.6 外部RAM“写”选通控制输出 RDP3.7 外部RAM“读”选通控制输出 2.6 80C51存储器组织 存储器是组成计算机的主要部件,其功能是存储信息——程序和数据。存储器可以分为随机存取存储器(RAM)和只读存储器(ROM)两大类。RAM用来存放暂时性的输入输出数据、运算的中间结果或用作堆栈,一般称之为数据存储器;ROM用来存放程序或常数,如系统监控程序、常数表等,一般称之为程序存储器。 80C51系列单片机存储器配置如下: ? 64KB程序存储器(ROM)空间:0000H,0FFFFH; ? 128字节内部RAM空间:00H,7FH; ? 128字节内部特殊功能寄存器空间:80H,0FFH; ? 64KB外部数据存储器空间:0000H,0FFFFH; ? 位寻址空间:00H,0FFH。其中位地址00H,7FH位于内部RAM字节20H,2F中,位 地址80H,0FFH分散于内部特殊功能寄存器空间80H,0FFH。 ? 2.6.1 80C51的程序存储器 80C51单片机的程序计数器PC是一个16位计数器,所以能寻址64KB的程序存储器地址范围。 80C51单片机的芯片内部有4KB的掩膜ROM,其配置如图2.13所示。 80C51程序存储器配置 图2.13 - 13 - EAEA80C51的引脚是访问内/外部程序存储器的选择端。当接高电平时,CPU将先访 EA问内部ROM,当指令地址超过0FFFH时,自动转向外部ROM进行访问;当接低电平时,则CPU只能访问外部ROM。外部ROM的地址从0000H开始编址。 程序存储器低端的一些地址被固定地用作特定的入口地址,一般是复位入口地址和中断入口地址。 2.6.2 80C51的数据存储器 80C51单片机的数据存储器分为片外RAM和片内RAM两大部分,如图2.14所示。 00H0000H工作 32个字节外部RAM寄存器区1FH (或I/O)位寻址区16个字节 64K30H 通用 80个字节RAM区 7FH 80H 增强型SFR区 附加空间 间接寻址直接寻址 访问访问图2.14 80C51数据存储器配置 FFFFH 80C51片内RAM共有128字节,地址范围是:00H,7FH,分成工作寄存器区、位寻址、FFHRDWR通用RAM区三部分。 80C51RAM地址空间为64KB,其地址范围是:0000H,0FFFFH。 与程序存储器地址空间不同的是,片外/片内RAM在地址的低端0000H,007FH是重叠的,CPU访问时采用不同的指令加以区分。访问片外RAM采用专门的MOVX指令实现,而访问片内RAM则采用MOV指令实现。另外,与片内RAM不同,片外RAM不能进行堆栈操作。 一. 工作寄存器区 80C51单片机内RAM低端的00H,1FH共32个字节分成4个工作寄存器组,每组8个单元。 ? 寄存器0组 :地址00H,07H; ? 寄存器1组 :地址08H,0FH; ? 寄存器2组 :地址10H,17H; ? 寄存器3组 :地址18H,1FH。 每个工作寄存器组都有8个寄存器,依次表示为:R0、R1、R2、„、R7。程序运行时,只能有一个工作寄存器组作为当前工作寄存器组。 当前工作寄存器组的选择由特殊功能寄存器中的程序状态字寄存器PSW中的RS1、RS0两位来决定。工作寄存器组与RS1、RS0的关系及地址如表2.4所示。 - 14 - 表2.4 80C51单片机工作寄存器地址表 组号 RS1RS0 R7 R6 R5 R4 R3 R2 R1 R0 0 00 07H 06H 05H 04H 03H 02H 01H 00H 1 01 0FH 0EH 0DH 0CH 0BH 0AH 09H 08H 2 10 17H 16H 15H 14H 13H 12H 11H 10H 3 11 1FH 1EH 1DH 1CH 1BH 1AH 19H 18H 更换当前工作寄存器组时,原来的工作寄存器组的内容被屏蔽保护起来。利用这一特性可以方便地完成快速现场保护任务。 二. 位寻址区 内部RAM的20H,2FH共16字节是位寻址区,其128位的位地址范围是:00H,7FH。对被寻址的位可进行位操作。位地址与字节地址的关系如表2.5所示。 表2.5 80C51单片机位地址表 字节位地址 地址 D7 D6 D5 D4 D3 D2 D1 D0 20H 07H 06H 05H 04H 03H 02H 01H 00H 21H 0FH 0EH 0DH 0CH 0BH 0AH 09H 08H 22H 17H 16H 15H 14H 13H 12H 11H 10H 23H 1FH 1EH 1DH 1CH 1BH 1AH 19H 18H 24H 27H 26H 25H 24H 23H 22H 21H 20H 25H 2FH 2EH 2DH 2CH 2BH 2AH 29H 28H 26H 37H 36H 35H 34H 33H 32H 31H 30H 27H 3FH 3EH 3DH 3CH 3BH 3AH 39H 38H 28H 47H 46H 45H 44H 43H 42H 41H 40H 29H 4FH 4EH 4DH 4CH 4BH 4AH 49H 48H 2AH 57H 56H 55H 54H 53H 52H 51H 50H 2BH 5FH 5EH 5DH 5CH 5BH 5AH 59H 58H 2CH 67H 66H 65H 64H 63H 62H 61H 60H 2DH 6FH 6EH 6DH 6CH 6BH 6AH 69H 68H 2EH 77H 76H 75H 74H 73H 72H 71H 70H 2FH 7FH 7EH 7DH 7CH 7BH 7AH 79H 78H 三. 通用RAM区 除工作寄存器区和位寻址区外,剩下的80字节(30H,7FH)单元称之为通用RAM区。这些单元可以作为数据缓冲器使用。在实际应用中,常需在RAM区设置堆栈。80C51的堆栈一般设在30H,3FH的范围内。栈顶的位置由堆栈指针SP指示,复位时SP的初值为07H,在系统初始化时可以重新设置。 2.6.3 80C51单片机的特殊功能寄存器 内部数据存储器的高128单元是为特殊功能寄存器(SFR)(或称专用寄存器)提供的。80C51单片机中共设有21个特殊功能寄存器,它们离散地分布在80H,0FFH的地址空间中。 - 15 - 字节地址能被8整除的(即十六进制的地址码尾数为0或8的)单元是具有位地址的寄存器,共有11个。访问特殊功能寄存器(SFR)只允许使用直接寻址方式。80C51的特殊功能寄存器(SFR)中的位地址如表2.6所示。 表2.6 80C51的特殊功能寄存器(SFR)中的位地址表 寄存位地址(D7?D0) 字节地器 址 B F7 F6 F5 F4 F3 F2 F1 F0 F0H ACC E7 E6 E5 E4 E3 E2 E1 E0 E0H ACC.7 ACC.6 ACC.5 ACC.4 ACC.3 ACC.2 ACC.1 ACC.0 PSW D7 D6 D5 D4 D3 D2 D1 D0 D0H CY AC F0 RS1 RS0 OV ? P IP BF BE BD BC BB BC B9 B8 B8H ? ? PT2 PS PT1 PX1 PT0 PX0 P3 B7 B6 B5 B4 B3 B2 B1 B0 B0H P3.7 P3.6 P3.5 P3.4 P3.3 P3.2 P3.1 P3.0 IE AF AE AD AC AB AA A9 A8 A8H EA ? ET2 ES ET1 EX1 ET0 EX0 P2 A7 A6 A5 A4 A3 A2 A1 A0 A0H P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 SCON 9F 9E 9D 9C 9B 9A 99 98 98H SM0 SM1 SM2 REN TB8 RB8 TI RI P1 97 96 95 94 93 92 91 90 90H P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 TCON 8F 8E 8D 8C 8B 8A 89 88 88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 P0 87 86 85 84 83 82 81 80 80H P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0 部分特殊功能寄存器的说明如下: 一. 程序状态字寄存器PSW 程序状态字寄存器PSW是一个8位寄存器,用于寄存指令执行的状态信息。其中有些状态是根据指令执行结果,由硬件自动设置,而有些位状态则是使用软件方法设定的。PSW的位状态可以用专门指令进行测试,也可以用指令读出。一些条件转移指令将根据PSW中有关的状态,来进行程序转移。PSW的各位定义如下: 位序 PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0 位状态 CY AC F0 RS1 RS0 OV ? P 各位的定义如下: CY:最高进位(借位)标志。有最高进位(借位)时CY=1,否则CY=0; AC:辅助进位(借位)标志。在加减运算中,当有低4位向高4位进位或借位时,AC由硬 件置“1”,否则AC位被清“0”; F0:用户标志位,由用户自己定义; - 16 - RS1、RS0:当前工作寄存器组选择位。用于设定当前工作寄存器的组号; OV:溢出标志位。有溢出时OV=1,否则OV=0; P:奇偶标志位。存于累加器A中的运算结果有奇数个“1”时P=1,否则P=0。 二. 堆栈指针寄存器SP 堆栈指针寄存器SP是一个8位寄存器,它总是指向堆栈的栈顶。80C51单片机的堆栈通常设在30H,7FH这一段RAM中。80C51单片机的堆栈区是向地址增大的方向生成的,简称向上生长型堆栈。堆栈操作遵循“后进先出”的原则,入栈操作时,SP先加1,数据再压入SP指向的单元。出栈操作时,先将SP指向的单元的数据弹出,然后SP再减1,这时SP指向的单元是新的栈顶。 三. 数据指针寄存器DPTR 数据指针寄存器DPTR是一个16位的寄存器,它是80C51中唯一一个供用户使用的16位寄存器,用于存放16位的地址。它由两个8位的寄存器组成:高8位DPH和低8位DPL。DPTR在访问外部数据存储器时作地址指针使用, 可寻址范围为64KB。在变址寻址方式中,用DPTR作基址寄存器,由于对程序存储器的访问。 - 17 -
本文档为【80C51单片机结构和原理】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_014457
暂无简介~
格式:doc
大小:119KB
软件:Word
页数:23
分类:生活休闲
上传时间:2017-09-27
浏览量:83