MCS-51单片机组成原理课件_第1页
MCS-51单片机组成原理课件_第2页
MCS-51单片机组成原理课件_第3页
MCS-51单片机组成原理课件_第4页
MCS-51单片机组成原理课件_第5页
已阅读5页,还剩77页未读 继续免费阅读

下载本文档

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

文档简介

§1.MCS-51引脚描述与内部结构

◆HMOS工艺的51单片机,40引脚双列直插PDIP封装,如8051◆CHMOS工艺的51单片机,44脚方型塑封结构PLCC封装,如80C51一、封装形式

★PDIP封装,引脚数40、24、20、8★

PLCC封装,68脚、44脚PDIPPLCC§1.MCS-51引脚描述与内部结构◆HMOS工艺的51PDIP封装HMOS工艺的51单片机PDIP封装HMOS工艺的51单片机2二、引脚定义

8051单片机的引脚定义:◆2条电源线◆2条外接晶体振荡器◆4条控制和电源复用线◆32条I/O引脚详细引脚描述参见表2-1-1二、引脚定义 8051单片机的引脚定义:详细引脚描述参见表23电源:VCC、VSS复位:RST,高电平复位

时钟:XTAL1、XTAL2

存储器接口信号I/O接口外部结构/EA:低电平从外部程序存储器取指令/PESN:取指令选通信号ALE:外部地址锁存信号

/WR:外部数据写选通信号

/RD:外部数据读选通信号

P0口:外部数据总线和地址总线低8位或I/O口P1口:I/O口P2口:外部地址总线高8位或I/O口

P3口:I/O口或特殊端口

串行口:RXD、TXD

特殊端口中断接口:INT0、INT1计数器:T0、T1

电源:VCC、VSS外部结构/EA:低电平从外部程序存储器取4三、单片机的内部结构CPUROM存储器时钟RAM存储器SFR特殊寄存器定时/计数器并行I/O接口串行I/O接口P0P1P2P3TXDRXD计数输入T0T1中断系统INT0INT1外扩展部分三、单片机的内部结构CPU时钟定时/计数器并行串行P0P5MCS-51单片机内部结构MCS-51单片机内部结构6中央处理器CPU程序存储器ROM

数据存储器RAM

时序控制逻辑

接口控制电路

算术逻辑运算单元ALU累加器ACC寄存器阵列、栈区状态标志PSW程序指针PC、栈指针SP、数据指针DPTR指令译码逻辑

并行输入输出接口:4个8位I/O接口串行输入输出接口:1个UART复位逻辑RST:高电平复位(>10ms)中断控制逻辑:2个外部和3个内部中断

内部中断:1个串行口中断、2个计数器中断

外部中断:2个外部中断INT0、INT1

内部组成

——内部最多4KBROM或EPROM

——内部128BRAM以及特殊寄存器SFR块

——内部时钟振荡器及时序控制逻辑

算术逻辑运算单元ALU并行输入输出接口:4个8位I/O接口7四、主要性能

◆CPU:8位;◆存储器:片内128BRAM、4KBROM,片外可扩展64KBRAM、64KBROM;◆4个8位I/O口,共32条I/O口线;◆2个16位定时/计数器;◆1个全双工通用异步串行通信端口;◆2个外部、3个内部共5个中断源,2个中断优先级;◆内部RAM以及特殊寄存器SFR可以位寻址,即拥有布尔操作区;◆乘除指令、布尔操作指令。

小结四、主要性能◆CPU:8位;小结8§2.MCS-51存储器配置一、地址空间

1、程序存储器空间

内部ROM+外部ROM的总空间=64KB

4个物理存储器空间:内部ROM、外部ROM内部RAM、外部RAM。

(c)内部+外部 内部4KB:0000H——0FFFH

外部60KB:1000H——FFFFH

三种程序存储器配置情况:(a)内部ROM(或PROM、EPROM、EEPROM、FLASHROM)4KB:0000H——0FFFH(b)外部ROM(或PROM、EPROM、EEPROM、FLASHROM)64KB:0000H——FFFFH§2.MCS-51存储器配置一、地址空间1、程序存储器空9内部ROM(4KB)0FFFH:::0000H外部ROM(60KB)内部or外部ROM(4KB)0FFFH:::0000HFFFFH:::1000HEA=1时,访问内部程序存储器,超出内部地址范围时,自动指向外部;EA=0时,强行访问外部程序存储器,不管内部是否有程序存储器。

EA管脚的作用?0FFFH0FFFHFFFFHEA=1时,访问内部程序存储器102、数据存储器空间★★MCS-51的程序寻址范围为:0000HFFFFHMCS-51的内部RAM寻址范围为:00H7FH

内部SFR寻址范围为:80HFFHMCS-51的外部RAM寻址范围为:0000HFFFFH◆内部RAM空间=256B,低128B为数据存储器RAM,另128B空间作为特殊寄存器SFR使用

