第2章89C51单片机硬件结构和原理_第1页
第2章89C51单片机硬件结构和原理_第2页
第2章89C51单片机硬件结构和原理_第3页
第2章89C51单片机硬件结构和原理_第4页
第2章89C51单片机硬件结构和原理_第5页
已阅读5页,还剩157页未读 继续免费阅读

下载本文档

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

文档简介

1、2021-7-942.189C51单片机芯片内部结构及特点单片机芯片内部结构及特点42.289C51单片机引脚及其功能单片机引脚及其功能42.389C51单片机存储器配置单片机存储器配置42.4时钟电路及时钟电路及89C51CPU时序时序42.5复位操作复位操作42.6 89C51单片机的低功耗工作方式单片机的低功耗工作方式第第2章章 89C51单片机的结构和原理单片机的结构和原理42.7输出输出/输入端口结构输入端口结构2021-7-92.12.1 89C51单片机芯片内部结构及特点单片机芯片内部结构及特点:2.1.1 89C512.1.1 89C51单片机的基本组成单片机的基本组成:2.1

2、.2 89C512.1.2 89C51单片机芯片内部结构单片机芯片内部结构2021-7-92.1.1 89C512.1.1 89C51单片机的基本组成单片机的基本组成一、组成一、组成二、二、89C51系列单片机的性能系列单片机的性能2021-7-9一、组成一、组成 89C51单片机结构框图单片机结构框图 如如 图图2-1所示所示2021-7-989C51CPU振荡器和时序振荡器和时序OSC64KB 总线总线扩展控制器扩展控制器数据存储器数据存储器256B RAM/SFR216位位定时器定时器/计数器计数器可编程可编程I/O程序存储器程序存储器4KB FLASH ROM可编程全双工可编程全双工串

3、行口串行口外中断外中断内中断内中断控制控制并行口并行口串行通信串行通信外部时钟源外部时钟源外部事件计数外部事件计数2021-7-9一、组成一、组成+1、一个、一个8位位 的微处理器的微处理器CPU。用以存放可以读用以存放可以读/写的数据,如运算的中间结果、最终结果以及欲显示的数据等。写的数据,如运算的中间结果、最终结果以及欲显示的数据等。+2、片内数据存储器、片内数据存储器(RAM128B/256B): 用以存放程序、一些原始数据和表格。用以存放程序、一些原始数据和表格。+3、片内、片内4kB程序存储器程序存储器Flash ROM(4KB):+4、四个、四个8位并行位并行I/O(输入(输入/输

4、出)接口输出)接口 P0P3:每个口可以用作输入,也可以用作输出。每个口可以用作输入,也可以用作输出。2021-7-9一、组成一、组成 每个定时每个定时/计数器都可以设置成计数方式,用以计数器都可以设置成计数方式,用以 对对 外部事件进行计数,外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果也可以设置成定时方式,并可以根据计数或定时的结果 实现计算机控制。实现计算机控制。+5、两个或三个定时、两个或三个定时/计数器计数器: 可实现单片机与单片机或其它微机之间串行通信。可实现单片机与单片机或其它微机之间串行通信。+6、一个全双工、一个全双工UART的串行的串行I/O口口: 但需

5、外接晶振和电容。但需外接晶振和电容。+7、片内振荡器和时钟产生电路、片内振荡器和时钟产生电路:+8、五个中断源的中断控制系统。、五个中断源的中断控制系统。+9、具有节电工作方式:、具有节电工作方式: 休闲方式及掉电方式。休闲方式及掉电方式。2021-7-9二、二、89C51系列单片机的性能系列单片机的性能 89C51单片机与单片机与8051相比,具有节电工作方式,即休闲方式及掉电方式。相比,具有节电工作方式,即休闲方式及掉电方式。以上各个部分通过片内以上各个部分通过片内8位数据总线(位数据总线(DBUS)相连接。)相连接。另外另外89C51是用静态逻辑来设计的,其工作频率可下降到是用静态逻辑来

