《AT89S51单片机的硬件结构课件.pptx》由会员分享,可在线阅读,更多相关《AT89S51单片机的硬件结构课件.pptx(61页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、本章知识点本章知识点lAT89S52单片机的硬件组成l中央处理器CPUlAT89S52单片机存储器及存储空间l并行输入/输出接口l时钟电路与时序l复位操作与复位电路第2章AT89S52单片机的硬件结构2.1 2.1 AT89S52单片机单片机的硬件组成的硬件组成 片内硬件组成结构如片内硬件组成结构如图图2-12-1所示。把作为控制应用所必需的基本功能部件都集成在一个尺所示。把作为控制应用所必需的基本功能部件都集成在一个尺寸有限的集成电路芯片上。寸有限的集成电路芯片上。有如下有如下功能部件功能部件和和特性特性:(1 1)8 8位微处理器(位微处理器(CPUCPU););(2 2)数据存储器()数
2、据存储器(256B RAM256B RAM););(3 3)程序存储器()程序存储器(8KB Flash ROM8KB Flash ROM););(4 4)4 4个个8 8位可编程并行位可编程并行I/OI/O口(口(P0P0口、口、P1P1口、口、P2P2口口和和P3P3口);口);(5 5)1 1个全双工的异步串行口;个全双工的异步串行口;(6 6)3 3个可编程的个可编程的1616位定时器位定时器/计数器计数器(T0T0、T1T1和和T2T2);(7 7)1 1个看门狗定时器;个看门狗定时器;(8 8)中断系统具有)中断系统具有6 6个中断源、个中断源、6 6个中断向量;个中断向量;(9
3、9)特殊功能寄存器()特殊功能寄存器(SFRSFR)3232个;个;(1010)低功耗模式有)低功耗模式有空闲模式空闲模式和和掉电模式掉电模式,且具有掉电模式下的中断恢复模式;,且具有掉电模式下的中断恢复模式;(1111)3 3个程序加密锁定位个程序加密锁定位。图图2-12-1 AT89S52AT89S52单片机片内结构单片机片内结构AT89S52单片机单片机的硬件组成的硬件组成下面下面介绍介绍图图2-12-1中中片内各功能部件片内各功能部件。(1 1)CPUCPU(微处理器)(微处理器)8 8位的位的CPUCPU,与通用,与通用CPUCPU基本相同,同样包括了基本相同,同样包括了运算器运算器
4、和和控制器控制器两大部分,还有面向控两大部分,还有面向控制的制的位处理功能位处理功能。(2 2)数据存储器()数据存储器(RAMRAM)片内为片内为为为256B256B,片外最多可扩,片外最多可扩64KB64KB。片内。片内256B256B的的RAMRAM以高速以高速RAMRAM的形式集成,可加快的形式集成,可加快单片机运行的速度单片机运行的速度和和降低功耗。降低功耗。(3 3)程序存储器()程序存储器(Flash ROMFlash ROM)用来存储程序。用来存储程序。AT89S52 AT89S52 片内有片内有8KB8KB的的FlashFlash存储器;如果片内程序存储器容量存储器;如果片内
5、程序存储器容量不够,片外最多可外扩至不够,片外最多可外扩至64KB64KB程序存储器,即程序存储器,即“片内片内+片外片外”的程序存储器总容量不的程序存储器总容量不超过超过64KB64KB。(4 4)定时器)定时器/计数器计数器:片内有片内有3 3个个1616位位的定时器的定时器/计数器,具有计数器,具有4 4种工作方式。种工作方式。(5 5)中断系统)中断系统:具有具有6 6个个中断源,中断源,2 2级中断优先权。级中断优先权。(6 6)串行口)串行口 1 1个全双工的异步串行口,个全双工的异步串行口,4 4种工作方式。可进行串行通信,扩展并行种工作方式。可进行串行通信,扩展并行I/OI/O
6、口,口,可与多个单片机构成多机系统。可与多个单片机构成多机系统。(7 7)P0P0口口、P1P1口、口、P2P2口口和和P3P3口口 4 4个个8 8位并行位并行I/OI/O口。口。(8 8)特殊功能寄存器()特殊功能寄存器(SFRSFR)共共有有32个个特特殊殊功功能能寄寄存存器器,用用于于CPU对对片片内内各各外外设设部部件件进进行行管管理理、控控制制和和监监视视。特特殊殊功功能能寄寄存存器器实实际际上上是是片片内内各各外外设设部部件件的的控控制制寄寄存存器器和和状状态态寄寄存存器器,这这些些特殊功能寄存器映射在片内特殊功能寄存器映射在片内RAM区的区的80HFFH的地址区间内。的地址区间
7、内。(9 9)1 1个看门狗定时器个看门狗定时器WDTWDT 当单片机由于干扰而使程序陷入死循环或跑飞状态时,可引起单片机复位,当单片机由于干扰而使程序陷入死循环或跑飞状态时,可引起单片机复位,使程序恢复正常运行。使程序恢复正常运行。2.2 AT89S522.2 AT89S52的引脚功能的引脚功能(a)DIP封装的引脚分布(封装的引脚分布(40引脚引脚 (b)PLCC封装的引脚分布封装的引脚分布(44引脚)引脚)引脚按其功能可分为如下引脚按其功能可分为如下3 3类类:(1 1)电源及时钟引脚)电源及时钟引脚V VCCCC、V VSSSS;XTAL1XTAL1、XTAL2XTAL2。(2 2)控
8、制引脚)控制引脚 PSENPSEN*、ALE/PROGALE/PROG*、EAEA*/V/VPPPP、RSTRST(3 3)I/OI/O口引脚口引脚P0P0、P1P1、P2P2、P3P3,为,为4 4个个8 8位位I/OI/O口口(一)(一)电源及时钟引脚电源及时钟引脚1 1电源引脚电源引脚(1 1)V VCCCC(4040脚):脚):+5V+5V电源。电源。(2 2)V VSSSS(2020脚):脚):数字地。数字地。2 2时钟引脚时钟引脚 (1 1)XTAL1XTAL1(1919脚):脚):片内振荡器反相放大器和时钟发生器电路输入端。用片片内振荡器反相放大器和时钟发生器电路输入端。用片内振
9、荡器时,该脚接外部石英晶体和微调电容。内振荡器时,该脚接外部石英晶体和微调电容。外接时钟源时外接时钟源时,该脚接外部,该脚接外部时钟振荡器的信号。时钟振荡器的信号。(2 2)XTAL2XTAL2(1818脚):脚):片内振荡器反相放大器的输出端。当使用片内振荡器反相放大器的输出端。当使用片内振荡器片内振荡器,该脚连接外部石英晶体和微调电容。当使用该脚连接外部石英晶体和微调电容。当使用外部时钟源外部时钟源时,本脚时,本脚悬空悬空。(二)(二)控制引脚控制引脚(1 1)RST(RESETRST(RESET,9 9脚脚)复位信号输入,在引脚加上复位信号输入,在引脚加上持续时间大于持续时间大于2 2个
10、机器周期的高电平个机器周期的高电平,可使单片机,可使单片机复复位位。正常工作,此脚。正常工作,此脚电平电平应应 0.5V0.5V。(2 2)EA*/VPPEA*/VPP(Enable Address/Voltage Pulse of Programing(Enable Address/Voltage Pulse of Programing,3131脚脚)EAEA*:引脚引脚第一功能第一功能:外部程序存储器访问允许控制端。:外部程序存储器访问允许控制端。(3 3)ALE/PROG*ALE/PROG*(Address Latch Enable/PROGrammingAddress Latch En
11、able/PROGramming,3030脚)脚)ALE为地址锁存控制信号端,为第一功能。为地址锁存控制信号端,为第一功能。(4 4)PSEN*PSEN*(Program Strobe ENableProgram Strobe ENable,2929脚)脚)片外程序存储器读选通信号,低片外程序存储器读选通信号,低电平电平有效。有效。(三)(三)并行并行I/OI/O口引脚口引脚(1 1)P0P0口:口:P0.7P0.0引脚引脚 为漏极开路的为漏极开路的8位并行双向位并行双向I/O口。口。当当AT89S52扩展外部存储器及扩展外部存储器及I/O接口芯片时,接口芯片时,P0口为分时复用的低口为分时复
12、用的低8位地位地址址/数据总线。数据总线。在向在向P0口写入口写入“1”后就成为高阻态的输入口。后就成为高阻态的输入口。当当P0口作为口作为通用通用I/O口使用口使用时,需外加上拉电阻,这时为准双向口。时,需外加上拉电阻,这时为准双向口。(2)P1口:口:P1.7P1.0引脚引脚准双向准双向I/O口,具有内部上拉电阻,可驱动口,具有内部上拉电阻,可驱动4个个LS型型TTL负载。负载。(3)P2口:口:P2.7P2.0引脚引脚 准双向准双向I/O口,引脚内部接有上拉电阻,可驱动口,引脚内部接有上拉电阻,可驱动4个个LS型型TTL负载。负载。当当AT89S52访问外部存储器及访问外部存储器及I/O
13、口时,口时,P2口作为高口作为高8位地址总线使用,输位地址总线使用,输出高出高8位地址。位地址。当当P2口不作为高口不作为高8位地址总线位地址总线时,可作为通用的时,可作为通用的I/O口使用。口使用。(4 4)P3P3口:口:P3.7P3.0 准双向准双向I/OI/O口口,具有内部上拉电阻。,具有内部上拉电阻。P3口的口的第一功能第一功能是作为通用的是作为通用的I/O口使用,可驱动口使用,可驱动4个个LS型型TTL负载。负载。P3 P3口还可提供口还可提供第二功能第二功能。第二功能定义。第二功能定义见见表表2-12-1,应熟记。,应熟记。综上所述,综上所述,P0P0口口可可作为总线作为总线口口
14、,为双向口。作为通用的,为双向口。作为通用的I/OI/O口使用时,为准双口使用时,为准双向口,这时需加上拉电阻。向口,这时需加上拉电阻。P1P1口、口、P2P2口、口、P3P3口口均为准双向口。均为准双向口。并行并行I/OI/O口引脚口引脚并行并行I/OI/O口引脚口引脚综上所述,综上所述,P0P0口口可可作为总线作为总线口口,为双向口。作为通用的,为双向口。作为通用的I/OI/O口使用时,为准双向口,这时需加上拉电阻。口使用时,为准双向口,这时需加上拉电阻。P1P1口、口、P2P2口、口、P3P3口口均为准双向口。均为准双向口。注意注意:准双向口与双向口的差别准双向口与双向口的差别。准双向口
15、仅有两个状态。准双向口仅有两个状态。而而P0P0口作为总线使用,口线内无上拉电阻,处于高阻口作为总线使用,口线内无上拉电阻,处于高阻“悬浮悬浮”态。故态。故P0P0口为双向三态口为双向三态I/OI/O口。口。为什么为什么P0P0口要有高阻口要有高阻“悬浮悬浮”态?态?准双向准双向I/OI/O口则无高阻的口则无高阻的“悬浮悬浮”状态。状态。2.3 AT89S522.3 AT89S52单片机单片机的的CPUCPUCPUCPU由由运算器运算器和和控制器控制器构成构成(一)运算器(一)运算器对操作数进行算术、逻辑和位操作运算。主要包括算术逻辑运算对操作数进行算术、逻辑和位操作运算。主要包括算术逻辑运算
16、单元单元ALUALU、累加器、累加器A A、位处理器、程序状态字寄存器、位处理器、程序状态字寄存器PSWPSW及两个暂存器及两个暂存器等。等。1 1算术逻辑运算单元算术逻辑运算单元ALUALU可对可对8 8位变量位变量逻辑逻辑运算运算(与、或、异或、循环、求补和清零与、或、异或、循环、求补和清零),还可还可算术运算算术运算(加、减、乘、除加、减、乘、除)ALUALU还有位操作功能,对位变量进行位处理,如置还有位操作功能,对位变量进行位处理,如置“1 1”、清、清“0 0”、求补、测试转移及逻辑、求补、测试转移及逻辑“与与”、“或或”等等。2 2累加器累加器A A使用最频繁的寄存器,使用最频繁的
17、寄存器,可可写为写为AccAcc。“A A”与与“AccAcc”书写上的差别,将书写上的差别,将在第在第3 3章介绍。章介绍。位于片内的特殊功能寄存器区。位于片内的特殊功能寄存器区。作用如下:作用如下:(1 1)ALUALU单元的输入数据源之一,又是单元的输入数据源之一,又是ALUALU运算结果存放单元运算结果存放单元。(2 2)数据传送大多都通过累加器)数据传送大多都通过累加器A A,相当于数据的中转站。为解决,相当于数据的中转站。为解决“瓶瓶颈堵塞颈堵塞”问题,问题,AT89S52AT89S52增加了一部分可以不经过累加器的传送指令。增加了一部分可以不经过累加器的传送指令。A A的进位标志
18、的进位标志CyCy是特殊的,因为它同时又是是特殊的,因为它同时又是位处理机的位处理机的位累加器位累加器3 3程序状态字寄存器程序状态字寄存器PSWPSWPSWPSW(Program Status WordProgram Status Word)位于片内特殊功能寄存器区,)位于片内特殊功能寄存器区,字节地址为字节地址为D0HD0H。包含了包含了程序运行状态的信息程序运行状态的信息,其中,其中4 4位保存当前指令执行后的状态,供程位保存当前指令执行后的状态,供程序查询和判断。序查询和判断。格式如格式如图图2-52-5所示所示。图图2-52-5 PSW PSW的格式的格式PSWPSWPSW中各个位的
19、功能中各个位的功能:(1 1)CyCy(PSW.7PSW.7)进位标志位)进位标志位 可写为可写为C C。在算术和逻辑运算时,若有。在算术和逻辑运算时,若有进位进位/借位借位,CyCy1 1;否则,;否则,CyCy0 0。在位处理器中,它是位累加器。在位处理器中,它是位累加器。(2 2)AcAc(PSW.6PSW.6)辅助进位标志位)辅助进位标志位 在在BCDBCD码运算时,用作十进位调整。即当码运算时,用作十进位调整。即当D3D3位向位向D4D4位位产生进位或借位时,产生进位或借位时,AcAc1 1;否则,;否则,AcAc0 0。(3 3)F0F0(PSW.5PSW.5)用户设定标志位)用户
20、设定标志位 由用户使用的一个状态标志位,可用指令来使它置由用户使用的一个状态标志位,可用指令来使它置1 1或清或清0 0,控制程序的流向。用户应充分利用。控制程序的流向。用户应充分利用。PSWPSW(4 4)RS1RS1、RS0RS0(PSW.4PSW.4、PSW.3PSW.3)4 4组工作寄存器区选择组工作寄存器区选择选择片内选择片内RAMRAM区中的区中的4 4组工作寄存器区中的某一组为当前组工作寄存器区中的某一组为当前工作寄存区工作寄存区见见表表2-22-2。(5 5)OVOV(PSW.2PSW.2)溢出标志位)溢出标志位 当执行算术指令时,用来指示运算结果是否产生当执行算术指令时,用来
21、指示运算结果是否产生溢出。如果结果产生溢出,溢出。如果结果产生溢出,OV=1OV=1;否则,;否则,OV=0OV=0。(6 6)PSW.1PSW.1位位:保留位保留位(7 7)P P(PSW.0PSW.0)奇偶标志位奇偶标志位 指令执行完,累加器指令执行完,累加器A A中中“1 1”的个数的个数是是奇数奇数还还是是偶数偶数。P=1P=1,表示表示A A中中“1 1”的个数为的个数为奇数奇数。P=0P=0,表示,表示A A中中“1 1”的个数为的个数为偶数偶数。此标志位对串行通信有重要的意义此标志位对串行通信有重要的意义,常用常用奇偶奇偶检验检验的方法来检验数据串行传输的可靠性。的方法来检验数据
22、串行传输的可靠性。PSW控制器控制器控制器包括控制器包括:程序计数器、指令寄存器、指令译码器、定时及控制逻辑电路程序计数器、指令寄存器、指令译码器、定时及控制逻辑电路等。功能是控制指令的读入、译码和执行,从而对各功能部件进行定时和逻等。功能是控制指令的读入、译码和执行,从而对各功能部件进行定时和逻辑控制。辑控制。程序计数器程序计数器PCPC是一个独立的是一个独立的1616位计数器,不可访问。单片机复位时,位计数器,不可访问。单片机复位时,PCPC中中内容为内容为0000H0000H,从程序存储器,从程序存储器0000H0000H单元取指令,开始执行程序。单元取指令,开始执行程序。PC PC工作
23、过程是工作过程是:CPUCPU读指令时,读指令时,PCPC的内容作为所取指令的地址,程序存储的内容作为所取指令的地址,程序存储器按此地址输出指令字节,同时器按此地址输出指令字节,同时PCPC自动加自动加1 1。2.4 AT89S512.4 AT89S51存储器的结构存储器的结构 存储器存储器的的结构特点之一是将程序存储器和数据存储器分开结构特点之一是将程序存储器和数据存储器分开(哈佛结构),(哈佛结构),并有并有各自各自的访问指令。的访问指令。存储器空间可分为存储器空间可分为4 4类类。AT89S51 AT89S51存储器的结构存储器的结构 64KB 64KB程序存储器空间中有程序存储器空间中
24、有5 5个特殊单元个特殊单元分别对应于分别对应于5 5个中断源的中断个中断源的中断入口地址,见入口地址,见表表2-32-3。通常这通常这5 5个中断入口个中断入口地址处地址处都放一条跳转指令都放一条跳转指令跳向对应的断服务子程跳向对应的断服务子程序,而不是直接存放中断服务子程序序,而不是直接存放中断服务子程序。数据存储器空间数据存储器空间.片内数据存储器片内数据存储器.片外数据存储器片外数据存储器当片内当片内128B128B的的RAMRAM不够用时,需外扩,不够用时,需外扩,最多可外扩最多可外扩64KB64KB的的RAMRAM。注意,片内注意,片内RAMRAM与片外与片外RAMRAM两个空间是
25、相互独立的,两个空间是相互独立的,片片内内RAMRAM与片外与片外RAMRAM的低的低128B128B的地址是相同的地址是相同的的,但由于使用的是不同的访问指令,但由于使用的是不同的访问指令,所以不会发生冲突。所以不会发生冲突。特殊功能寄存器(特殊功能寄存器(SFRSFR)特殊功能寄存器(特殊功能寄存器(SFRSFR)特殊功能寄存器(特殊功能寄存器(SFRSFR)堆栈指针堆栈指针SPSP指示堆栈顶部在内部指示堆栈顶部在内部RAMRAM块中的位置。块中的位置。堆栈结构堆栈结构向上生长型向上生长型。单片机。单片机复位复位后,后,SPSP为为07H07H,使得堆,使得堆栈实际上从栈实际上从08H08
26、H单元开始,单元开始,由于由于08H08H1FH1FH单元分别是属于单元分别是属于1 13 3组的工作寄存器区,组的工作寄存器区,最好在复位最好在复位后后把把SPSP值改置为值改置为60H60H或更大或更大的值的值,避免堆栈与工作寄存器冲突。,避免堆栈与工作寄存器冲突。堆栈是为堆栈是为子程序调用子程序调用和和中断操作中断操作而设而设,主要主要用来用来保护断点保护断点和和现场现场。特殊功能寄存器(特殊功能寄存器(SFRSFR)看门狗定时器看门狗定时器WDTWDTWDTWDT包含一个包含一个1414位计数器位计数器和和看门狗定时器复位寄存器看门狗定时器复位寄存器 (WDTRSTWDTRST)。)。
27、当当CPUCPU由于干扰,程序陷入死循环或跑飞状态时,由于干扰,程序陷入死循环或跑飞状态时,WDTWDT提供提供了一种使程序恢复正常运行的有效手段。了一种使程序恢复正常运行的有效手段。位地址空间位地址空间位地址空间位地址空间特殊功能寄存器位 地 址字 节地 址D7D6D5D4D3D2D1D0BF7HF6HF5HF4HF3HF2HF1HF0HF0HAccE7HE6HE5HE4HE3HE2HE1HE0HE0HPSWD7HD6HD5HD4HD3HD2HD1HD0HD0HIPBCHBBHBAHB9HB8HB8HP3B7HB6HB5HB4HB3HB2HB1HB0HB0HIEAFHACHABHAAHA9H
28、A8HA8HP2A7HA6HA5HA4HA3HA2HA1HA0HA0HSCON9FH9EH9DH9CH9BH9AH99H98H98HP197H96H95H94H93H92H91H90H90HTCON8FH8EH8DH8CH8BH8AH89H88H88HP087H86H85H84H83H82H81H80H80H表2-6 SFR中的位地址分布位地址空间位地址空间 作为对作为对AT89S51AT89S51存储器结构的总结,存储器结构的总结,图图2-72-7为为各类存储器的结各类存储器的结构图。构图。从图中可从图中可清楚看出各类存储器在存储器空间的位置。清楚看出各类存储器在存储器空间的位置。2.5 A
29、T89S512.5 AT89S51的并行的并行I/OI/O端口端口2.5.1 P02.5.1 P0口口图图2-8 2-8 P0P0口某一位的位电路结构口某一位的位电路结构P0P0口口P0P0口的特点口的特点P0P0口为口为双功能口双功能口地址地址/数据复用数据复用口和口和通用通用I/OI/O口。口。(1 1)当当P0P0口用作口用作地址地址/数据复用数据复用口时,是一个口时,是一个真正的双向口真正的双向口,输出低输出低8 8位地址和输出位地址和输出/输入输入8 8位数据。位数据。(2 2)当当P0P0口用作口用作通用通用I/OI/O口时,由于需要在片外接上拉电阻,端口不存在口时,由于需要在片外
30、接上拉电阻,端口不存在高阻抗(悬浮)状态,因此是一个高阻抗(悬浮)状态,因此是一个准双向口准双向口。为保证引脚信号的为保证引脚信号的正确读入正确读入,应,应首先向锁存器写首先向锁存器写1 1。单片机复位后,锁存器。单片机复位后,锁存器自动被置自动被置1 1;当;当P0P0口由原来输出转变为输入时,应先置锁存器为口由原来输出转变为输入时,应先置锁存器为1 1,方可执,方可执行输入操作。行输入操作。P0P0口口大多作为地址大多作为地址/数据复用口数据复用口使用,就不能再作为通用使用,就不能再作为通用I/OI/O口使用。口使用。P1P1口口P1P1口口图图2-92-9 P1P1口某一位的位电路结构口
31、某一位的位电路结构P1P1口口P1P1口的特点口的特点由于内部上拉电阻,由于内部上拉电阻,无无高阻抗输入高阻抗输入状态,故为状态,故为准双向口准双向口。P1P1口口“读引脚读引脚”输入输入时,必须时,必须先向锁存器写入先向锁存器写入1 1。P2P2口口P2P2口口图图2-10 2-10 P2P2口某一位的位电路结构口某一位的位电路结构P2P2口口P2P2口的特点口的特点作为地址输出线作为地址输出线时,时,P2P2口高口高8 8位地址,位地址,P0P0口输出的低口输出的低8 8位地址寻址位地址寻址64KB64KB地址空间。地址空间。作为通用作为通用I/OI/O口口时,时,P2P2口为准双向口。功
32、能与口为准双向口。功能与P1P1口一样。口一样。一般情况下,一般情况下,P2P2口口大多作为高大多作为高8 8位地址总线口位地址总线口使用,这时就不能使用,这时就不能再作为通用再作为通用I/OI/O口。口。P3P3口口P3P3口口图图2-112-11 P3P3口某一位的位电路结构口某一位的位电路结构P3P3口口P1P1P3P3口驱动口驱动LEDLED发光二极管发光二极管P0P0口与口与P1P1、P2P2、P3P3口相比,口相比,P0P0口的驱动能力较大口的驱动能力较大,每位可驱动,每位可驱动8 8个个LSTTLLSTTL输入,输入,而而P1P1、P2P2、P3P3口口的每一位的驱动能力,的每一
33、位的驱动能力,只有只有P0P0口的一半口的一半。当当P0P0口口某位为某位为高电平高电平时,可提供时,可提供400400 A A的电流;的电流;当当P0P0口某位为口某位为低电平低电平(0.45V0.45V)时,可提供)时,可提供3.2mA3.2mA的灌电流的灌电流。如低电平允许提高,灌电流可相应加大。所以,如低电平允许提高,灌电流可相应加大。所以,任何一个口要想获得较大任何一个口要想获得较大的驱动能力,只能用的驱动能力,只能用低电平低电平输出。输出。P1P1P3P3口驱动口驱动LEDLED发光二极管发光二极管(a)不恰当的连接:高电平驱动不恰当的连接:高电平驱动 (b)恰当的连接:低电平驱动
34、恰当的连接:低电平驱动图图2-122-12 发光二极管与发光二极管与AT89S51AT89S51并行口的直接连接并行口的直接连接2.6 2.6 时钟电路与时序时钟电路与时序 时钟电路产生时钟电路产生AT89S51AT89S51工作时所工作时所必需的控制信号必需的控制信号,在时钟信号的,在时钟信号的控制下,严格按时序执行指令。控制下,严格按时序执行指令。执行指令执行指令时,时,CPUCPU首先首先到程序存储器中到程序存储器中取出取出需要执行的指令操作需要执行的指令操作码,然后码,然后译码译码,并,并由时序电路产生一系列控制信号由时序电路产生一系列控制信号完成指令所规定完成指令所规定的操作。的操作
35、。CPU CPU发的发的时序信号时序信号两类两类,一类一类用对片内各个功能部件控制,用户用对片内各个功能部件控制,用户无须了解;无须了解;另一类另一类用于对片外存储器或用于对片外存储器或I/OI/O口的控制口的控制,这部分时序,这部分时序对于分析、设计硬件接口电路对于分析、设计硬件接口电路至关重要至关重要。2.6.1 2.6.1 时钟电路设计时钟电路设计 图图2-132-13 内部时钟方式电路内部时钟方式电路2 2外部时钟方式外部时钟方式图图2-142-14 AT89S51AT89S51的外部时钟方式电路的外部时钟方式电路2.6.2 2.6.2 机器周期、指令周期与指令时序机器周期、指令周期与
36、指令时序各种指令时序与时钟周期各种指令时序与时钟周期相相关。关。1 1时钟周期时钟周期时钟控制信号的时钟控制信号的基本时间单位基本时间单位。若晶振频率为。若晶振频率为f foscosc,则时钟周期,则时钟周期T Toscosc=1/=1/f foscosc。如。如f foscosc=6MHz=6MHz,T Toscosc=166.7ns=166.7ns。2 2机器周期机器周期 CPU CPU完成一个基本操作所需时间为完成一个基本操作所需时间为机器周期机器周期。执行一条指令分为执行一条指令分为几个机器周期几个机器周期。每个机器周期完成一个。每个机器周期完成一个基本操作基本操作,如取指令、读,如取
37、指令、读或写数据等。每或写数据等。每1212个时钟周期个时钟周期为为1 1个机器周期个机器周期。机器周期、指令周期与指令时序机器周期、指令周期与指令时序1 1个机器周期个机器周期包括包括1212个时钟周期个时钟周期,分,分6 6个状态个状态:S1S1S6S6。每个。每个状态又分两拍状态又分两拍:P1P1和和P2P2。因此,一个机器周期中的。因此,一个机器周期中的1212个时个时钟周期钟周期表示为表示为S1P1S1P1、S1P2S1P2、S2P1S2P1、S2P2S2P2、S6P2S6P2,如如图图2-162-16所示所示。图图2-16 2-16 AT89S51AT89S51的机器周期的机器周期
38、机器周期、指令周期与指令时序机器周期、指令周期与指令时序3 3指令周期指令周期执行一条指令执行一条指令所需的时间所需的时间。简单的。简单的单字节指令单字节指令,取出指令立即执行,取出指令立即执行,只需只需一个机器周期一个机器周期的时间的时间。而有些。而有些复杂的指令复杂的指令,如,如转移、乘、除指转移、乘、除指令令则需则需两个两个或或多个多个机器周期。机器周期。从指令执行时间看从指令执行时间看:单字节和双字节单字节和双字节指令指令一般为单机器周期一般为单机器周期和和双机器周期双机器周期;三字节指令三字节指令都是都是双机器周期双机器周期;乘、除指令乘、除指令占用占用4 4个机器周期个机器周期。2
39、.7 2.7 复位操作和复位电路复位操作和复位电路 单片机的单片机的初始化操作初始化操作,给复位脚,给复位脚RSTRST加上加上大于大于2 2个机器个机器周期周期(即(即2424个时钟振荡周期)的个时钟振荡周期)的高电平高电平就使就使AT89S51AT89S51复位。复位。复位时,复位时,PCPC初始化为初始化为0000H0000H,程序从,程序从0000H0000H单元开始执行。单元开始执行。除系统的正常初始化外,当除系统的正常初始化外,当程序出错程序出错(如程序跑飞)或(如程序跑飞)或操作错操作错误误使系统处于使系统处于死锁死锁状态时,状态时,需按复位键需按复位键使使RSTRST脚为高电平
40、,使脚为高电平,使AT89S51AT89S51摆脱摆脱“跑飞跑飞”或或“死锁死锁”状态而重新启动程序。状态而重新启动程序。2.7 2.7 复位操作和复位电路复位操作和复位电路2.7 2.7 复位操作和复位电路复位操作和复位电路复位电路设计复位电路设计图图2-172-17 片内复位电路结构片内复位电路结构 图图2-182-18 上电复位电路上电复位电路2.7 2.7 复位操作和复位电路复位操作和复位电路图图2-192-19 按键电平复位电路按键电平复位电路 图图2-202-20 按键脉冲复位电路按键脉冲复位电路2.8 AT89S522.8 AT89S52单片机的最小应用系统单片机的最小应用系统
41、AT89S52 AT89S52本身片内有本身片内有8KB8KB闪烁存储器,闪烁存储器,256B256B的的RAMRAM单元,单元,4 4个个I/OI/O口,外接口,外接时钟电路和复位电路即构成了一个时钟电路和复位电路即构成了一个AT89S52AT89S52单片机最小应用系统。单片机最小应用系统。该最小应用系统只能作为该最小应用系统只能作为小型的数字量的测控单元小型的数字量的测控单元。图图2-19 AT89S52单片机的最小应用系统单片机的最小应用系统2.9 2.9 看门狗定时器(看门狗定时器(WDTWDT)功能简介)功能简介 单片机应用系统受到干扰可能会引起程序单片机应用系统受到干扰可能会引起
42、程序“跑飞跑飞”或或“死循环死循环”,会使系统失控。如果操作人员在场,可按人工复位按钮,强制系,会使系统失控。如果操作人员在场,可按人工复位按钮,强制系统复位。但操作人员不可能一直监视着系统,即使监视着系统,也往统复位。但操作人员不可能一直监视着系统,即使监视着系统,也往往是在引起不良后果之后才进行人工复位。能不能不要人来监视,往是在引起不良后果之后才进行人工复位。能不能不要人来监视,使使系统摆脱失控状态,重新从系统摆脱失控状态,重新从0000H0000H地址处执行程序地址处执行程序呢?这时可采用呢?这时可采用“看门狗看门狗”技术。技术。“看门狗看门狗”技术就是使用一个技术就是使用一个“看门狗
43、看门狗”定时器来对系统时钟定时器来对系统时钟不断计数,监视程序的运行。当看门狗启动运行后,为不断计数,监视程序的运行。当看门狗启动运行后,为防止看门狗定防止看门狗定时器的不必要溢出时器的不必要溢出而引起单片机的非正常的复位,应而引起单片机的非正常的复位,应定期定期地把看门狗地把看门狗清清0 0,以保证看门狗不溢出。,以保证看门狗不溢出。2.9 2.9 看门狗定时器(看门狗定时器(WDTWDT)功能简介)功能简介 “看门狗看门狗”部件,包含部件,包含1 1个个1414位看门狗定时器和看门狗复位寄存器(位看门狗定时器和看门狗复位寄存器(表表2-42-4中的特殊功能寄存器中的特殊功能寄存器WDTRS
44、TWDTRST,地址,地址A6HA6H)。开启看门狗定时器后,)。开启看门狗定时器后,1414位定位定时器会自动对系统时钟时器会自动对系统时钟1212分频后的信号计数,即每分频后的信号计数,即每1638416384(214214)个机器周期)个机器周期溢出一次,并产生一个高电平复位信号,使单片机复位。采用溢出一次,并产生一个高电平复位信号,使单片机复位。采用12MHz12MHz的系统的系统时钟时,则每时钟时,则每16384s16384s产生一个复位信号。产生一个复位信号。当由于干扰,使单片机程序当由于干扰,使单片机程序“跑飞跑飞”或陷入或陷入“死循环死循环”时,单片机也时,单片机也就不能正常运
45、行程序来定时地把看门狗定时器清就不能正常运行程序来定时地把看门狗定时器清0 0,看门狗定时器计满溢出,看门狗定时器计满溢出时,将在时,将在AT89S52AT89S52的的RSTRST引脚上输出一个正脉冲(宽度为引脚上输出一个正脉冲(宽度为9898个时钟周期),使个时钟周期),使单片机复位,在系统的复位入口单片机复位,在系统的复位入口0000H0000H处重新开始执行主程序,从而使程序处重新开始执行主程序,从而使程序摆脱摆脱“跑飞跑飞”或或“死循环死循环”状态,让单片机归复于正常的工作状态。状态,让单片机归复于正常的工作状态。2.10 2.10 低功耗节电模式低功耗节电模式 两种低功耗节电工作模
46、式两种低功耗节电工作模式:空闲模式空闲模式(idle modeidle mode)和)和掉电保持掉电保持模式模式(power down modepower down mode)。)。掉电保持模式掉电保持模式下,下,VccVcc可由可由后备电源后备电源供电。供电。图图2-202-20为两种节电模为两种节电模式的式的内部控制电路内部控制电路。两种节电模式可通过两种节电模式可通过PCONPCON的的位位IDLIDL和和位位PDPD的设置来实现。格式如的设置来实现。格式如图图2-212-21所示所示。55图图2-202-20 低功耗节电模式的控制电路低功耗节电模式的控制电路 图图2-21 特殊功能寄存
47、器特殊功能寄存器PCON的格式的格式PCONPCON寄存器各位定义:寄存器各位定义:SMODSMOD:串行通信波特率选择(该位见第串行通信波特率选择(该位见第7 7章的介绍)。章的介绍)。:保留位。:保留位。GF1GF1、GF0GF0:通用标志位,两个标志位用户使用。:通用标志位,两个标志位用户使用。PDPD:掉电保持模式控制位,掉电保持模式控制位,PD=1PD=1,则,则进入掉电保持模式。进入掉电保持模式。IDLIDL:空闲模式控制位,若空闲模式控制位,若IDL=1IDL=1,则,则进入空闲运行模式进入空闲运行模式。1.1.空闲模式进入空闲模式进入 如如果果用用指指令令把把寄寄存存器器PCO
48、N中中的的IDL位位置置“1”,由由图图2-20可可见见,则则把把通通往往CPU的的时时钟钟信信号号关关断断,单单片片机机便便进进入入空空闲闲模模式式,虽虽然然振振荡荡器器仍仍然然运运行行,但但是是CPU进进入入空空闲闲状状态态。此此时时,片片内内所所有有外外围围电电路路(中中断断系系统统、串串行行口口和和定定时时器器)仍仍继继续续工工作作,SP、PC、PSW、A、P0P3端端口口等等所所有有其其他他寄寄存存器器,以以及及内内部部RAM和和SFR中中的的内内容容均均保保持持进进入入空空闲闲模模式式前前的的状状态态。因因为为CPU耗耗电电量量通通常常要要占占芯芯片片耗耗电电的的80%90%,因因
49、此此CPU停止工作则会大大降低功耗。停止工作则会大大降低功耗。2空闲模式的退出空闲模式的退出 系统进入空闲模式后有系统进入空闲模式后有两种方法可退出两种方法可退出,第一种第一种是中断是中断退出。由于在空闲模式下,中断系统还在工作,所以任何退出。由于在空闲模式下,中断系统还在工作,所以任何的中断请求被响应时,都可使的中断请求被响应时,都可使IDL位由片内硬件自动清位由片内硬件自动清“0”,从而退出空闲模式,进入中断服务程序。,从而退出空闲模式,进入中断服务程序。第二种第二种是是硬件复位退出。复位时,各个特殊功能寄存器都恢复默认硬件复位退出。复位时,各个特殊功能寄存器都恢复默认状态,特殊功能寄存器寄存器状态,特殊功能寄存器寄存器PCON也不例外,复位使也不例外,复位使IDL位清位清“0”,退出空闲模式,单片机将从头开始执行程序。,退出空闲模式,单片机将从头开始执行程序。本章小结1.1.单片机的硬件组成单片机的硬件组成2.2.单片机的引脚及结构单片机的引脚及结构3.3.存储空间存储空间4.4.时序的概念时序的概念5.5.时钟电路和复位电路时钟电路和复位电路本章小结本章作业:2.4.1、2.4.2、2.4.3、2.4.4本章小结