◆外部RAM空间=64KB2、数据存储器空间★★◆内部RAM空间=256B,低128113、MCS—51单片机的分类

◆MCS—51单片机泛制8031、8051、8751等型号,其主要型号区别在于其内部ROM的类型◆MCS—52系列单片机泛指8032、8052、8752等型号,它是对应MCS—51系列单片机的加强型或称double型,主要是存储器加倍存储器类型单片机内部ROM内部EPROM内部RAM其它MCS—518031//128B4个8位可编程并行接口2个16位定时/计数器1个串行通信接口URAT2个外部中断源

80514KB/8751/4KBMCS—528032//256B4个8位可编程并行接口3个16位定时/计数器1个串行通信接口URAT2个外部中断源

80528KB/8752/8KB★一般MCS—51单片机不加特别说明就指80313、MCS—51单片机的分类◆MCS—51单片机泛制80312普林斯顿结构:程序和数据共用一个存储器逻辑空 间,统一编址。MCS—514、存储器结构

哈佛结构:程序与数据分为两个独立存储器逻辑空间, 分开编址。普林斯顿结构:程序和数据共用一个存储器逻辑空 间,13二、7个入口地址

入口地址用途0000H复位入口0003HINT0中断入口000BHCTC0中断入口0013HINT1中断入口001BHCTC1中断入口0023H串行口中断入口002BHCTC2中断入口(52系列)入口地址是硬件自动引导的程序跳转入口何谓入口地址?二、7个入口地址入口地址用途0000H复位入口0014

ORG 0000H AJMP MAIN ORG 0003H AJMP SUB-IT0

ORG 000BH AJMP SUB-CT0 ORG 0013H AJMP SUB-IT1 ORG 001BH AJMP SUB-CT1 ORG 0023H AJMP SUB-UT

ORG 0050H;INT0中断SUB-IT0:… ;服务子程序 RETI ORG 0100H ;CTC0中断SUB-CT0:… ;服务子程序 RETI ORG 0500H ;RST复位入口MAIN:

;主程序 END例2-1:程序入口引导 ORG 0000H ORG 0050H;INT0中断15三、内部128BRAM

◆128BRAM①00H1FH:分成4个快速定位寄存器区,每个区中有R0R7共8个寄存器

②20H2FH:除正常作为RAM单元外,还可“位寻址”。共128位单元,位地址00H7FH

③30H7FH:

一般RAM区/栈区。理论上说00H7FH均可作为一般RAM和堆栈使用◆51系列单片机内部RAM总寻址空间为256B其中,低128B—RAM,内存高128B—SFR,内部特殊寄存器三、内部128BRAM◆128BRAM◆51系列单片机16内部128BRAM地址分配寄存器区?布尔区?内部128BRAM地址分配寄存器区?布尔区?17四、128BSFR特殊功能寄存器符号地址功能符号地址功能BF0HB寄存器

TH18DH定时器/计数器1(高8位)

ACCE0H累加器

TH08CH定时器/计数器1(低8位)

PSWD0H程序状态字

TL18BH定时器/计数器0(高8位)

IPB8H中断优先级控制寄存器

TL08AH定时器/计数器0(低8位)

P3B0HP3口锁存器

TMOD89H定时器/计数器方式控制寄存器

IEA8H中断允许控制寄存器

TCON88H定时器/计数器控制寄存器

P2A0HP2口锁存器

PCON87H电源控制寄存器

SBUF99H串行口锁存器

DPH83H数据地址指针(高8位)

SCON98H串行口控制寄存器

DPL82H数据地址指针(低8位)

P190HP1口锁存器

SP81H堆栈指针

P080HP0口锁存器

▲51系列有20个专用寄存器属于SFR块,共占用21个字节▲PC程序地址指针独立存在,不属于SFR区▲SFR区中的专用寄存器在单片机编程中具有重要意义

四、128BSFR特殊功能寄存器符号地址功能符号地址功能18五、位寻址单元▲有12个单元可以位寻址它们是……其字节地址可被8整除哪些单元可以位寻址?五、位寻址单元▲有12个单元可以位寻址哪些单元可以位寻址?19六、专用寄存器

◆程序计数器PC存放下一条要执行的指令的地址,又称程序指针,共16位。PC实际上是程序地址计数器,PC中的内容是将要执行的下一条指令的地址。改变PC的内容就可改变程序执行的方向。PC可对64KB程序存储器ROM直接寻址。

◆累加器A

累加器A是最常用的专用寄存器。进入ALU中进行算术运算和逻辑运算的操作数大多来自累加器A,其操作的结果也常送回累加器A。有许多单操作数指令都是直接通过累加器A完成的。◆寄存器B乘除运算时使用,其它情况可作为普通内部RAM单元使用◆栈指针SP