6、设计的,其工作频率可下降到0 Hz,并提供两种可用,并提供两种可用软件来选择的省电方式软件来选择的省电方式空闲方式(空闲方式(Idle Mode)和掉电方式(和掉电方式(Power Down Mode)。在空闲方式中,)。在空闲方式中,CPU停止工作,而停止工作,而RAM、定时器、定时器/计数器、串行口和中计数器、串行口和中断系统都继续工作。此时的电流可降到大约为正常工作方式的断系统都继续工作。此时的电流可降到大约为正常工作方式的15%。在掉电方式。在掉电方式中,片内振荡器停止工作,由于时钟被中,片内振荡器停止工作,由于时钟被“冻结冻结”,使一切功能都暂停,故只保存,使一切功能都暂停,故只保存

7、片内片内RAM中的内容,直到下一次硬件复位为止。这种方式下的电流可降到中的内容,直到下一次硬件复位为止。这种方式下的电流可降到15 A以下,最小可降到以下,最小可降到06 A。89C51单片机还有一种低电压的型号,即单片机还有一种低电压的型号,即89LV51,除了电压范围有区别之外,其,除了电压范围有区别之外,其余特性与余特性与89C51完全一致。完全一致。89C51/LV51是一种低功耗是一种低功耗/低电压、高性能的低电压、高性能的8位单片机。它采用了位单片机。它采用了CMOS工艺和工艺和高密度非易失性存储器(高密度非易失性存储器(NURAM)技术,而且其输出引脚和指令系统都与)技术,而且其

8、输出引脚和指令系统都与MCS51兼容;片内的兼容;片内的Flash ROM允许在系统内改编程序或用常规的非易失性存储允许在系统内改编程序或用常规的非易失性存储器编程器来编程。因此器编程器来编程。因此89C51/LV51是一种功能强、灵活性高,且价格合理的单片是一种功能强、灵活性高,且价格合理的单片机,可方便地应用在各种控制领域。机,可方便地应用在各种控制领域。2021-7-92.1.2 89C51单片机芯片内部结构单片机芯片内部结构一、结构图一、结构图二、结构组成二、结构组成2021-7-9一、结构图一、结构图 由由 中央处理单元(中央处理单元(CPU)、)、存储器存储器(ROM及及RAM)和

9、和I/O接口接口组成。组成。 89C51单片机内部结构如单片机内部结构如 图图2-2所示所示。2021-7-9P0驱动器驱动器P2驱动器驱动器P0锁存器锁存器P2锁存器锁存器RAM地址地址寄存器寄存器128BRAM4KBROMB寄存器寄存器暂存器暂存器1暂存器暂存器2ACCSP程序地址程序地址寄存器寄存器 缓冲器缓冲器PC增增1PCDPTR中断、串行口和定时器中断、串行口和定时器PSWP1锁存器锁存器P1驱动器驱动器P3锁存器锁存器P3驱动器驱动器定定时时控控制制指指令令寄寄存存器器指指令令译译码码器器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL

10、1 XTAL2PSENALEEARESET运算器运算器控制器控制器存储器存储器I/O接口接口2021-7-9P0驱动器驱动器P2驱动器驱动器P0锁存器锁存器P2锁存器锁存器RAM地址地址寄存器寄存器128BRAM4KBROMB寄存器寄存器暂存器暂存器1暂存器暂存器2ACCSP程序地址程序地址寄存器寄存器 缓冲器缓冲器PC增增1PCDPTR中断、串行口和定时器中断、串行口和定时器PSWP1锁存器锁存器P1驱动器驱动器P3锁存器锁存器P3驱动器驱动器定定时时控控制制指指令令寄寄存存器器指指令令译译码码器器OSCALUP0.0-P0.7P2.0-P2.7P3.0-P3.7P1.0-P1.7XTAL1

11、 XTAL2PSENALEEARESET运算器运算器控制器控制器存储器存储器I/O接口接口2021-7-9二、结构组成二、结构组成(一)、中央处理单元(一)、中央处理单元(CPU)(二)、存储器(二)、存储器(三)、(三)、I/O接口接口2021-7-91、中央处理单元(、中央处理单元(89C51CPU) 1)运算器)运算器2)控制器)控制器2021-7-91)运算器)运算器 (1)8位的位的ALU:(2)8位累加器位累加器ACC(A):):(3)8位程序状态寄存器位程序状态寄存器PSW:(4)8位寄存器位寄存器B:(5)布尔处理器:)布尔处理器:(6)2个个8位暂存器:位暂存器:2021-7

12、-91)运算器)运算器可对可对4 4位、位、8 8位、位、1616位数据进行操作。位数据进行操作。(1)8位的位的ALU:2021-7-91)运算器)运算器(2)8位累加器位累加器ACC(A):): 它经常作为一个运算数经暂存器它经常作为一个运算数经暂存器2 2进入进入ALUALU的输入端,与另一个来自暂存器的输入端,与另一个来自暂存器1 1的运算数进行运算,运算结果又送回的运算数进行运算,运算结果又送回ACCACC。2021-7-91)运算器)运算器指示指令执行后的状态信息供程序查询指示指令执行后的状态信息供程序查询和判别用。和判别用。(3)8位程序状态寄存器位程序状态寄存器PSW:2021

13、-7-91)运算器)运算器(4)8位寄存器位寄存器B: 在乘除运算时,用来存放一个操作数也在乘除运算时,用来存放一个操作数也用来存放运算后的一部分结果;如不用来存放运算后的一部分结果;如不能做乘除运算时,作为通用寄存器。能做乘除运算时,作为通用寄存器。2021-7-91)运算器)运算器(5)布尔处理器:)布尔处理器:专门用于处理位操作的,以专门用于处理位操作的,以PSWPSW中的中的C C为为其累加器。其累加器。2021-7-91)运算器)运算器(6)2个个8位暂存器位暂存器:ALUALU的两个入口处。的两个入口处。2021-7-92)控制器)控制器(1)程序计数器)程序计数器PC(16位)位

14、)(2)指令寄存器)指令寄存器IR及指令译码器及指令译码器ID(3)振荡器和定时电路)振荡器和定时电路2021-7-9(1)程序计数器)程序计数器PC(16位)位) 由两个由两个8 8位计数器位计数器PCHPCH、PCLPCL组成。组成。 PCPC是程序的字节地址计数器,是程序的字节地址计数器,PCPC内内容为将要执行的指令地址。容为将要执行的指令地址。 改变改变PCPC内容,改变执行的流向内容,改变执行的流向。 PCPC可对可对64KB64KB的的ROMROM直接寻址,也可对直接寻址,也可对89C5189C51片内片内RAMRAM寻址。寻址。2021-7-9(2)指令寄存器)指令寄存器IR及

15、指令译码器及指令译码器ID 由由PCPC中的内容指定中的内容指定ROMROM地址地址 取出来的指令经取出来的指令经IRIR送至送至IDID 由由IDID对指令译码产生一定序列的控对指令译码产生一定序列的控制信号,以执行指令所规定的操作。制信号,以执行指令所规定的操作。2021-7-9(3)振荡器和定时电路)振荡器和定时电路 89C5189C51单片机片内有振荡电路,只需外接石单片机片内有振荡电路,只需外接石英晶体和频率微调电容(英晶体和频率微调电容(2 2个个30pF30pF左右),左右),其频率范围为其频率范围为1.2MHz1.2MHz12MHz12MHz。该信号作为。该信号作为89C518

