第2章89C51单片机硬件结构和原理

上传人:fgh****35 文档编号:246611927 上传时间:2024-10-15 格式:PPT 页数:159 大小:1.30MB
返回 下载 相关 举报
第2章89C51单片机硬件结构和原理_第1页
第1页 / 共159页
第2章89C51单片机硬件结构和原理_第2页
第2页 / 共159页
第2章89C51单片机硬件结构和原理_第3页
第3页 / 共159页
点击查看更多>>
资源描述
单击以编辑,母版标题样式,单击以编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,10/15/2024,目 录,第一章 微机基础知识,第二章,89C51,单片机的结构和原理,第三章,89C51,指令系统,第四章 汇编语言程序设计知识,第五章 中断系统,第六章 定时器及应用,第七章,89C51,串行口及通信技术,第八章 单片机小系统片外扩展,第九章 应用系统配置及接口技术,第十章,并行通信和接口技术,第,十一章,计数器,/,定时器,8253,10/15/2024,1,第一章 微机基础知识,1.1,单片机的概念,单片机,全称为,“单片微型计算机”,,,简称为“单片机”,、,“单片微机”,或,“微控制器”,。单片机就是在一块半导体芯片上集成有,CPU,、,ROM,、,RAM,、,I/O,接口、定时器,/,计数器、中断系统等功能部件,构成的完整的数字电子计算机。,首先了解微处理器,微型计算机的概念。,10/15/2024,2,微处理器,(Microprocessor),是小型计算机或微型计算机的控制和,处理部分,又称中央处理单元,CPU,(,Central Processing Unit,)。,10/15/2024,3,微型计算机,(,Microcomputer,简称微机 ),是具有完整运算及控制功能的计算机。,包括,微处理器,(CPU),存储器,接口适配器(输入输出接口电路),输入,/,输出(,I/O,),设备。,10/15/2024,4,单片机,(,Single-Chip Microcomputer,),是将微处理器、一定容量,RAM,和,ROM,以及,I/O,口、定时器等电路集成在一块芯片上,构成单片微型计算机。,微处理器,RAM,ROM,I/O,口,定时器,单片微型计算机,10/15/2024,5,一、微处理器,CPU,1.2,单片机的结构,1,、运算器的组成,算术逻辑单元,(,简称,ALU,),运算器,累加器,寄存器,(一)运算器,10/15/2024,6,2、,运算器的作用,是把传送到微处理器的数据进行运算或逻辑运算。,举例,ALU,可对两个操作数进行加、减、与、或、比较大小等操作,最后将结果存入累加器。,ALU,执行不同的运算操作是由不同控制线上的信息所确定的。,10/15/2024,7,例如:,两个数(,7,和,9,)相加,在相加之前,操作数,9,放在累加器中,,7,放在数据寄存器中,执行两数相加运算的控制线发出,“,加,”,操作信号,,ALU,即把两个数相加并把结果(,16,)存入累加器,取代累加器前面存放的数,9,。,10/15/2024,8,3、,ALU,的两个主要的输入来源,输入来源,数据寄存器,累加器,10/15/2024,9,4,、,运算器的两个主要功能,(,1,)执行各种算术运算。,(,2,)执行各种逻辑运算,并进行逻辑测试。,如零值测试或两个值的比较。,10/15/2024,10,控制器的组成,程序计数器,指令寄存器,指令译码器,时序产生器,操作控制器,1,、控制器的组成,(二)、控制器,10/15/2024,11,2,、控制器的作用,它是发布命令的“决策机构”,即协调和指挥整个计算机系统的操作。,10/15/2024,12,3,、控制器的主要功能,对指令进行译码或测试,并产生相应的操作控制信号,以便启动规定的动作。,指挥并控制,CPU,、,内存和输入,/,输出设备之间数据流动的方向。,从内存中取出一条指令,并指出下一条指令在内存中的位置。,10/15/2024,13,(三)、,CPU,中的主要寄存器,1,、累加器(,A,),2,、数据寄存器(,DR,),3,、指令寄存器(,IR,),4,、指令译码器(,ID,),6,、地址寄存器(,AR,),5,、程序计数器(,PC,),10/15/2024,14,(一)存储器,地址总线、数据总线和若干控制线把存储器和微处理器连接起来。,存储器从,CPU,接收控制信号,以确定存储器执行读,/,写操作。,二 存储器和输入,/,输出接口,10/15/2024,15,地址总线将,8,位地址信息送入地址译码器,地址译码器的输出可以确定唯一的存储单元。,数据总线用来传送存储器到,CPU,或,CPU,到存储器的数据信息,。,10/15/2024,16,(二),I/O,接口及外设,每个外设与微处理器的连接必须经过接口适配器(,I/O,接口)。,每个,I/O,接口及其对应的外设都有一个固定的地址,在,CPU,的控制下实现对外设的输入(读)和输出(写)操作。,10/15/2024,17,现在的,单片机,片内甚至还集成有,HSI/O,、,A/D,、,电压比较器、语音处理芯片等功能部件。,凌阳,16,位单片机内部集成了,A/D,和,D/A,转换器以及语音处理芯片,,MSP430,单片机内部集成了电压比较器、,8,通道的,12,位,A/D,转换器和两路,D/A,转换器以及液晶显示模块,可以方便的按照实际要求进行扩展,得到了广泛的应用。,10/15/2024,18,1.3,单片机的特点,1,、体积小、重量轻、价格低、耗电少;,2,、可靠性高、抗干扰能力强;,3,、运行速度高、控制能力强;,4,、易于扩展。,1.4,常见的单片机及主流单片机,1,、常见的单片机有,8,位的、,16,位的和,32,位的;其生产厂家有,Intel,、,Motorola,、,PHILIPS,、,ATMEL,、,Texas,等。见下页表。,10/15/2024,19,10/15/2024,20,1.5,单片机的应用,1,、用于电脑型产品,如家电、玩具、游戏机、声像设备、电子秤、收银机、办公设备、厨房设备等;,2,、用于数字化和智能化仪器仪表,具有测量、处理和监控功能;,3,、用于“机电一体化”设备,如数控机械、医疗设备等;,4,、用于智能终端设备,如打印机、绘图仪、调制解调器等;,5,、用于工业过程控制;,6,、用于多机控制、集散测量、控制系统;单片机作为下位机,微机作为上位机。,10/15/2024,21,1.6,单片机课程的特点及学习方法,1,、本课程以电子技术课为基础;,2,、学习本课程应硬件、软件兼顾并重,既要注意单片机的结构、原理,也要注意其汇编语言指令和程序,做到二者融会贯通;,3,、学习的目的在于应用,要重视单片机应用的整个系统,在理解系统的各个芯片、各部分电路工作原理和作用的基础上,把握整个系统的功能;,4,、学习本课程,在理解教材内容的基础上,认真完成习题、实验和课程设计等;,5,、要多编程序,用,Wave, KEIL,等单片机仿真软件调试运行;,10/15/2024,22,2.189C51,单片机芯片内部结构,及特点,2.289C51,单片机引脚及其功能,2.389C51,存储器配置,2.4,时钟电路及,89C51 CPU,时序,2.5,复位操,作,2.689C51,单片机的低功耗工作方式,返回,第二章,89C51,单片机硬件结构和原理,2.7,输出,/,输入端口,10/15/2024,23,2.1 89C51,单片机芯片内部结构及特点,2.1.1 89C51,单片机的基本组成,2.1.2 89C51,单片机芯片内部结构,返回,10/15/2024,24,2.1.1 89C51,单片机的基本组成,一、组成,二、,MCS-51,系列单片机的性能,返回,10/15/2024,25,一、组成,89C51,单片机结构框图,如图,2-1,所示,返回,10/15/2024,26,89C51,单片机结构框图,89C51,CPU,振荡器和时序,OSC,64KB,总线,扩展控制器,数据存储器,256B RAM/SFR,216,位,定时器,/,计数器,可编程,I/O,程序存储器,4KBROM,可编程全双工,串行口,外中断,内中断,控制,并行口,串行通信,外部时钟源,外部事件计数,返回,10/15/2024,27,一、组成,一个,8,位 的微处理器,CPU,。,返回,10/15/2024,28,一、组成,用以存放可以读,/,写的数据,如运算的中间结果、最终结果以及欲显示的数据等。,低,128B,是真正的,RAM,区,高,128B,是,SFR,区。,片内数据存储器,(RAM128B/256B,),:,返回,10/15/2024,29,一、组成,用以存放程序、一些原始数据和表格。但有一些单片机内部不带,ROM/EPROM,,如,8031,、,8032,、,80C31,等。,片内程序存储器,Flash ROM,(,4KB/8KB,),:,返回,10/15/2024,30,一、组成,每个口可以用作输入,也可以用作输出。,四个,8,位并行,I/O,(,输入,/,输出)接口,P0P3:,返回,10/15/2024,31,一、组成,每个定时,/,计数器都可以设置成计数方式,用以 对 外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果 实现计算机控制。,两个或三个定时,/,计数器,:,返回,10/15/2024,32,一、组成,可实现单片机与单片机或其它微机之间串行通信。,一个全双工,UART,的串行,I/O,口,:,返回,10/15/2024,33,一、组成,但需外接晶振和电容。,片内振荡器和时钟产生电路,:,返回,10/15/2024,34,一、组成,五个中断源的中断控制系统。,返回,10/15/2024,35,二、,MCS-51,系列单片机的性能,如,表,2-1,所示。表中型号带“,C”,表示所用的是,CMOS,工艺,具有功耗低的优点。,返回,10/15/2024,36,MCS-51,系列单片机的性能表,返回,10/15/2024,37,2.1.2 89C51,单片机芯片内部结构,一、结构图,二、结构组成,返回,10/15/2024,38,一、结构图,由,中央处理单元(,CPU,)、,存储器(,ROM,及,RAM,),和,I/O,接口,组成。,89C51,单片机内部结构如,图,2-2,所示,。,返回,10/15/2024,39,P0,驱动器,P2,驱动器,P0,锁存器,P2,锁存器,RAM,地址寄存器,128BRAM,4KB,Flash ROM,B,寄存器,暂存器,1,暂存器,2,ACC,SP,程序地址寄存器,缓冲器,PC增1,PC,DPTR,中断、串行口和定时器,PSW,P1,锁存器,P1,驱动器,P3,锁存器,P3,驱动器,定时控制,指令寄存器,指令译码器,OSC,ALU,P0.0-P0.7,P2.0-P2.7,P3.0-P3.7,P1.0-P1.7,XTAL1 XTAL2,PSEN,ALE,EA,RET,89C51,单片机,内部结构图,返回,10/15/2024,40,二、结构组成,(一)、中央处理单元(,CPU,),(二)、存储器,(三)、,I/O,接口,返回,10/15/2024,41,(一)、中央处理单元(,CPU,),1,运算器,返回,2,控制器,10/15/2024,42,1,运算器,(,1,),8,位的,ALU,:,返回,(,2,),8,位累加器,ACC,(,A,):,(,3,),8,位程序状态寄存器,PSW,:,(,4,),8,位寄存器,B,:,(,5,),布尔处理器:,(,6,),2,个,8,位暂存器:,10/15/2024,43,1,运算器,可对,4,位、,8,位、,16,位数据进行操作。,返回,(,1,),8,位的,ALU,:,10/15/2024,44,1,运算器,(,2,),8,位累加器,ACC,(,A,):,它经常作为一个运算数经暂存器,2,进入,ALU,的输入端,与另一个来自暂存器,1,的运算数进行运算,运算结果又送回,ACC,。,返回,10/15/2024,45,1,运算器,指示指令执行后的状态信息供程序查询和判别用。,(,3,),8,位程序状态寄存器,PSW,:,返回,10/15/2024,46,1,运算器,(,4,),8,位寄存器,B,:,在乘除运算时,用来存放一个操作数也用来存放运算后的一部分结果;如不做乘除运算时,可作为通用寄存器。,返回,10/15/2024,47,1,运算器,(,5,)布尔处理器:,专门用于处理位操作的,以,PSW,中的,C,为其累加器。,返回,10/15/2024,48,1,运算器,(,6,),2,个,8,位暂存器:,ALU,的两个入口处。,返回,10/15/2024,49,2,控制器,(,1,)程序计数器,PC,(,16,位),(,2,)指令寄存器,IR,及指令译码器,ID,(,3,)振荡器和定时电路,返回,10/15/2024,50,(,1,)程序计数器,PC,(,16,位),由两个,8,位计数器,PCH,、,PCL,组成。,PC,是程序的字节地址计数器,,PC,内容指向将要执行的指令地址。,改变,PC,内容,改变执行的流向。,PC,可对,64KB,的,ROM,直接寻址,也可对,89C51,片内,RAM,寻址,。,返回,10/15/2024,51,(,2,)指令寄存器,IR,及指令译码器,ID,由,PC,中的内容指定,ROM,地址,取出来的指令经,IR,送至,ID,,由,ID,对指令译码产生一定序列的控制信号,以执行指令所规定的操作。,返回,10/15/2024,52,(,3,)振荡器和定时电路,89C51,单片机片内有振荡电路,只需外接石英晶体和频率微调电容(,2,个,30pF,左右),其频率范围为,1.2MHz,12MHz,。,该信号作为,89C51,工作的基本节拍即时间的最小单位。,返回,10/15/2024,53,(二)、存储器,1,、程序存储器(,ROM,),2,、数据存储器(,RAM,),返回,10/15/2024,54,1,、程序存储器(,ROM,),4KB,的,FLASH ROM.,地址从,0000H,开始。,用于存放程序和表格常数。,返回,10/15/2024,55,2,、数据存储器(,RAM,),地址为,00H,7FH,。,用于存放运算的中间结果、数据暂存以及数据缓冲等。,这,128B,的,RAM,中有,32,个字节单元可指定为工作寄存器。,片内还有,21,个特殊功能寄存器(,SFR,),,它们同,128,字节,RAM,统一编址,地址为,80H,FFH,。,后面详细介绍。,返回,10/15/2024,56,(三)、,I/O,接口,89C51,有四个,8,位并行,I/O,接口,P0,P3,。,它们都是双向端口,每个端口各有,8,条,I/O,线。,P0-P3,口四个锁存器同,RAM,统一编址,可作为,SFR,来寻址。,返回,10/15/2024,57,2.289C51,单片机引脚及其功能,2.2.189C51,单片机引脚,2.2.2 89C51,单片机引脚功能,返回,10/15/2024,58,2.2.1 89C51,单片机引脚,89C51,单片机引脚如,图,2-3,所示。,返回,10/15/2024,59,89C51,单片机引脚图,返回,10/15/2024,60,2.2.2 89C51,单片机引脚功能,一、电源引脚:,Vcc,和,Vss,二、时钟电路引脚:,XTAL1,和,XTAL2,三、控制信号引脚,RST,、,ALE,、,PSEN,和,EA,四、,I/O,端口,P0,、,P1,、,P2,和,P3,返回,10/15/2024,61,一、电源引脚:,Vcc,和,Vss,1,Vcc(40,脚,),:电源端,为,+5V,。,2,Vss(20,脚,),:接地端。,返回,图2-3,10/15/2024,62,二、时钟电路引脚:,XTAL1,和,XTAL2,XTAL2,(,18,脚):接外部晶体和微调电容的一端;在,89C51,片内它是振荡电路反向放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时,该引脚输入外部时钟脉冲。,89C51/8031,正常工作时,该引脚应有脉冲信号输出。,返回,10/15/2024,63,XTAL1,(,19,脚):接外部晶体和微调电容的另一端;在片内它是振荡电路反向放大器的输入端,在采用外部时钟时,该引脚接地。,二、时钟电路引脚:,XTAL1,和,XTAL2,返回,10/15/2024,64,三、控制信号引脚:,RST,、,ALE,、,PSEN,和,EA,RST/V,PD,(,9,脚):,RST,:,复位信号输入端,高电平有效。当此输入端保持两个机器周期的高电平时,就可以完成复位操作。,返回,10/15/2024,65,RST/V,PD,(,9,脚):,V,PD,:,RST,引脚的第二功能,备用电源输入端。当主电源,Vcc,发生故障,降低到低电平规定值时,将,+5V,电源自动接入该引脚,为,RAM,提供备用电源,以保证,RAM,中的信息不丢失,使得复位后能继续正常运行。,三、控制信号引脚:,RST,、,ALE,、,PSEN,和,EA,返回,10/15/2024,66,ALE/PROG,(,30,脚):,ALE,:,地址锁存允许信号端。正常工作时,该引脚以振荡频率的,1/6,固定输出正脉冲。,CPU,访问片外存储器时,该引脚输出信号作为锁存低,8,位地址的控制信号。它的负载能力为,8,个,LS,型,TTL,负载。,三、控制信号引脚:,RST,、,ALE,、,PSEN,和,EA,返回,10/15/2024,67,ALE/PROG,(,30,脚):,PROG,:,是对片内带有,4KB EPROM,的,8751,编程写入时的编程脉冲输入端。,三、控制信号引脚:,RST,、,ALE,、,PSEN,和,EA,返回,10/15/2024,68,PSEN,(,29,脚):,程序存储器允许信号输出端。,在访问片外,ROM,时,定时输出负脉冲作为读片外,ROM,的选通信号,接片外,ROM,的,OE,端。,它的负载能力为,8,个,LS,型,TTL,负载。,三、控制信号引脚:,RST,、,ALE,、,PSEN,和,EA,返回,10/15/2024,69,EA/,V,pp,(,31,脚):,EA,:,外部程序存储器地址允许输入端。,当该引脚接高电平时,,CPU,访问片内,EPROM/ROM,并执行片内程序存储器中的指令,但当,PC,值超过,0FFFH,(,片内,ROM,为,4KB,),时,将自动转向执行片外,ROM,中的程序。,当该引脚接低电平时,,CPU,只访问片外,EPROM/ROM,并执行外部程序存储器中的程序。,三、控制信号引脚:,RST,、,ALE,、,PSEN,和,EA,返回,10/15/2024,70,EA/,V,pp,(,31,脚):,V,pp,:对,8751,片内,EPROM,固化编程时,编程电压输入端(,12-21V,)。,三、控制信号引脚:,RST,、,ALE,、,PSEN,和,EA,返回,10/15/2024,71,四、,I/O,端口,P0,、,P1,、,P2,和,P3,1,、准双向,2,、,P0,口,3,、,P1,口,4,、,P2,口,5,、,P3,口,返回,10/15/2024,72,1,、准双向,当,I/O,口作为输入时,应先向此口锁存器写入全,1,, 此时该口引脚浮空,可作高阻抗输入。,返回,10/15/2024,73,2,、,P0,口:,漏极开路的,8,位准双向,I/O,口,每位能驱动,8,个,LS,型,TTL,负载。,P0,口可作为一个数据输入,/,输出口;,在,CPU,访问片外存储器时,,P0,口为分时复用的低,8,位地址总线和,8,位数据总线。,返回,10/15/2024,74,3,、,P1,口:,带内部上拉电阻的,8,位准双向,I/O,端口,每位能驱动,4,个,LS,型,TTL,负载。,返回,10/15/2024,75,4,、,P2,口:,P2,口:带内部上拉电阻的,8,位准双向,I/O,端口,每位能驱动,4,个,LS,型,TTL,负载。在,CPU,访问片外存储器时,它输出高,8,位地址,。,返回,10/15/2024,76,5,、,P3,口:,带内部上拉电阻的,8,位准双向,I/O,端口,每位能驱动,4,个,LS,型,TTL,负载。,P3,口除作为一般,I/O,口外,每个引脚都有第二功能。,返回,10/15/2024,77,2.389C51,存储器配置,2.3.189C51,存储器分类,2.3.2,程序存储器地址空间,2.3.3,数据存储器地址空间,返回,10/15/2024,78,2.3.1 89C51,存储器分类,一、物理结构(哈佛结构),二、用户角度,返回,10/15/2024,79,一、物理结构(哈佛结构,),89C51,存储器,程序存储器,ROM,数据存储器,ROM,片内程序存储器,片外程序存储器,片内数据存储器,片外数据存储器,返回,10/15/2024,80,二、用户角度,图,2-4 89C51,存储器配置,10/15/2024,81,二、用户角度,1,、片内、外统一编址的,64K,程序存储器地址空间。,CPU,访问片内、片外,ROM,指令用,MOVC,。,返回,10/15/2024,82,二、用户角度,2,、,64K,的片外数据存储器地址空间。访问片外,RAM,指令用,MOVX,。,返回,10/15/2024,83,二、用户角度,3,、,256,字节的片内数据存储器地址空间。访问片内,RAM,指令用,MOV,。,上述三个存储空间地址是重叠的,,89C51,的指令系统采用不同的数据传送指令符号。,返回,10/15/2024,84,2.3.2,程序存储器地址空间,一、用途:,二、编址:,三、寻址方式:,返回,10/15/2024,85,一、用途:,用于存放编好的程序和表格常数。,返回,10/15/2024,86,二、编址:,容量为,4KB,。,地址为,0000H,0FFFH,。,片外最多可扩至,64KB ROM/EPROM,,,地址为,1000H,FFFFH,。,片内外统一编址。,返回,10/15/2024,87,三、寻址方式:,1,、当,EA=“1”,时:,在,0000,0FFFH,范围内执行片内,ROM,中的程序,当指令地址超过,0FFFH,后就自动转向片外,ROM,中取指令。,10/15/2024,88,三、寻址方式:,2,、当,EA=”0”,时:,片内,ROM,不起作用,,CPU,只能从片外,ROM/EPROM,中取指令。可以从,0000H,开始寻址。,10/15/2024,89,三、寻址方式:,3,、,片内,ROM,和片外,ROM,取指的速度相同。,10/15/2024,90,三、寻址方式:,4,、程序存储器的保留存储单元。,如表,2-2,所示。,10/15/2024,91,三、寻址方式:,(,1,),0000H,0002H,三个单元:,用作上电复位后引导程序的存放单元。因为复位后,PC,的内容为,0000H,,,CPU,总是从,0000H,开始执行程序。将转移指令存放到这三个单元,程序就被引导到指定的程序存储器空间去执行。,10/15/2024,92,三、寻址方式:,(,2,),0003H,002AH,单元:,均分为五段,用作五个中断服务程序的入口。中断矢量地址表如表,2-3,所示。,返回,10/15/2024,93,如果需要外扩程序存储器,其电路如图,2-5,所示。(,P26,),10/15/2024,94,2.3.3,数据存储器地址空间,一、用途:,二、片外,RAM,:,三、片内,RAM,:,返回,10/15/2024,95,一、用途:,用于存放运算的中间结果、数据暂存和缓冲、标志位等。,10/15/2024,96,二、片外,RAM,:,地址:,0000HFFFFH,寻址:用,MOVX,指令,如果需要外扩数据存储器,其电路如图,2-6,所示。(,P28,),10/15/2024,97,三、片内,RAM,:,片内数据存储器最大可寻址,256,个单元,它们又分为两部分: 低,128,字节,(00H,7FH),是真正的,RAM,区;高,128,字节,(80H,FFH),为特殊功能寄存器,(SFR),区。,高,128,字节和低,128,字节,RAM,中的配置及含义如图,2,8,和图,2,9,所示。,10/15/2024,98,图,2,8,低,128,字节,RAM,区,图,2,9,高,128,字节,RAM,区,(SFR,区,特殊功能寄存器区,),10/15/2024,99,1),低,128,字节,RAM,89C51,的,32,个工作寄存器与,RAM,安排在同一个队列空间里,统一编址并使用同样的寻址方式,(,直接寻址和间接寻址,),。,00H,1FH,地址安排为,4,组工作寄存器区,每组有,8,个工作寄存器,(R0,R7),,,共占,32,个单元,见表,2-4,。,10/15/2024,100,通过对程序状态字,PSW,中,RS1,、,RS0,的设置,每组寄存器均可选作,CPU,的当前工作寄存器组。若程序中并不需要,4,组,那么其余可用作一般,RAM,单元。,CPU,复位后,选中第,0,组寄存器为当前的工作寄存器。,工作寄存器区后的,16,字节单元,(20H,2FH),,可用位寻址方式访问其各位。在,89,系列单片机的指令系统中,还包括许多位操作指令,这些位操作指令可直接对这,128,位寻址。这,128,位的位地址为,00H,7FH,,其位地址分布见图,2,8,。,10/15/2024,101,2),高,128,字节,RAM,特殊功能寄存器,(SFR),89C51,片内高,128,字节,RAM,中,有,21,个特殊功能寄存器,(SFR),,,它们离散地分布在,80H,FFH,的,RAM,空间中。访问特殊功能寄存器只允许使用直接寻址方式。,这些特殊功能寄存器见图,2,9,。各,SFR,的名称及含义如表,2,5,所列(,p30,)。,10/15/2024,102,(1),累加器,ACC(E0H),累加器,ACC,是,89C51,最常用、最忙碌的,8,位特殊功能寄存器,许多指令的操作数取自于,ACC,,,许多运算中间结果也存放于,ACC,。,在指令系统中用,A,作为累加器,ACC,的助记符。,10/15/2024,103,(2),寄存器,B(F0H),在乘、除指令中,用到了,8,位寄存器,B,。,乘法指令的两个操作数分别取自,A,和,B,,,乘积存于,B,和,A,两个,8,位寄存器中。除法指令中,,A,中存放被除数,,B,中放除数,商存放于,A,,,B,中存放余数。,在其他指令中,,B,可作为一般通用寄存器或一个,RAM,单元使用。,10/15/2024,104,(3),程序状态寄存器,PSW(D0H),PSW,是一个,8,位特殊功能寄存器,它的各位包含了程序执行后的状态信息,供程序查询或判别之用。各位的含义及其格式如表,2,6,所列。,PSW,除有确定的字节地址,(D0H),外,每一位均有位地址,见表,2,6(P31),。,10/15/2024,105,(4),栈指针,SP(81H),堆栈指针,SP,为,8,位特殊功能寄存器,,SP,的内容可指向,89C51,片内,00H,7FH RAM,的任何单元。系统复位后,,SP,初始化为,07H,,,即指向,07H,的,RAM,单元。,10/15/2024,106,在图,2,10,中,假若有,8,个,RAM,单元,每个单元都在其右面编有地址,栈顶由堆栈指针,SP,自动管理。每次进行压入或弹出操作以后,堆栈指针便自动调整以保持指示堆栈顶部的位置。这些操作可用图,2,10,说明。,图,2,10,堆栈的压入与弹出,10/15/2024,107,(5),数据指针,DPTR(83H,,,82H),DPTR,是一个,16,位的特殊功能寄存器,其高位字节寄存器用,DPH,表示,(,地址,83H),,,低位字节寄存器用,DPL,表示,(,地址,82H),。,DPTR,既可以作为一个,16,位寄存器来处理,也可以作为两个独立的,8,位寄存器,DPH,和,DPL,使用。,DPTR,主要用于存放,16,位地址,以便对,64 KB,片外,RAM,作间接寻址。,10/15/2024,108,(6),/,端口,P0,P3(80H,,,90H,,,A0H,,,B0H),P0,P3,为,4,个,8,位特殊功能寄存器,分别是,4,个并行,/,端口的锁存器。它们都有字节地址,每一个口锁存器还有位地址,每一条,/,线均可独立用作输入或输出。,用作输出时,可以锁存数据;用作输入时,数据可以缓冲。,图,2-11,所示为各个,SFR,所在的字节地址位置。空格部分为未来设计新型芯片可定义的,SFR,位置。,10/15/2024,109,图,2-11,特殊功能寄存器,SFR,的位置,10/15/2024,110,2.4CPU,时序,2.4.1,片内振荡器及时钟信号的产生,返回,2.4.2,机器周期和指令周期,2.4.3CPU,取指、执行周期时序,10/15/2024,111,2.4.1,片内时钟信号的产生,89C51,芯片内部有一个高增益反相放大器,用于构成振荡器。反相放大器的输入端为,XTAL1,,,输出端为,XTAL2,,,两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。电容器和通常取,30,pF,左右,可稳定频率并对振荡频率有微调作用。振荡脉冲频率范围为,fOSC,=0,24 MHz(8051,为,1.212MHz),。,晶体振荡器的频率为,fOSC,,,振荡信号从,XTAL2,端输入到片内的时钟发生器上,,如图,2-12,所示。,返回,10/15/2024,112,图,2-12 89C51,的片内振荡器及时钟发生器,10/15/2024,113,如果使用外部时钟,上拉电阻取,5.1k ,外部时钟频率小于,12MHz,10/15/2024,114,1.,节拍与状态周期,时钟发生器是一个,2,分频的触发器电路,它将振荡器的信号频率,fOSC,除以,2,,向,CPU,提供两相时钟信号,P1,和,P2,。,时钟信号的周期称为机器状态周期,S(STATE),,,是振荡周期的,2,倍。在每个时钟周期,(,即机器状态周期,S),的前半周期,相位,1(P1),信号有效,在每个时钟周期的后半周期,相位,2(P2,,,节拍,2),信号有效。,每个时钟周期,(,以后常称状态,S),有两个节拍,(,相,)P1,和,P2,,,CPU,就以两相时钟,P1,和,P2,为基本节拍指挥,89C51,单片机各个部件协调地工作。,10/15/2024,115,一个机器周期是指,CPU,访问存储器一次所需的时间。,例如,取指令、读存储器、写存储器等等。,一个机器周期包括,12,个振荡周期,分为,6,个,S,状态:,S1S6,。,每个状态又分为两拍,称为,P1,和,P2,。,因此,一个机器周期中的,12,个振荡周期表示为,S1P1,,,S1P2,,,S2P1,,,,,S6P1,,,S6P2,。,若采用,6MHz,晶体振荡器,则每个机器周期为2,s,(,微秒),机器周期,如图所示,返回,2.,机器周期和指令周期,10/15/2024,116,指令周期:执行一条指令所需的时间。,每条指令由一个或若干个字节组成。,有单字节指令,双字节指令,,多字节指令等。字节数少则占存储器空间少,。,每条指令的指令周期都由一个或几个,机器周期,组成。,有单周期指令、双周期指令、和四周期指令。机器周期数少则执行速度快。,指令周期,如图所示,返回,2.,机器周期和指令周期,10/15/2024,117,3.,基本时序定时单位,综上所述,,89C51,或其他,80C51,单片机的基本时序定时单位有如下,4,个。,振荡周期:,晶振的振荡周期,为最小的时序单位。,状态周期:,振荡频率经单片机内的二分频器分频后提供给片内,CPU,的时钟周期。因此,一个状态周期包含,2,个振荡周期。,机器周期(,MC,):,1,个机器周期由,6,个状态周期即,12,个振荡周期组成,是计算机执行一种基本操作的时间单位。,指令周期:,执行一条指令所需的时间。一个指令周期由,1,4,个机器周期组成,依据指令不同而不同,见附录,A,。,10/15/2024,118,2.4.2CPU,取指、执行周期时序,每条指令的执行都可以包括取指和执指两个阶段。,在取指阶段,,CPU,从内部或外部,ROM,中取出指令操作码及操作数,然后再执行这条指令。,单字节和双字节的指令都可能是单机器周期或双周期,而三字节指令都是双周期的,只有乘、除指令占四周期。因此,如果,F,OSC,=6M,Hz,执行一条指令的时间(指令周期)分别是,2s,,,4s,和,8s,。,如,图,2-14,所示,返回,10/15/2024,119,图,2,14 89C51,单片机的取指,/,执行时序,10/15/2024,120,2.5,复位操作,返回,2.5.1,复位操作的主要功能,主要功能是把,PC,初始化为,0000H,,,使单片机从,0000H,单元开始执行程序。,复位操作还对其他一些寄存器有影响,它们的复位状态如表,2,8,所列。,表,2,8,中的符号意义如下:,10/15/2024,121,表,2,8,各特殊功能寄存器的复位值,返回,10/15/2024,122,2.5.2,复位信号及其产生,一、复位信号:,RST,引脚为复位信号输入端。 当,RST,引脚为高电平,且有效时间持续,24,个振荡周期(,两个机器周期,)以上,,系统便实现复位,。,(,CPU,在,S5P2,状态对,RST,采样),F,OSC,=6MHz,,,则复位信号持续,4,微秒。,F,OSC,=12MHz,,,则复位信号持续,2,微秒。,二、产生复位信号的电路逻辑图:,如,图,2-15,所示。,返回,10/15/2024,123,返回,复位电路,施密特触发器,片内,RAM,RST/V,PD,V,CC,V,SS,D,1,D,2,图,2,15,复位电路逻辑图,10/15/2024,124,2.5.3,复位电路,一、上电自动复位:,是通过外部复位电路的电容充电实现。,如,图,2-16(a),所示。,二、按键手动复位:,按键电平复位方式:,如,图2-1,6(b),所示。,返回,复位电路是单片机应用系统的一部分,基本电路,。复位操作有,上电自动复位,和,按键手动复位,两种方式,10/15/2024,125,10/15/2024,126,2.6 89C51,单片机的低功耗工作方式,89C51,提供两种节电工作方式,即空闲(等待、待机)方式和掉电(停机)工作方式,图,2,17,所示为实现这两种方式的内部电路。,由图,2,17,可见,若,IDL=0,,则,89C51,将进入空闲运作方式。在这种方式下,振荡器仍继续运行,但,IDL,封锁了去,CPU,的“与”门,故,CPU,此时得不到时钟信号。而中断、串行口和定时器等环节却仍在时钟控制下正常运行。掉电方式下(,PD=0,),,振荡器冻结。,图,2,17,中,,PD,和,IDL,均为,PCON,中,PD,和,IDL,触发器的输出端。,10/15/2024,127,图,2,17,空闲和掉电方式控制电路,10/15/2024,128,2.6.1,方式的设定,空闲方式和掉电方式是通过对,SFR,中的,PCON,(,地址,87H),相应位置,1,而启动的。,图,2,18,所示为,89C51,电源控制寄存器,PCON,各位的分布情况。,HMOS,器件的,PCON,只包括一个,SMOD,位,其他,4,位是,CHMOS,器件独有的。,3,个保留位用户不得使用。,图,2,18,电源控制寄存器,PCON,10/15/2024,129,图,2,18,中各符号的名称和功能如下:,SMOD,:,波特率倍频位。若此位为,1,,则串行口方式,1,、方式,2,和方式,3,的波特率加倍。,GF1,和,GF0,:,通用标志位。,PD,:,掉电方式位。此位写,1,即启动掉电方式。由图,217,可见,此时时钟冻结。,IDL,:,空闲方式位。此位写,1,即启动空闲方式。这时,CPU,因无时钟控制而停止运作。如果同时向,PD,和,IDL,两位写,1,,则,PD,优先。,89C51,中,PCON,的复位值为,00000B,。,10/15/2024,130,2.6.2,空闲(等待、待机)工作方式,CPU,执行完置,IDL=1(PCON.1,),的指令后,系统进入空闲工作方式。,进入空闲方式后,有两种方法可以使系统退出空闲方式:,一是任何的中断请求被响应都可以由硬件将,PCON.0,(,IDL,)清,0,而中止空闲工作方式。,另一种退出空闲方式的方法是硬件复位,,10/15/2024,131,2.6.3,掉电(停机)工作方式,当,CPU,执行一条置,PCON.1,位(,PD,)为,1,的指令后,系统进入掉电工作方式。,退出掉电方式的唯一方法是由硬件复位,复位后将所有特殊功能寄存器的内容初始化,但不改变片内,RAM,区的数据。,在掉电工作方式下,,VCC,可以降到,2 V,,,但在进入掉电方式之前,,VCC,不能降低。而在准备退出掉电方式之前,,VCC,必须恢复正常的工作电压值,并维持一段时间(约,10 ms,),,使振荡器重新启动并稳定后方可退出掉电方式。,10/15/2024,132,2.7,输出,/,输入端口,2.7.1 I/O,端口概述,2.7.2 P0,口,2.7.3 P1,口,2.7.4 P2,口,2.7.5 P3,口,2.7.6,端口的负载能力和接口要求,返回,10/15/2024,133,2.7.2 P0,口,一、结构,二、,P0,口作为一般,I/O,口使用,三、,P0,口作为地址,/,数据总线使用,返回,10/15/2024,134,P0,口特点,:,(,1,)总线口,,分时输出低,8,位地址和传送数据,;,(MOVX,、,MOVC,、取指),(2),其,I/O,口为,准双向口,,总线口为,双向口,;,(,3,)对,读,修改,写,指令为读锁存器(,4,)负载能力强。,10/15/2024,135,一、结构,P0,口某位的结构由一个输出锁存器、二个三态输入缓冲器和输出驱动电路及控制电路组成。如,图,2-2,1,所示。,当,C=0,时,开关,MUX,被控为如图示位置,,P0,口为通用,I/O,口;,当,C=1,时,开关拨向反相器,3,的输出端,,P0,口分时作为地址,/,数据总线使用。,返回,10/15/2024,136,图,2-21,P0,口某位的结构图,当,C=0,时,开关,MUX,被控为如图示位置,,P0,口为通用,I/O,口;,当,C=1,时,开关拨向反相器,3,的输出端,,P0,口分时作为地址,/,数据总线使用。,返回,读引脚,读锁存器,内部总线,写入,D,CP,Q,Q,地址,/,数据,控制,C,MUX,VCC,T1,T2,P0.X,4,3,1,2,锁存器,10/15/2024,137,二、,P0,口作为一般,I/O,口使用,对片内存储器或,I/O,口读,/,写时,即执行,MOV,或,EA=1,执行,MOVC,指令时,硬件自动使控制端,C=0,P0,口做通用,I/O,口使用。应该外界,10K,欧的上拉电阻才能输出高电平。,1,、,P0,口用作输出口,写信号有效,把数据写入,P0,口锁存器,经过,T2,输出。,返回,10/15/2024,138,2,、,P0,口作输入口,读信号有效,端口引脚信号通过缓冲器,2,读入内部总线。,MOV A,P0,输入前应该首先写入全,1,,使,T1,、,T2,全部截止,引脚处于悬浮状态,可作高阻抗输入。,10/15/2024,139,三、,P0,口作为地址,/,数据总线使用,1,P0,口用作输出地址,/,数据总线,以,P0,口引脚输出低,8,位地址或数据信息,,MUX,开关把,CPU,内部地址,/,数据线经反向器,3,与驱动场效应管,FET,(,T2,),栅极接通。上下两个,FET,处于反相,构成推拉式的输出电路(,T1,导通时上拉,,T2,导通时下拉),提高了负载能力。,当,P0,口被地址,/,数据总线占用时,就无法再作,I/O,口使用了。,返回,10/15/2024,140,2,由,P0,口输入数据:,在“读引脚”信号有效时,打开输入缓冲器,2,,使数据进入内部总线。,三、,P0,口作为地址,/,数据总线使用,返回,10/15/2024,141,2.7.3 P1,口,P1,口特点:,(,1,)唯一的,静态,I/O,口;,(,2,),准双向口;,(,3,),输出时,执行“,读,修改,写,”类指令时,读的是锁存器而不是读引脚,如:,ANL P1,,,A,ORL P1,,,#data,XRL P1,,,A,CPL P1. ,INC P1,DEC P1,返回,10/15/2024,142,2.7.3P1,口,一、,P1,口结构,二、,P1,口用作通用,I/O,一、,P1,口结构:,其电路结构见,图,2-19,,输出驱动部分与,P0,口不同,内部有上拉负载电阻与电源相连。实质上,电阻是两个场效应管,FET,并在一起:一个,FET,为负载管,其电阻固定。另一个,FET,可工作在导通或截止两种状态,使其总电阻值变化近似为,0,或阻值很大两种情况。当阻值近似为,0,时,可将引脚快速上拉至高电平;当阻值很大时,,P1,口为高阻输入状态。,返回,10/15/2024,143,图,2-19,P1,口某位的结构图,返回,读引脚,读锁存器,内部总线,写入,D,CP,Q,Q,VCC,P1.X,1,2,锁存器,10/15/2024,144,2.7.3P1,口,二、,P1,口用作通用,I/O,P1,口也是一个准双向口。,在端口用作输入时,也必须先向对应的锁存器写入,1,,使,FET,截止。,当,P1,口输出高电平时,能向外提供拉电流负载,所以不必再接上拉电阻。,返回,10/15/2024,145,2.7.4 P2,口,一、,P2,口结构,二、,P2,口用作一般,I/O,口,三、,P2,口用作高,8,位地址总线,返回,10/15/2024,146,P2,口特点,(,1,),总线口,,输出高,8,位地址;,(,2,)端口输出的,数据不稳定,(,3,),准双向口,;,(,4,)对,读,修改,写,指令为读锁存器。,10/15/2024,147,一、,P2,口结构,如,图,2-20,所示,,P2,口某位的结构与,P0,口类似,有,MUX,开关。驱动部分与,P1,口类似,但比,P1,口多了一个转换控制部分。,返回,10/15/2024,148,图,2-20,P2,口某位的结构图,返回,读引脚,读锁存器,内部总线,写入,D,CP,Q,Q,地址,/,数据,控制,C,MUX,VCC,P2.X,锁存器,10/15/2024,149,二、,P2,口用作一般,I/O,口,1,、当,CPU,对片内存储器和,I/O,口进行读,/,写(执行,MOV,指令或,EA=1,时,执行,MOVC,指令)时,由内部硬件自动使开关,MUX,倒向锁存器的,Q,端,这时,,P2,口为一般,I/O,口。,返回,10/15/2024,150,二、,P2,口用作一般,I/O,口,2,、在只需扩展,256B,片外,RAM,的系统中,使用“,MOVX A,R,i,”,类指令访问片外,RAM,时,寻址范围是,256B,,,只需低,8,位地址线就可以实现。,P2,口不受该指令影响,仍可作通用,I/O,口。,返回,10/15/2024,151,二、,P2,口用作一般,I/O,口,3,、若扩展的,RAM,容量超过,256B,,,使用“,MOVX,A,DPTR”,类指令的寻址范围是,64KB,,,此时,高,8,位地址总线用,P2,口输出。在片外,RAM,读,/,写周期内,,P2,口锁存器仍保持原来端口的数据;在访问片外,RAM,周期结束后,多路开关,MUX,自动切换倒锁存器,Q,端。由于,CPU,对,RAM,的访问不是经常的,在这种情况下,,P2,口在一定的限度内仍可用作通用,I/O,口。,返回,10/15/2024,152,三、,P2,口用作高,8,位地址总线,当,CPU,对片外存储器或,I/O,口进行读,/,写(执行,MOVX,指令或,EA=0,时执行,MOVC,指令)时,开关倒向地址线(右)端,这时,,P2,口只输出高,8,位地址。因为访问片外,EPROM,和,RAM,的操作往往接连不断,所以,,P2,口要不断送出高,8,位地址,此时,P2,口无法再用作通用,I/O,口。,返回,10/15/2024,153,2.7.5 P3,口,P3,口特点:,(,1,),为,多功能口,;,(,2,),准双向口,;,(,3,),读,修改,写,指令为读锁存器。,一、结构,二,、,P3,口作为通用,I/O,口使用,三、,P3,口用作第二功能使用,返回,10/15/2024,154,图,2-22,P3,口某位的结构图,读引脚,读锁存器,内部总线,写入,D,CP,Q,第二输出功能,VCC,P3.X,3,1,2,锁存器,4,第二输入功能,W,返回,10/15/2024,155,1,、当把,P3,口作为通用,I/O,口进行,SFR,寻址时“第二输出功能端”,W,保持高电平,打开“与非”门,3,,,D,锁存器输出端,Q,的状态可通过“与非”门,3,送至,FET,场效应管输出。,2,、当,P3,口作为输入使用(即,CPU,读引脚状态)时,同,P0P2,口一样应由软件向口锁存器写,1,。,二,、,P3,口作为通用,I/O,口使用,返回,10/15/2024,156,三、,P3,口用作第二功能使用,当端口用于第二功能时,,8,个引脚可按位独立定义。,见表,2-10,返回,10/15/2024,157,表,2-10 P3,口线与第二功能表,返回,10/15/2024,158,2.7.6,端口的负载能力和接口要求,1,、,P0,口的负载能力和接口要求,负载能力,:,可驱动,8,个,LS,(低功耗、甚高速)型,TTL,负载,接口要求,:,作为一般,I/O,口输出时,若驱动的是,NMOS,电路或,OC,门电路,其引脚要接上拉电阻,否则高电平电位不确定;作为一般,I/O,口为准双向口,即作为输入时,必须先往端口写,1,。,2,、,P1P3,口的负载能力和接口要求,负载能力,:,可驱动,4,个,LS,型,TTL,负载,接口要求,:,作为一般,I/O,口输出
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 机械制造 > 工业自动化


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!