表示堆栈的起始地址,可由用户自定义。例如设置SP=30H,则内部RAM的30H-7FH均被设置为栈区。

◆数据指针DPTR

16位专用寄存器,可表示对外部数据寄存器的操作地址。可分解为DPH、DPL两个部分分别使用。

◆端口P0-P3

端口P0~P3的镜像寄存器,内部RAM单元的读/写操作就等效为进行(输入/输出)操作。

◆其它寄存器

1、与串行口、定时/计数器、中断相关的寄存器:SBUF、TH0、TL0、TH1、TL1、IP、IE、TMOD、SCON、PCON等六、专用寄存器◆程序计数器PC存放下一条要执行的指令的地址20七、程序状态字PSW

CYACF0RS1RS0OV—PPSW.7——————PSW.0★CY(PSW.7):进位标志许多算术、逻辑运算指令均影响CYCY还用作为布尔处理机的累加器。使用率高。★AC(PSW.6):辅助进位(半进位)

用于十进制运算调整,参见DA指令。★F0(PSW.5):用户自定义标志位

★OV(PSW.2):溢出标志

用于算术运算时指示结果是否溢出。

★P(PSW.0):奇偶标志

P=1表示累加器A中的“1”的位数为奇数,否则,为偶数。主要用于数据传输时进行校验

七、程序状态字PSWCYACF0RS1RS0OV—PPSW21★RS1、RS0(PSW.4、PSW.3):寄存器区选择

RS1RS0寄存器区内部RAM地址00000H~07H01108H~0FH10210H~17H11318H~1FHPSW?PSW是可以位寻址的,其作用是监测、控制程序状态如何选择寄存器区?系统复位时,自动指向0区★RS1、RS0(PSW.4、PSW.3):寄存器区选择22例2-2解释以下程序执行完后,内部RAM中00H1FH各单元的数值为多少? CLR A MOV R0,#31 MOV R1,#16LOOP: MOV R0,A DEC R0 DJNZ R1,LOOP SETB PSW.4 SETB PSW.3 MOV R7,#45 CLR PSW.3

MOV R7,#33;A清0;(00H)=1FH(01H)=16;(1FH)~(10H)=0(00H)=0FH(01H)=0;选择寄存器区为3区;(1FH)=45

;选择寄存器区为2区;(17H)=33

例2-2解释以下程序执行完后,内部RAM中00H1FH各单231.MCS—51存储结构分配是怎样的?2.SFR中各寄存器的名称?

3.程序状态寄存器PSW中各位的含义?

思考题 1.8051单片机内部RAM可划分为几个区域?各个区域的特点? 2.MCS—51单片机内部的特殊功能寄存器有哪些?它们的功能?

寻址方式有何特点? 3.怎样进行工作寄存器区的选择?作业1.MCS—51存储结构分配是怎样的?思考题 1.805124§3.时钟、复位、时序

晶体振荡电路为计算机提供基准时序,MCS-51单片机的基准时钟可采用2种方法:

一、时钟2)、外接时钟。通过OC门外接

1)、石英晶体振荡电路。C1、C2起抗扰动作用,取值一般为530pF;3)、时钟范围:1.2MHz~12MHz§3.时钟、复位、时序 晶体振荡电路为计算机提25二、复位

RST/VPD:复位信号端和后备电源输入端。输入>10ms的高电平脉冲,单片机复位。VPD使用后备电源,可实现掉电保护。复位电路:1)上电复位 2)外部同步复位二、复位 RST/VPD:复位信号端和后备电源输入端。输26三、时序思考题:设应用单片机晶振频率分别为6MHz、8MHz、12MHz,问机器周期分别为多少?指令周期分别为多少?1、机器周期、机器状态、时钟节拍

1个时钟节拍周期=1/Φ(假定晶体振荡器=ΦMHz)1个机器周期TCY包含6个机器状态:S1、S2、S3、S4、S5、S61个机器状态包含2个时钟节拍:P1、P21个机器周期TCY包含12个时钟节拍:S1P1~S6P2机器周期TCY

=12/Φ,是指令执行的最小时间指令周期:一条指令的执行时间,以机器周期为单位,则指令可分为:单周期、双周期和四周期指令三、时序思考题:设应用单片机晶振频率分别为6MHz、8MH27外部RAM读写MOVX指令时序

外部RAM读写MOVX指令时序28例1-3:如图所示MCS-51单片机系统。要求检测到X为高电平时,继电器吸合2秒后断开。试编制程序。

▲注意:尽量使用内部定时器而不要采用纯粹的软件延时程序。▲思考题:假定12MHz时钟改成6MHz,如何设计?

解:例1-3:如图所示MCS-51单片机系统。要求检测到X为高电29§4.输入输出端口一、P0口