16、9C51工作的基本节拍即时间的最小单位。工作的基本节拍即时间的最小单位。2021-7-92、存储器、存储器1)程序存储器()程序存储器(ROM)2)数据存储器()数据存储器(RAM)2021-7-91)程序存储器()程序存储器(ROM)289C5189C51片内为片内为4KB Flash ROM4KB Flash ROM。2地址从地址从0000H0000H开始。开始。2用于存放程序和表格常数。用于存放程序和表格常数。2021-7-92)数据存储器()数据存储器(RAM)289C51RAM89C51RAM均为均为128B128B,地址为,地址为00H00H7FH7FH。2用于存放运算的中间结果、

17、数据暂存以及数据缓用于存放运算的中间结果、数据暂存以及数据缓冲等。冲等。2这这128B128B的的RAMRAM中有中有3232个字节单元可指定为工作寄个字节单元可指定为工作寄存器。存器。2片内还有片内还有2121个特殊功能寄存器(个特殊功能寄存器(SFRSFR),它们同),它们同128128字节字节RAMRAM统一编址,地址为统一编址,地址为80H80HFFHFFH。后面详。后面详细介绍。细介绍。2021-7-93、I/O接口接口289C5189C51有四个有四个8 8位并行位并行I/OI/O接口接口P0P0P3P3。2它们都是双向端口,每个端口各有它们都是双向端口,每个端口各有8 8条条I/

18、OI/O线。线。2P0-P3P0-P3口四个锁存器同口四个锁存器同RAMRAM统一编址,统一编址,可作为可作为SFRSFR来寻址。来寻址。2021-7-92.2 89C51单片机引脚及其功能单片机引脚及其功能2.2.1 89C51单片机引脚单片机引脚2.2.2 89C51单片机引脚功能单片机引脚功能2021-7-92.2.1 89C51单片机引脚单片机引脚 图图2-3是是 89C51/LV51的引脚结构图,有双列直插封装的引脚结构图,有双列直插封装(DIP)方式和方形封装方式。方式和方形封装方式。2021-7-9图图2-3 89C51/LV51的引脚结构的引脚结构 2021-7-92.2.2

19、89C51单片机引脚功能单片机引脚功能 一、电源引脚:一、电源引脚:Vcc和和Vss 二、时钟电路引脚:二、时钟电路引脚:XTAL1和和XTAL2 三、控制信号引脚三、控制信号引脚RST、ALE、PSEN和和EA 四、四、I/O端口端口P0、P1、P2和和P32021-7-9一、电源引脚:一、电源引脚:Vcc和和Vss1 1Vcc(40Vcc(40脚脚) ):电源端,为电源端,为+5V+5V。2 2Vss(20Vss(20脚脚) ):接地端。接地端。2021-7-9二、时钟电路引脚:二、时钟电路引脚:XTAL1和和XTAL2 XTAL2XTAL2(1818脚):脚):接外部晶体和微调电容接外部

20、晶体和微调电容的一端;在的一端;在89C51 89C51 片内它是振荡电路反向片内它是振荡电路反向放大器的输出端,振荡电路的频率就是晶放大器的输出端,振荡电路的频率就是晶体固有频率。若需采用外部时钟电路时,体固有频率。若需采用外部时钟电路时,该引脚输入外部时钟脉冲。该引脚输入外部时钟脉冲。89C5189C51正常工作正常工作时,该引脚应有脉冲信号输出。时,该引脚应有脉冲信号输出。2021-7-9 XTAL1XTAL1(1919脚):脚):接外部晶体和微调接外部晶体和微调电容的另一端;在片内它是振荡电电容的另一端;在片内它是振荡电路反向放大器的输入端,在采用外路反向放大器的输入端,在采用外部时钟

21、时,该引脚接地。部时钟时,该引脚接地。二、时钟电路引脚:二、时钟电路引脚:XTAL1和和XTAL22021-7-9 三、控制信号引脚:三、控制信号引脚:RST、ALE、PSEN和和EA RST/VRST/VPDPD(9 9脚):脚):RSTRST:复位信号输入端,高电平有效。复位信号输入端,高电平有效。当此输入端保持两个机器周期的高电当此输入端保持两个机器周期的高电平时,就可以完成复位操作。平时,就可以完成复位操作。2021-7-9 RST/VRST/VPDPD(9 9脚):脚):V VPDPD :RSTRST引脚的第二功能,备用电源引脚的第二功能,备用电源输入端。当主电源输入端。当主电源Vc

22、c Vcc 发生故障,降发生故障,降低到低电平规定值时,将低到低电平规定值时,将+5V+5V电源自动电源自动接入该引脚,为接入该引脚,为RAMRAM提供备用电源,以提供备用电源,以保证保证RAMRAM中的信息不丢失,使得复位后中的信息不丢失,使得复位后能继续正常运行。能继续正常运行。 三、控制信号引脚:三、控制信号引脚:RST、ALE、PSEN和和EA2021-7-9 ALE/PROGALE/PROG(3030脚):脚):ALEALE:地址锁存允许信号端。正常工作时,地址锁存允许信号端。正常工作时,该引脚以振荡频率的该引脚以振荡频率的1/61/6固定输出正脉冲。固定输出正脉冲。CPUCPU访问

