预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共32页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

2.1概述2.1.2单片机的应用2.多机应用2.2MCS-51单片机硬件结构2.2.2MCS-51单片机的内部结构2.3中央处理器CPU表2.2RS1、RS0与片内工作寄存器组的对应关系2.3.2控制器2.复位电路表2.3复位后内部寄存器状态3.指令寄存器和指令译码器 指令寄存器中存放指令代码。CPU执行指令时,由程序存储器中读取的指令代码送入指令存储器,经译码器译码后由定时与控制电路发出相应的控制信号,完成指令所指定的操作。4.程序计数器PC(ProgramCounter) PC用于存放CPU下一条要执行的指令地址,是一个16位的专用寄存器,可寻址范围是0000H~0FFFFH共64KB。程序中的每条指令存放在ROM区的某一单元,并都有自己的存放地址。CPU要执行哪条指令时,就把该条指令所在的单元的地址送上地址总线。在顺序执行程序中,当PC的内容被送到地址总线后,会自动加1,即(PC)←(PC)+1,又指向CPU下一条要执行的指令地址。5.堆栈指针SP(StackPointer) 堆栈操作是在内存RAM区专门开辟出来的按照“先进后出”原则进行数据存取的一种工作方式,主要用于子程序调用及返回和中断处理断点的保护及返回,它在完成子程序嵌套和多重中断处理中是必不可少的。为保证逐级正确返回,进入栈区的“断点”数据应遵循“先进后出”的原则。SP用来指示堆栈所处的位置,在进行操作之前,先用指令给SP赋值,以规定栈区在RAM区的起始地址(栈底层)。当数据推入栈区后,SP的值也自动随之变化。MCS-51系统复位后,SP初始化为07H。6.数据指针寄存器DPTR 数据指针DPTR是一个16位的专用寄存器,其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示。既可作为一个16位寄存器DPTR来处理,也可作为两个独立的8位寄存器DPH和DPL来处理。 DPTR主要用来存放16位地址,当对64KB外部数据存储器空间寻址时,作为间址寄存器用。在访问程序存储器时,用作基址寄存器。2.4存储器的结构1.程序存储器 对于8051来说,程序存储器(ROM)的内部地址为0000H~0FFFH,共4KB;外部地址为1000H~FFFFH,共60KB。当程序计数器由内部0FFFH执行到外部1000H时,会自动跳转。对于8751来说,内部有4KB的EPROM,将它作为内部程序存储器;8031内部无程序存储器,必须外接程序存储器。 8031最多可外扩64KB程序存储器,其中6个单元地址具有特殊用途,是保留给系统使用的。0000H是系统的启动地址,一般在该单元中存放一条绝对跳转指令。0003H、000BH、000BH、001BH和0023H对应5种中断源的中断服务入口地址。2.内部数据存储器 MCS-51单片机片内RAM的配置如图2.4(b)所示。片内RAM为256字节,地址范围为00H~FFH,分为两大部分:低128字节(00H~7FH)为真正的RAM区;高128字节(80H~FFH)为特殊功能寄存器区SFR。 在低128字节RAM中,00H~1FH共32单元是4个通用工作寄存器区。每一个区有8个通用寄存器R0~R7。寄存器和RAM地址对应关系如表2.4。表2.4寄存器与RAM地址对照表表2.5RAM中的位寻址区地址表表2.6SFR特殊功能寄存器地址表表2.6SFR特殊功能寄存器地址表表2.6SFR特殊功能寄存器地址表3.外部数据存储器 外部数据存储器一般由静态RAM构成,其容量大小由用户根据需要而定,最大可扩展到64KBRAM,地址是0000H~0FFFFH。CPU通过MOVX指令访问外部数据存储器,用间接寻址方式,R0、R1和DPTR都可作间接寄存器。注意,外部RAM和扩展的I/O接口是统一编址的,所有的外扩I/O口都要占用64KB中的地址单元。2.5并行输入/输出接口2.P1、P2和P3口表2.7P3口的第二功能2.6单片机的引脚及其功能2.7单片机工作的基本时序2.MCS-51指令的取指/执行时序3.访问外部ROM和RAM的时序图2-9读外部数据RAM时序图2.10写外部数据RAM的时序