P0口结构图功能:DB0-7、I/O、AB0-71、当控制信号=“0”时,——I/O

开关位置如图示→与门输出“0”→FET1截止→输出级为开漏输出

◆CPU向端口写数据

写脉冲加到CL端,内部总线上数据由D端锁存到D触发器,经反相端输出,再经输出级FET2反相,送到引脚。引脚上出现的数据恰好是内部总线上的数据。

◆CPU从端口引脚读数据

读脉冲→读引脚

→缓冲器B1通→P0.X引脚信号到达内部总线

◆CPU从端口寄存器读数据

读脉冲→“读锁存器”

→缓冲器B2通→寄存器Q端数据→内部总线

§4.输入输出端口一、P0口P0口结构图功能:DB0-7302、当控制信号=“1”时,——

AB0-7、DB0-7这时,与门开通,FET2接到反相器输出端。CPU输出的地址/数据同时经FET1和FET2实现“推拉”输出。另一种情况,数据总线输入数据时,仍经由缓冲器B1进入内部总线。

说明1:作为普通I/O口使用时,P0口为输出开漏电路,内部无上拉电阻,必须外接上拉电阻。作为地址/数据总线使用时,内部由上下2个FET推拉驱动,不得外接上拉电阻

说明2:在一个系统中P0口只能被定义为一种模式,要么作为普通I/O口,要么作为总线,一旦系统设计完成,则不能互换。

说明3:作为普通I/O口使用时,若要从引脚读取数据,应先向该端口写入“1”,然后再读取。写入“1”后,端口2个FET均截止,处于高阻悬浮状态,便于数据的可靠采集

说明4:端口引脚和端口寄存器不一定一致,直接从端口引脚取数据则其结果则是无法预料的。“读—修改—写”指令实际读的是端口寄存器2、当控制信号=“1”时,——AB0-7、DB0-7这时,31二、P1口——I/OP1口的内部寄存器与P0相似。耗尽型FET1提供固定上拉电阻,但是这个上拉电阻阻值较大。当Q从“1”

→“0”时,

FET2由导通→截止,但是由于FET1的阻值较大,动态特性差。

P1、P2、P3口的输出级结构相同。

改善端口动态特性的方法是引入附加上拉电阻。当Q从“1”

→“0”时,或门输出产生“

”过程,高电平持续时间2个振荡周期,此间,FET3导通,FET3的导通电阻远小于FET1,可很好地改善端口的动态特性。二、P1口——I/OP1口的内部寄存器与P032三、P2、P3口

P2功能:I/O、AB0-7;P3功能:I/O、特殊端口当控制信号为低电平时,多路开关接到左端,P2口作为通用I/O口使用,其功能和使用方法与P1口相同。当控制端输出高电平时,多路开关接到右端,地址信号经反相器从引脚输出。这时P2口输出地址总线高8位,供系统扩展使用。对8051、8751单片机,P2口能作为I/O口或地址总线。对于8031单片机,P2口只能用作地址总线。

P3口有一套替代功能转换逻辑电路,可实现普通I/O或特殊端口三、P2、P3口P2功能:I/O、AB0-7;P3功能:33四、P0、P1、P2、P3口的负载能力

◆P0口的输出能驱动8个LSTTL负载,输出电流不小于800μA(通常把100μA输入电流定义为一个TTL负载输人电流),P1~P3口的输出能驱动4个LSTTL负载。

◆对于MOS型负载,P1、P2、P3无须外加电阻就可以直接驱动。P0口作I/O口使用时需外加上拉电阻,P0口用作地址/数据线时,它可以直接驱动MOS型负载,而不必加上拉电阻。

◆不同厂家的单片机的驱动能力可能不同,特别是一些MCS—51兼容型单片机,在负载能力、速度、功耗等方面均比标准51单片机有很大改进

。四、P0、P1、P2、P3口的负载能力◆P0口的输出能341、P0口:地址低8位与数据线分时使用端口或通用I/O2、P1口:按位可编址的通用I/O端口3、P2口:地址高8位输出口或按位可编址的通用I/O口4、P3口:双功能口。若不用第二功能,也可作按位可编址的通用I/O口5、按三总线划分:

地址线AB:P0低八位地址,P2高八地址数据线DB:P0输入输出8位数据控制线CB:P3口的8位加上/PSEN、ALE共同完成控制总线小结1、P0口:地址低8位与数据线分时使用端口或通用I/O35布置作业1.简述80C51单片机的4个I/O口在使用上有哪些分工和特点?

2.

P0口作普通I/O口使用时,应注意什么?3.设单片机的晶振频率为6MHz时,试求机器周期和ALE引脚的信号周期。4.单片机复位的作用是什么?复位操作对内部寄存器有哪些影响?布置作业1.简述80C51单片机的4个I/O口在使用上有哪36§5.工作方式