23、片外存储器时,该引脚输出信号作访问片外存储器时,该引脚输出信号作为锁存低为锁存低8 8位地址的控制信号。它的负载能位地址的控制信号。它的负载能力为力为8 8个个LSLS型型TTLTTL负载。负载。三、控制信号引脚:三、控制信号引脚:RST、ALE、PSEN和和EA2021-7-9 ALE/PROGALE/PROG(3030脚):脚):PROGPROG:是对片内带有是对片内带有4KB Flash ROM4KB Flash ROM的的89C5189C51编程写入时的编程脉冲输入端。编程写入时的编程脉冲输入端。三、控制信号引脚:三、控制信号引脚:RST、ALE、PSEN和和EA2021-7-9 PS

24、EN(29脚):脚):程序存储器允许信号输出端。程序存储器允许信号输出端。在访问片外在访问片外ROMROM时,定时输出负脉冲时,定时输出负脉冲作为读片外作为读片外ROMROM的选通信号,接片外的选通信号,接片外ROMROM 的的OEOE端。端。它的负载能力为它的负载能力为8 8个个LSLS型型TTLTTL负载。负载。三、控制信号引脚:三、控制信号引脚:RST、ALE、PSEN和和EA2021-7-9 EA/VEA/Vpppp(3131脚):脚):EAEA: 外部程序存储器地址允许输入端。外部程序存储器地址允许输入端。当该引脚接高电平时,当该引脚接高电平时,CPUCPU访问片内访问片内ROMRO

25、M并并执行片内程序存储器中的指令,但当执行片内程序存储器中的指令,但当PCPC值超值超过过0FFFH0FFFH(片内(片内ROMROM为为4KB4KB)时,将自动转向)时,将自动转向执行片外执行片外ROMROM中的程序。中的程序。当该引脚接低电平时,当该引脚接低电平时,CPUCPU只访问片外只访问片外ROMROM并执行外部程序存储器中的程序。并执行外部程序存储器中的程序。三、控制信号引脚:三、控制信号引脚:RST、ALE、PSEN和和EA2021-7-9 EA/Vpppp(31脚):脚):V Vpppp:对对89C5189C51片内片内 Flash ROMFlash ROM固化编固化编程时,编

26、程电压输入端(程时,编程电压输入端(12-21V12-21V)。)。三、控制信号引脚:三、控制信号引脚:RST、ALE、PSEN和和EA2021-7-9四、四、I/OI/O端口端口P0P0、P1P1、P2P2和和P3P3 1 1、准双向、准双向 2 2、P0P0口口 3 3、P1P1口口 4 4、P2P2口口 5 5、P3P3口口2021-7-91、准双向、准双向当当I/OI/O口作为输入时,应先向此口锁口作为输入时,应先向此口锁存器写入全存器写入全1 1, 此时该口引脚浮空,此时该口引脚浮空,可作高阻抗输入。可作高阻抗输入。2021-7-92、P0口:口:漏极开路的漏极开路的8 8位准双向位

27、准双向I/OI/O口,每位能驱口,每位能驱动动8 8个个LSLS型型TTLTTL负载。负载。P0P0口可作为一个数据输入口可作为一个数据输入/ /输出口;输出口;在在CPUCPU访问片外存储器时,访问片外存储器时,P0P0口为分时口为分时复用的低复用的低8 8位地址总线和位地址总线和8 8位数据总线。位数据总线。2021-7-93、P1口:口:带内部上拉电阻的带内部上拉电阻的8位准双向位准双向I/O端端口,每位能驱动口,每位能驱动4个个LS型型TTL负载。负载。2021-7-94、P2口:口:P2口:口:带内部上拉电阻的带内部上拉电阻的8位准双位准双向向I/O端口,每位能驱动端口,每位能驱动4

28、个个LS型型TTL负载。在负载。在CPU访问片外存储器访问片外存储器时,它输出高时,它输出高8位地址位地址。2021-7-95、P3口:口:带内部上拉电阻的带内部上拉电阻的8 8位准双向位准双向I/OI/O端端口,每位能驱动口,每位能驱动4 4个个LSLS型型TTLTTL负载。负载。P3P3口除作为一般口除作为一般I/OI/O口外,每个引脚口外,每个引脚都有第二功能。都有第二功能。2021-7-9表表2-1 P3端口引脚与复用功能表端口引脚与复用功能表2021-7-92.3.12.3.1 89C5189C51存储器分类存储器分类2.3.22.3.2 程序存储器地址空间程序存储器地址空间2.3.

29、32.3.3 数据存储器地址空间数据存储器地址空间2021-7-92.3.12.3.1 89C51 89C51存储器分类存储器分类一、物理结构(哈佛结构)一、物理结构(哈佛结构)二、用户角度二、用户角度2021-7-9片内程序存储器片内程序存储器片外程序存储器片外程序存储器片内数据存储器片内数据存储器片外数据存储器片外数据存储器一、物理结构(哈佛结构)一、物理结构(哈佛结构)89C51存储器存储器程序存储器程序存储器ROM数据存储器数据存储器RAM2021-7-9二、用户角度二、用户角度如图如图2-4所示所示2021-7-9二、用户角度二、用户角度1、片内、外统一编址的、片内、外统一编址的64

30、K程序存储器地程序存储器地址空间。址空间。CPU访问片内、片外访问片内、片外ROM指令指令用用MOVC。2021-7-9二、用户角度二、用户角度2、64K的片外数据存储器地址空间。访问的片外数据存储器地址空间。访问片外片外RAM指令用指令用MOVX。2021-7-9二、用户角度二、用户角度3、256字节的片内数据存储器地址空间。字节的片内数据存储器地址空间。访问片内访问片内RAM指令用指令用MOV。 上述三个存储空间地址是重叠的,上述三个存储空间地址是重叠的,89C51的的指令系统采用不同的数据传送指令符号。指令系统采用不同的数据传送指令符号。2021-7-92.3.2 2.3.2 程序存储器