MCS—51单片机的工作方式有四种:◆复位。复位脉冲自动引导系统进入复位入口,即使程序指针PC=0000H,取指令,进入程序执行方式◆程序执行。正常工作方式,运行编制好的程序◆低功耗。这是MCS—51单片机在系统休闲时为降低功耗采取的工作方式。电池供电系统经常采用。低功耗方式又分:休眠、掉电保护两种工作方式。◆单步执行。系统调试时采用的工作方式。按一次按钮就执行一条用户指令。§5.工作方式

MCS—51单片机的工作方式有四种:◆复371、低功耗方式◆掉电保护方式

单片机运行过程中如果断电,CPU内部数据RAM、SFR以及PC、SP等中的数据将丢失。这时如将备用电源加到RST/VPD引脚上,只要VCC上的电压低于VPD上的电压,备用电源就通过VPD端给内部RAM供电,系统以低功耗的工作方式保持内部RAM中的数据,以便再加电时能继续原来工作。能实现掉电保护的电路称为掉电保护电路,现场应用系统必备。

对于CHMOS型工艺的MCS—51单片机来说,PCON.0(IDL)=“1”,进入待机方式。只由中断和系统复位才能解脱这种状态。IDL置“1”时,单片机进人待机方式。这时振荡器仍然运行。并向中断逻辑、串行口和定时器/计数器电路提供时钟,CPU停止工作,中断功能继续有效。但CPU中PC、SP、ACC等停止在原状态。◆待机方式HMOS型51单片机只有掉电保护方式。CHMOS型51单片机的低功耗方式则有待机方式和掉电保护两种方式。在待机方式下,若中断请求有效,单片机响应中断,同时PCON.0被硬件自动清“0”,单片机退出待机方式进人正常工作方式。这种方式主要用来设计一些平时只走时钟不工作的应用系统,对用电池作电源的系统是很有意义的。

注意1、低功耗方式◆掉电保护方式单片机运行过程中如果断38本章小结 本章主要介绍单片机的内外部结构,包括引脚描述、内部结构与基本工作原理、程序存储器ROM、数据存储器RAM及其使用区域划分、特殊功能寄存器SFR、端口功能与结构、时序、复位、单片机工作方式等内容。 通过对本章的学习,读者应对单片机的内部结构、内部资源的功能与使用方法有一个较为具体的认识和了解。本章小结 本章主要介绍单片机的内外部结构,包括引脚描述、内39MCS—51单片机组成原理课件40MCS—51单片机组成原理课件41§1.MCS-51引脚描述与内部结构

◆HMOS工艺的51单片机,40引脚双列直插PDIP封装,如8051◆CHMOS工艺的51单片机,44脚方型塑封结构PLCC封装,如80C51一、封装形式

★PDIP封装,引脚数40、24、20、8★

PLCC封装,68脚、44脚PDIPPLCC§1.MCS-51引脚描述与内部结构◆HMOS工艺的542PDIP封装HMOS工艺的51单片机PDIP封装HMOS工艺的51单片机43二、引脚定义

8051单片机的引脚定义:◆2条电源线◆2条外接晶体振荡器◆4条控制和电源复用线◆32条I/O引脚详细引脚描述参见表2-1-1二、引脚定义 8051单片机的引脚定义:详细引脚描述参见表244电源:VCC、VSS复位:RST,高电平复位

时钟:XTAL1、XTAL2

存储器接口信号I/O接口外部结构/EA:低电平从外部程序存储器取指令/PESN:取指令选通信号ALE:外部地址锁存信号

/WR:外部数据写选通信号

/RD:外部数据读选通信号

P0口:外部数据总线和地址总线低8位或I/O口P1口:I/O口P2口:外部地址总线高8位或I/O口

P3口:I/O口或特殊端口

串行口:RXD、TXD

特殊端口中断接口:INT0、INT1计数器:T0、T1

电源:VCC、VSS外部结构/EA:低电平从外部程序存储器取45三、单片机的内部结构CPUROM存储器时钟RAM存储器SFR特殊寄存器定时/计数器并行I/O接口串行I/O接口P0P1P2P3TXDRXD计数输入T0T1中断系统INT0INT1外扩展部分三、单片机的内部结构CPU时钟定时/计数器并行串行P0P46MCS-51单片机内部结构MCS-51单片机内部结构47中央处理器CPU程序存储器ROM

数据存储器RAM

时序控制逻辑

接口控制电路

算术逻辑运算单元ALU累加器ACC寄存器阵列、栈区状态标志PSW程序指针PC、栈指针SP、数据指针DPTR指令译码逻辑

并行输入输出接口:4个8位I/O接口串行输入输出接口:1个UART复位逻辑RST:高电平复位(>10ms)中断控制逻辑:2个外部和3个内部中断

内部中断:1个串行口中断、2个计数器中断