31、地址空间程序存储器地址空间 一、用途:一、用途: 二、编址:二、编址: 三、寻址方式:三、寻址方式:2021-7-9一、用途:一、用途: 用于存放编好的程序和表格常数。用于存放编好的程序和表格常数。2021-7-9二、编址:二、编址: 89C51片内片内Flash ROM的容量为的容量为4KB。地。地址为址为0000H0FFFH。 片外最多可扩至片外最多可扩至64KB ROM/EPROM,地,地址为址为1000HFFFFH。 片内外统一编址。片内外统一编址。2021-7-9三、寻址方式:三、寻址方式:1、当、当 EA=“1”时:时:89C5189C51的的PCPC在在000000000FFFH

32、0FFFH范围内执行范围内执行片内片内ROMROM中的程序,当指令地址超过中的程序,当指令地址超过0FFFH 0FFFH 后就自动转向片外后就自动转向片外ROMROM中取指令。中取指令。2021-7-9三、寻址方式:三、寻址方式:2、当、当 EA=”0”时:时:89C5189C51片内片内ROMROM不起作用,不起作用,CPUCPU只能从片只能从片ROM/EPROMROM/EPROM中取指令。可以从中取指令。可以从 0000H0000H 开开始寻址。由于始寻址。由于80318031片内不带片内不带ROMROM ,所以,所以使用时必须使用时必须 EAEA=”0”=”0”。2021-7-9三、寻址

33、方式:三、寻址方式:3、89C51从片内从片内ROM和片外和片外ROM取取指的速度相同。指的速度相同。2021-7-9三、寻址方式:三、寻址方式:4、程序存储器的保留存储单元。、程序存储器的保留存储单元。如表如表2-22-2所示。所示。 2021-7-9表表2-2 保留的存储单元保留的存储单元存储单元存储单元保留目的保留目的0000H0002H复位后初始化引导程序复位后初始化引导程序0003H000AH外部中断外部中断 0000BH0012H定时器定时器 0 溢出中断溢出中断0013H001AH外部中断外部中断 1001BH0022H定时器定时器 1 溢出中断溢出中断0023H002AH串行口

34、中断串行口中断002BH定时器定时器 2 中断中断(8052 才有)才有)2021-7-9三、寻址方式:三、寻址方式:1 1、0000H0000H0002H0002H三个单元:三个单元:用作用作89C5189C51上电复位后引导程序的存放单元。上电复位后引导程序的存放单元。因为复位后因为复位后PCPC的内容为的内容为0000H0000H,CPUCPU总是从总是从0000H0000H开始执行程序。将转移指令存放到这开始执行程序。将转移指令存放到这三个单元,程序就被引导到指定的程序存三个单元,程序就被引导到指定的程序存储器空间去执行。储器空间去执行。2021-7-9三、寻址方式:三、寻址方式:(2

35、 2)0003H0003H002AH002AH单元:单元:均分为五段,用作五个中断服务程序的入均分为五段,用作五个中断服务程序的入口。中断矢量地址表如表口。中断矢量地址表如表2-32-3所示。所示。2021-7-9表表2-3 中断矢量表中断矢量表中中断断源源中中断断服服务务程程序序入入口口地地址址外外部部中中断断 00003H定定时时器器/计计数数器器 0 溢溢出出000BH外外部部中中断断 10013H定定时时器器计计数数器器溢溢出出001BH串串行行口口0023H2021-7-92.3.3 数据存储器地址空间数据存储器地址空间 一、用途:一、用途: 二、片外二、片外RAM: 三、片内三、片

36、内RAM: 2021-7-9一、用途:一、用途: 用于存放运算的中间结果、数据暂存和用于存放运算的中间结果、数据暂存和缓冲、标志位等。缓冲、标志位等。2021-7-9二、片外二、片外RAM: 地址:地址:0000HFFFFH 寻址:用寻址:用MOVX指令指令2021-7-9三、片内三、片内RAM: (一)片内一)片内RAMRAM地址空间地址空间(二)低(二)低128128字节字节RAMRAM(00H00H7FH7FH)(三)高(三)高128128字节字节RAMRAM(80H80HFFHFFH):): 特殊功能寄存器特殊功能寄存器SFRSFR区区2021-7-9(一)片内(一)片内RAM地址空间