外部中断:2个外部中断INT0、INT1

内部组成

——内部最多4KBROM或EPROM

——内部128BRAM以及特殊寄存器SFR块

——内部时钟振荡器及时序控制逻辑

算术逻辑运算单元ALU并行输入输出接口:4个8位I/O接口48四、主要性能

◆CPU:8位;◆存储器:片内128BRAM、4KBROM,片外可扩展64KBRAM、64KBROM;◆4个8位I/O口,共32条I/O口线;◆2个16位定时/计数器;◆1个全双工通用异步串行通信端口;◆2个外部、3个内部共5个中断源,2个中断优先级;◆内部RAM以及特殊寄存器SFR可以位寻址,即拥有布尔操作区;◆乘除指令、布尔操作指令。

小结四、主要性能◆CPU:8位;小结49§2.MCS-51存储器配置一、地址空间

1、程序存储器空间

内部ROM+外部ROM的总空间=64KB

4个物理存储器空间:内部ROM、外部ROM内部RAM、外部RAM。

(c)内部+外部 内部4KB:0000H——0FFFH

外部60KB:1000H——FFFFH

三种程序存储器配置情况:(a)内部ROM(或PROM、EPROM、EEPROM、FLASHROM)4KB:0000H——0FFFH(b)外部ROM(或PROM、EPROM、EEPROM、FLASHROM)64KB:0000H——FFFFH§2.MCS-51存储器配置一、地址空间1、程序存储器空50内部ROM(4KB)0FFFH:::0000H外部ROM(60KB)内部or外部ROM(4KB)0FFFH:::0000HFFFFH:::1000HEA=1时,访问内部程序存储器,超出内部地址范围时,自动指向外部;EA=0时,强行访问外部程序存储器,不管内部是否有程序存储器。

EA管脚的作用?0FFFH0FFFHFFFFHEA=1时,访问内部程序存储器512、数据存储器空间★★MCS-51的程序寻址范围为:0000HFFFFHMCS-51的内部RAM寻址范围为:00H7FH

内部SFR寻址范围为:80HFFHMCS-51的外部RAM寻址范围为:0000HFFFFH◆内部RAM空间=256B,低128B为数据存储器RAM,另128B空间作为特殊寄存器SFR使用

◆外部RAM空间=64KB2、数据存储器空间★★◆内部RAM空间=256B,低128523、MCS—51单片机的分类

◆MCS—51单片机泛制8031、8051、8751等型号,其主要型号区别在于其内部ROM的类型◆MCS—52系列单片机泛指8032、8052、8752等型号,它是对应MCS—51系列单片机的加强型或称double型,主要是存储器加倍存储器类型单片机内部ROM内部EPROM内部RAM其它MCS—518031//128B4个8位可编程并行接口2个16位定时/计数器1个串行通信接口URAT2个外部中断源

80514KB/8751/4KBMCS—528032//256B4个8位可编程并行接口3个16位定时/计数器1个串行通信接口URAT2个外部中断源

80528KB/8752/8KB★一般MCS—51单片机不加特别说明就指80313、MCS—51单片机的分类◆MCS—51单片机泛制80353普林斯顿结构:程序和数据共用一个存储器逻辑空 间,统一编址。MCS—514、存储器结构

哈佛结构:程序与数据分为两个独立存储器逻辑空间, 分开编址。普林斯顿结构:程序和数据共用一个存储器逻辑空 间,54二、7个入口地址

入口地址用途0000H复位入口0003HINT0中断入口000BHCTC0中断入口0013HINT1中断入口001BHCTC1中断入口0023H串行口中断入口002BHCTC2中断入口(52系列)入口地址是硬件自动引导的程序跳转入口何谓入口地址?二、7个入口地址入口地址用途0000H复位入口0055

ORG 0000H AJMP MAIN ORG 0003H AJMP SUB-IT0

ORG 000BH AJMP SUB-CT0 ORG 0013H AJMP SUB-IT1 ORG 001BH AJMP SUB-CT1 ORG 0023H AJMP SUB-UT

ORG 0050H;INT0中断SUB-IT0:… ;服务子程序 RETI ORG 0100H ;CTC0中断SUB-CT0:… ;服务子程序 RETI ORG 0500H ;RST复位入口MAIN:

;主程序 END例2-1:程序入口引导 ORG 0000H ORG 0050H;INT0中断56三、内部128BRAM

◆128BRAM①00H1FH:分成4个快速定位寄存器区,每个区中有R0R7共8个寄存器

②20H2FH:除正常作为RAM单元外,还可“位寻址”。共128位单元,位地址00H7FH

③30H7FH:

一般RAM区/栈区。理论上说00H7FH均可作为一般RAM和堆栈使用◆51系列单片机内部RAM总寻址空间为256B其中,低128B—RAM,内存高128B—SFR,内部特殊寄存器三、内部128BRAM◆128BRAM◆51系列单片机57内部128BRAM地址分配寄存器区?布尔区?内部128BRAM地址分配寄存器区?布尔区?58四、128BSFR特殊功能寄存器符号地址功能符号地址功能BF0HB寄存器

TH18DH定时器/计数器1(高8位)

ACCE0H累加器

TH08CH定时器/计数器1(低8位)

PSWD0H程序状态字

TL18BH定时器/计数器0(高8位)

IPB8H中断优先级控制寄存器

TL08AH定时器/计数器0(低8位)

P3B0HP3口锁存器

TMOD89H定时器/计数器方式控制寄存器

IEA8H中断允许控制寄存器

TCON88H定时器/计数器控制寄存器

P2A0HP2口锁存器

PCON87H电源控制寄存器

SBUF99H串行口锁存器

DPH83H数据地址指针(高8位)

SCON98H串行口控制寄存器

DPL82H数据地址指针(低8位)

P190HP1口锁存器

SP81H堆栈指针

P080HP0口锁存器

▲51系列有20个专用寄存器属于SFR块,共占用21个字节▲PC程序地址指针独立存在,不属于SFR区▲SFR区中的专用寄存器在单片机编程中具有重要意义

四、128BSFR特殊功能寄存器符号地址功能符号地址功能59五、位寻址单元▲有12个单元可以位寻址它们是……其字节地址可被8整除哪些单元可以位寻址?五、位寻址单元▲有12个单元可以位寻址哪些单元可以位寻址?60六、专用寄存器

◆程序计数器PC存放下一条要执行的指令的地址,又称程序指针,共16位。PC实际上是程序地址计数器,PC中的内容是将要执行的下一条指令的地址。改变PC的内容就可改变程序执行的方向。PC可对64KB程序存储器ROM直接寻址。

◆累加器A

累加器A是最常用的专用寄存器。进入ALU中进行算术运算和逻辑运算的操作数大多来自累加器A,其操作的结果也常送回累加器A。有许多单操作数指令都是直接通过累加器A完成的。◆寄存器B乘除运算时使用,其它情况可作为普通内部RAM单元使用◆栈指针SP

表示堆栈的起始地址,可由用户自定义。例如设置SP=30H,则内部RAM的30H-7FH均被设置为栈区。

◆数据指针DPTR

16位专用寄存器,可表示对外部数据寄存器的操作地址。可分解为DPH、DPL两个部分分别使用。

◆端口P0-P3

端口P0~P3的镜像寄存器,内部RAM单元的读/写操作就等效为进行(输入/输出)操作。

◆其它寄存器

1、与串行口、定时/计数器、中断相关的寄存器:SBUF、TH0、TL0、TH1、TL1、IP、IE、TMOD、SCON、PCON等六、专用寄存器◆程序计数器PC存放下一条要执行的指令的地址61七、程序状态字PSW

CYACF0RS1RS0OV—PPSW.7——————PSW.0★CY(PSW.7):进位标志许多算术、逻辑运算指令均影响CYCY还用作为布尔处理机的累加器。使用率高。★AC(PSW.6):辅助进位(半进位)

用于十进制运算调整,参见DA指令。★F0(PSW.5):用户自定义标志位

★OV(PSW.2):溢出标志

用于算术运算时指示结果是否溢出。

★P(PSW.0):奇偶标志

P=1表示累加器A中的“1”的位数为奇数,否则,为偶数。主要用于数据传输时进行校验

七、程序状态字PSWCYACF0RS1RS0OV—PPSW62★RS1、RS0(PSW.4、PSW.3):寄存器区选择

RS1RS0寄存器区内部RAM地址00000H~07H01108H~0FH10210H~17H11318H~1FHPSW?PSW是可以位寻址的,其作用是监测、控制程序状态如何选择寄存器区?系统复位时,自动指向0区★RS1、RS0(PSW.4、PSW.3):寄存器区选择63例2-2解释以下程序执行完后,内部RAM中00H1FH各单元的数值为多少? CLR A MOV R0,#31 MOV R1,#16LOOP: MOV R0,A DEC R0 DJNZ R1,LOOP SETB PSW.4 SETB PSW.3 MOV R7,#45 CLR PSW.3

MOV R7,#33;A清0;(00H)=1FH(01H)=16;(1FH)~(10H)=0(00H)=0FH(01H)=0;选择寄存器区为3区;(1FH)=45

;选择寄存器区为2区;(17H)=33

例2-2解释以下程序执行完后,内部RAM中00H1FH各单641.MCS—51存储结构分配是怎样的?2.SFR中各寄存器的名称?

3.程序状态寄存器PSW中各位的含义?

思考题 1.8051单片机内部RAM可划分为几个区域?各个区域的特点? 2.MCS—51单片机内部的特殊功能寄存器有哪些?它们的功能?

寻址方式有何特点? 3.怎样进行工作寄存器区的选择?作业1.MCS—51存储结构分配是怎样的?思考题 1.805165§3.时钟、复位、时序

晶体振荡电路为计算机提供基准时序,MCS-51单片机的基准时钟可采用2种方法:

一、时钟2)、外接时钟。通过OC门外接

1)、石英晶体振荡电路。C1、C2起抗扰动作用,取值一般为530pF;3)、时钟范围:1.2MHz~12MHz§3.时钟、复位、时序 晶体振荡电路为计算机提66二、复位

RST/VPD:复位信号端和后备电源输入端。输入>10ms的高电平脉冲,单片机复位。VPD使用后备电源,可实现掉电保护。复位电路:1)上电复位 2)外部同步复位二、复位 RST/VPD:复位信号端和后备电源输入端。输67三、时序思考题:设应用单片机晶振频率分别为6MHz、8MHz、12MHz,问机器周期分别为多少?指令周期分别为多少?1、机器周期、机器状态、时钟节拍

1个时钟节拍周期=1/Φ(假定晶体振荡器=ΦMHz)1个机器周期TCY包含6个机器状态:S1、S2、S3、S4、S5、S61个机器状态包含2个时钟节拍:P1、P21个机器周期TCY包含12个时钟节拍:S1P1~S6P2机器周期TCY

=12/Φ,是指令执行的最小时间指令周期:一条指令的执行时间,以机器周期为单位,则指令可分为:单周期、双周期和四周期指令三、时序思考题:设应用单片机晶振频率分别为6MHz、8MH68外部RAM读写MOVX指令时序

外部RAM读写MOVX指令时序69例1-3:如图所示MCS-51单片机系统。要求检测到X为高电平时,继电器吸合2秒后断开。试编制程序。

▲注意:尽量使用内部定时器而不要采用纯粹的软件延时程序。▲思考题:假定12MHz时钟改成6MHz,如何设计?

解:例1-3:如图所示MCS-51单片机系统。要求检测到X为高电70§4.输入输出端口一、P0口

P0口结构图功能:DB0-7、I/O、AB0-71、当控制信号=“0”时,——I/O

开关位置如图示→与门输出“0”→FET1截止→输出级为开漏输出

◆CPU向端口写数据

写脉冲加到CL端,内部总线上数据由D端锁存到D触发器,经反相端输出,再经输出级FET2反相,送到引脚。引脚上出现的数据恰好是内部总线上的数据。

◆CPU从端口引脚读数据

读脉冲→读引脚

→缓冲器B1通→P0.X引脚信号到达内部总线

◆CPU从端口寄存器读数据

读脉冲→“读锁存器”

→缓冲器B2通→寄存器Q端数据→内部总线

§4.输入输出端口一、P0口P0口结构图功能:DB0-7712、当控制信号=“1”时,——

AB0-7、DB0-7这时,与门开通,FET2接到反相器输出端。CPU输出的地址/数据同时经FET1和FET2实现“推拉”输出。另一种情况,数据总线输入数据时,仍经由缓冲器B1进入内部总线。

说明1:作为普通I/O口使用时,P0口为输出开漏电路,内部无上拉电阻,必须外接上拉电阻。作为地址/数据总线使用时,内部由上下2个FET推拉驱动,不得外接上拉电阻

说明2:在一个系统中P0口只能被定义为一种模式,要么作为普通I/O口,要么作为总线,一旦系统设计完成,则不能互换。

说明3:作为普通I/O口使用时,若要从引脚读取数据,应先向该端口写入“1”,然后再读取。写入“1”后,端口2个FET均截止,处于高阻悬浮状态,便于数据的可靠采集

说明4:端口引脚和端口寄存器不一定一致,直接从端口引脚取数据则其结果则是无法预料的。“读—修改—写”指令实际读的是端口寄存器2、当控制信号=“1”时,——AB0-7、DB0-7这时,72二、P1口——I/OP1口的内部寄存器与P0相似。耗尽型FET1提供固定上拉电阻,但是这个上拉电阻阻值较大。当Q从“1”

→“0”时,

FET2由导通→截止,但是由于FET1的阻值较大,动态特性差。

P1、P2、P3口的输出级结构相同。

改善端口动态特性的方法是引入附加上拉电阻。当Q从“1”

→“0”时,或门输出产生“

”过程,高电平持续时间2个振荡周期,此间,FET3导通,FET3的导通电阻远小于FET1,可很好地改善端口的动态特性。二、P1口——I/OP1口的内部寄存器与P073三、P2、P3口

P2功能:I/O、AB0-7;P3功能:I/O、特殊端口当控制信号为低电平时,多路开关接到左端,P2口作为通用

温馨提示

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

最新文档

评论

0/150

提交评论