37、地址空间寻址:用指令寻址:用指令MOV最大可寻址最大可寻址256个单元。个单元。低低128B(00H-7FH):):真正真正RAM区区高高128B(80H-FFH):):特殊功能寄存器(特殊功能寄存器(SFR)区)区地址:地址:00H-FFH如图如图2-5所示。所示。2021-7-9(二)低(二)低128字节字节RAM(00H7FH)1、工作寄存器区(、工作寄存器区(00H1FH)2、位寻址区(、位寻址区(20H2FH) 3、用户、用户RAM区(区(30H7FH)2021-7-91、工作寄存器区(、工作寄存器区(00H1FH)由四组(由四组(32个)工作寄存器组成,每组个)工作寄存器组成,每组

38、8个寄存个寄存器(器(R0-R7),共占),共占32个单元。见个单元。见 表表2-4。通过程序状态寄存器通过程序状态寄存器 PSW中中RS1、RS0两位设定两位设定来选择来选择CPU的当前工作寄存器组。复位时,第的当前工作寄存器组。复位时,第0组为当前的工作寄存器。组为当前的工作寄存器。若不需要四组,则其余可作为一般若不需要四组,则其余可作为一般RAM单元。单元。2021-7-9表表2-4 工作寄存器地址表工作寄存器地址表组组 RS1 RS0R0R1R2R3R4R5R6R70 0 000H 01H 02H 03H 04H 05H 06H 07H1 0 108H 09H 0AH 0BH 0CH

39、0DH 0EH 0FH2 1 010H 11H12H 13H 14H 15H 16H 17H3 1 118H 19H 1AH 1BH 1CH 1DH 1EH 1FH2021-7-92、位寻址区(、位寻址区(20H2FH)位寻址区有位寻址区有16个单元,每个单元个单元,每个单元8位,共位,共128位位。位地址为。位地址为00H-7FH。可用位寻址方式访问其各位。可用位寻址方式访问其各位。RAM位寻址区位地址表如位寻址区位地址表如 表表2-5所示。所示。 这些可寻址位,通过执行指令可直接对某一位这些可寻址位,通过执行指令可直接对某一位操作,如置操作,如置1、清、清0、判断转移等。、判断转移等。位寻

40、址是位寻址是89C51的一个重要特点。的一个重要特点。2021-7-9表表2-5 RAM位寻址区位地址表位寻址区位地址表字节地址 MSB 位地址 LSB 2FH 7F 7E 7D 7C 7B 7A 79 78 2EH 77 76 75 74 73 72 71 70 2DH 6F 6E 6D 6C 6B 6A 69 68 2CH 67 66 65 64 63 62 61 60 2BH 5F 5E 5D 5C 5B 5A 59 58 2AH 57 56 55 54 53 52 51 50 29H 4F 4E 4D 4C 4B 4A 49 48 28H 47 46 45 44 43 42 41 40

41、 27H 3F 3E 3D 3C 3B 3A 39 38 26H 37 36 35 34 33 32 31 30 25H 2F 2E 2D 2C 2B 2A 29 28 24H 27 26 25 24 23 22 21 20 23H 1F 1E 1D 1C 1B 1A 19 18 22H 17 16 15 14 13 12 11 10 21H 1F 1E 0D 0C 0B 0A 09 08 20H 07 06 05 04 03 02 01 00 2021-7-93、用户、用户RAM区(区(30H7FH)用于堆栈和数据缓冲。用于堆栈和数据缓冲。2021-7-9(三)高(三)高128字节字节RAM

42、(80HFFH)l 有有21个特殊功能功能寄存器。个特殊功能功能寄存器。见表见表 2-6l 地址分布在地址分布在80HFFH的的RAM空间。空间。l 只能用直接寻址方式。只能用直接寻址方式。l 有11个具有位寻址能力。11个SFR的字节地址正好能被8整除。特殊功能寄存器的地址见表2-7。l 部分特殊功能寄存器介绍2021-7-9表表2-7 特殊功能寄存器地址表特殊功能寄存器地址表SFR MSB 位地址/位定义 LSB 字节地址 B F7 F6 F5 F4 F3 F2 F1 F0 F0 ACC E7 E6 E5 E4 E3 E2 E1 E0 E0 D7 D6 D5 D4 D3 D2 D1 D0

43、D0 PSW CY AC F0 RS1 RS0 OV F1 P IP BF BE BD BC BB BA B9 B8 B8 P3 B7 B6 B5 B4 B3 B2 B1 B0 B0 AF AE AD AC AB AA A9 A8 IE EA ES ET1 EX1 ET0 EX0 A8 P2 A7 A6 A5 A4 A3 A2 A1 A0 A0 SBUF 99 9F 9E 9D 9C 9B 9A 99 98 SCON SM0 SM1 SM2 REN TB8 RB8 TI RI 98 P1 97 96 95 94 93 92 91 90 90 TH1 8D TH0 8C TL1 8B TL0 8

44、A TMOD GATE C/T M1 M0 GATE C/T M1 M0 89 8F 8E 8D 8C 8B 8A 89 88 TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 88 PCON SMOD / / / GF1 GF0 PD IDL 87 DPH 83 DPL 82 SP 81 P0 87 86 85 84 83 82 81 80 80 2021-7-9表表2-6 89C51系列单片机的特殊功能寄存器表系列单片机的特殊功能寄存器表符号名称地址符号名称地址*ACC累加器E0H*BB 寄存器F0H*PSW程序状态字D0HSP栈指针81H*P0P0 锁存器80H*

45、P2P2 锁存器A0H*P1P1 锁存器90H*P3P3 锁存器B0HDPTR数据指针(高 8位DPH低 8 位 DPL)83H82HTL0定 时 器 / 计 数 器0(低字节)8AH*IE中断允许控制寄存器A8H*TCON定时器/计数器控制寄存器88HTMOD定时器/计数器工作方式寄存器89HTH0定 时 器 / 计 数 器0(高字节)8CHTH1定时器/计数器 1(高字节)8DHTL1定 时 器 / 计 数 器1(低字节)8BH*SCON串行口控制寄存器98HSBUF串行数据缓冲器99H*IP中断优先级控制寄存器B8HPCON电源控制及波特率选择寄存器87H2021-7-9部分特殊功能寄存

46、器介绍部分特殊功能寄存器介绍累加器累加器ACCACC(E0HE0H):):用A作为ACC的助记符。用于存放第一个操作数及运算结果。2021-7-9部分特殊功能寄存器介绍部分特殊功能寄存器介绍寄存器寄存器B B(F0HF0H):):l在乘法指令中,B用于存放乘数和乘积的高8位。l在除法指令中用于存放除数和余数。l在其它指令中用作一般的寄存器或RAM单元。2021-7-9部分特殊功能寄存器介绍部分特殊功能寄存器介绍 PSW PSW 程序状态寄存器(程序状态寄存器(D0HD0H):):PSW包含了程序执行后的状态信息,供程序查询或判断用。PSW的格式PSW各位的含义2021-7-9PSWPSW的格式

47、如下:的格式如下:ACCYPOVRS0RS1F0PSW(D0H)D7 D6 D5 D4 D3 D2 D1 D02021-7-9PSWPSW各位的含义各位的含义(1)CY位(位(PSW.7):进(借)位标志位。):进(借)位标志位。执行加法(减法)运算指令时,如运算结果最执行加法(减法)运算指令时,如运算结果最高位(高位(D7)向前有进位(借位),)向前有进位(借位),CY=1;否;否则,则,CY=0。在位操作指令中,在位操作指令中,CY位是布尔累加器,用位是布尔累加器,用C表表示。示。2021-7-9PSWPSW各位的含义各位的含义(2)AC位(位(PSW.6):半进位标志位(辅助进位标志)。

48、):半进位标志位(辅助进位标志)。执行加法(减法)运算指令时,如运算结果的低半字节执行加法(减法)运算指令时,如运算结果的低半字节(D3)向高半字节有进位(借位),)向高半字节有进位(借位),AC=1;否则,;否则,AC=0。2021-7-9PSWPSW各位的含义各位的含义(3)FO位(位(PSW.5):用户标志。:用户标志。由用户自己定义、置位、复位,以作为软件标由用户自己定义、置位、复位,以作为软件标志志。2021-7-9PSWPSW各位的含义各位的含义(4)RS0、RS1位(位(PSW.3和和PSW.4):工作寄存器组选择):工作寄存器组选择控制位。控制位。由用户用软件改变由用户用软件改

49、变RS0和和RS1的值,以切换当前选用的的值,以切换当前选用的工作寄存器组。工作寄存器组。RS0,RS1的组合关系如的组合关系如 表表2-8 所示。所示。上电复位时,(上电复位时,(RS0)=(RS1)=0,CPU自然选择第自然选择第0组为当前工作寄存器组。组为当前工作寄存器组。2021-7-9RS1RS0寄存器组寄存器组片内片内RAM地址地址00第第0组组 00H07H01第第1组组 08H0FH10第第2组组 10H17H11第第3组组 18H1FH表表2-8 RS0,RS1的组合关系的组合关系2021-7-9PSWPSW各位的含义各位的含义(5)OV位(位(PSW.2):溢出标志位。):

50、溢出标志位。如有溢出,即运算结果超出如有溢出,即运算结果超出-128 +127的范围时,的范围时,OV=1;无溢出时,无溢出时,OV=0。2021-7-9PSWPSW各位的含义各位的含义(6)P位(位(PSW.0):奇偶检验位。):奇偶检验位。 每条指令执行后,每条指令执行后,A中中“1”的个数为奇数,则的个数为奇数,则P=1;否则,否则,P=0。2021-7-9PSWPSW各位的含义各位的含义(7)PSW.1:为保留位。:为保留位。2021-7-9部分特殊功能寄存器介绍部分特殊功能寄存器介绍堆栈指针堆栈指针SPSP(81H81H):):在片内在片内RAM中,开辟的一个按中,开辟的一个按“先进

51、后出先进后出”的结构的结构方式处理数据的区域。方式处理数据的区域。SP的内容可指向片内的内容可指向片内RAM00H7FH的任何单元。的任何单元。系统复位时,系统复位时,SP初始化为初始化为07H。堆栈的操作:如堆栈的操作:如 图图2-6 所示。所示。2021-7-9部分特殊功能寄存器介绍部分特殊功能寄存器介绍数据指针数据指针DPTRDPTR(83H83H,82H82H):):l DPTR是一个16位的特殊功能寄存器。l 由DPH(83H),DPL(82H)组成。l DPH,DPL可以单独使用。2021-7-9部分特殊功能寄存器介绍部分特殊功能寄存器介绍I/OI/O端口端口P0P0、P1P1、P

52、2P2、P3P3(80H80H、90H90H、A0HA0H、B0HB0H):):分别为四个并行端口的锁存器,每一个口锁存器还有位地址,所以每一条I/O线可独立输入或输出。输出时,可以锁存;输入时,可以缓冲。2021-7-92.4.1 片内时钟信号的产生片内时钟信号的产生2.4.2CPU取指、执指时序取指、执指时序2021-7-92.4.1 片内时钟信号的产生片内时钟信号的产生 89C51芯片内部有一个高增益反相放大器,用于构成振荡器。反相放大器的输入端为XTAL1,输出端为XTAL2,两端跨接石英晶体及两个电容就可以构成稳定的自激振荡器。电容器和通常取30 pF左右,可稳定频率并对振荡频率有微

53、调作用。振荡脉冲频率范围为fOSC=024 MHz。 晶体振荡器的频率为fOSC,振荡信号从XTAL2端输入到片内的时钟发生器上,如图2-12所示。2021-7-9图图2-12 89C51的片内振荡器及时钟发生器的片内振荡器及时钟发生器 2021-7-92.4.1 片内时钟信号的产生片内时钟信号的产生&1、节拍与状态周期、节拍与状态周期 &2、机器周期和指令周期、机器周期和指令周期&3、基本时序定时单位、基本时序定时单位2021-7-91、节拍与状态周期、节拍与状态周期 时钟发生器是一个时钟发生器是一个2分频的触发器电路,它将振荡器的信分频的触发器电路,它将振荡器的信号频率号频率fOSC除以除

54、以2,向,向CPU提供两相时钟信号提供两相时钟信号P1和和P2。时钟信号的周期称为机器状态周期时钟信号的周期称为机器状态周期S(STATE),是振荡周,是振荡周期的期的2倍。倍。在每个时钟周期在每个时钟周期(即机器状态周期即机器状态周期S)的前半周期,相位的前半周期,相位1(P1)信号有效,在每个时钟周期的后半周期,相位信号有效,在每个时钟周期的后半周期,相位2(P2,节拍,节拍2)信号有效。信号有效。每个时钟周期每个时钟周期(以后常称状态以后常称状态S)有两个节拍有两个节拍(相相)P1和和P2,CPU就以两相时钟就以两相时钟P1和和P2为基本节拍指挥为基本节拍指挥89C51单片机各单片机各个

55、部件协调地工作。个部件协调地工作。2021-7-92、机器周期和指令周期、机器周期和指令周期二、指令周期:二、指令周期:一、机器周期:一、机器周期:2021-7-94 计算机的一计算机的一计算机的一条指令由若干个字节组计算机的一条指令由若干个字节组成。执行一条指令需要多长时间则以机器周期为成。执行一条指令需要多长时间则以机器周期为单位。单位。4 一个机器周期是指一个机器周期是指CPU访问存储器一次所需的访问存储器一次所需的时间。时间。例如,取指令、读存储器、写存储器等等。4 一个机器周期包括一个机器周期包括12个振荡周期,分为个振荡周期,分为6个个S状状态:态:S1S6。4 每个状态又分为两拍

56、,称为每个状态又分为两拍,称为P1和和P2。4 因此,一个机器周期中的因此,一个机器周期中的12个振荡周期表示为个振荡周期表示为S1P1,S1P2,S2P1,S6P1,S6P2。4若采用6MHz晶体振荡器,则每个机器周期为多少?返返回回2021-7-9返返回回4设设: :晶体振荡器频率晶体振荡器频率 fosc=6MHzfosc=6MHz, ,4则则: :振荡周期振荡周期=1/fosc=1/6 s=1/fosc=1/6 s(微秒)(微秒)4因为因为: :一个机器周期包括一个机器周期包括1212个振荡周期个振荡周期, ,4所以所以: :一个机器周期一个机器周期=12=12* *(1/6) s(1/

57、6) s(微秒)(微秒) = = 2s2s(微秒)(微秒)问:如果fosc=12MHz, 一个机器周期为多少?答案1s(微秒)2021-7-94 每条指令都由一个或几个机器周期组每条指令都由一个或几个机器周期组成。成。4 指令周期:执行一条指令所需的时间。指令周期:执行一条指令所需的时间。4 每条指令由一个或若干个字节组成每条指令由一个或若干个字节组成。有单字节指令,双字节指令,多字节指令等。字节数少则占存储器空间少。4 每条指令的每条指令的都由一个或几个都由一个或几个 组成。组成。有单周期指令、双周期指令、和四周期指令。机器周期数少则执行速度快。返返回回2021-7-9设振荡周期为设振荡周期

58、为6MHz,则一个机器周期为,则一个机器周期为 2s2s(微秒)。(微秒)。单周期指令:指令周期为单周期指令:指令周期为 2s2s(微秒)(微秒)双周期指令:指令周期为双周期指令:指令周期为 4s4s(微秒)(微秒)四周期指令:指令周期为四周期指令:指令周期为 8s8s(微秒)(微秒)返返回回2021-7-9单字节指令:如,INC A;机器码格式:0000 0100B 双字节指令:如,MOV A,#data;机器码格式: 0111 0100B data 返返回回2021-7-93、基本时序定时单位、基本时序定时单位 综上所述,综上所述,89C51或其他或其他80C51单片机的基本时序定时单位有

59、单片机的基本时序定时单位有如下如下4个。个。 振荡周期:振荡周期: 晶振的振荡周期,为最小的时序单位。晶振的振荡周期,为最小的时序单位。 状态周期:状态周期: 振荡频率经单片机内的二分频器分频后提振荡频率经单片机内的二分频器分频后提供给片内供给片内CPU的时钟周期。因此,一个状态周期包含的时钟周期。因此,一个状态周期包含2个个振荡周期。振荡周期。 机器周期(机器周期(MC):): 1个机器周期由个机器周期由6个状态周期即个状态周期即12个振荡周期组成,是计算机执行一种基本操作的时间单位个振荡周期组成,是计算机执行一种基本操作的时间单位。 指令周期:指令周期: 执行一条指令所需的时间。一个指令周

60、期执行一条指令所需的时间。一个指令周期由由14个机器周期组成,依据指令不同而不同,见附录个机器周期组成,依据指令不同而不同,见附录A。2021-7-9 4种时序单位中,振荡周期和机器周期是单片机内计算其他时种时序单位中,振荡周期和机器周期是单片机内计算其他时间值(例如,波特率、定时器的定时时间等)的基本时序间值(例如,波特率、定时器的定时时间等)的基本时序单位。单位。下面是单片机外接晶振频率下面是单片机外接晶振频率12 MHz时的各种时序单位的大小。时的各种时序单位的大小。振荡周期振荡周期=1/fOSC=1/12 MHz=0.083 3 s状态周期状态周期=2/fOSC=2/12 MHz=0.

温馨提示

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

评论

0/150

提交评论