版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1第2章 AT89S51单片机 硬件构造2 第第2章章 目录目录2.1 AT89S51单片机的硬件组成单片机的硬件组成2.2 AT89S51的引脚功能的引脚功能 2.2.1 电源及时钟引脚电源及时钟引脚 2.2.2 控制引脚控制引脚 2.2.3 并行并行I/O口引脚口引脚2.3 AT89S51的的CPU 2.3.1 运算器运算器 2.3.2 控制器控制器 2.4 AT89S51存储器的构造存储器的构造 2.4.1 程序存储器空间程序存储器空间 2.4.2 数据存储器空间 2.4.3 特殊功能存放器SFR 2.4.4 位地址空间2.5 AT89S51的并行I/O端口 2.5.1 P0口 2.5.
2、2 P1口 2.5.3 P2口 2.5.4 P3口 2.5.5 P1P3口驱动LED发光二极管2.6 时钟电路与时序时钟电路与时序 2.6.1 时钟电路设计时钟电路设计 2.6.2 机器周期、指令周期与指令时序机器周期、指令周期与指令时序2.7 复位操作和复位电路复位操作和复位电路 2.7.1 复位操作复位操作 2.7.2 复位电路设计复位电路设计2.8 低功耗节电方式低功耗节电方式 2.8.1 空闲方式空闲方式 2.8.2 掉电运转方式掉电运转方式 2.8.3 掉电和空闲方式下的掉电和空闲方式下的WDTnAT89S51AT89S51的片内硬件根本构造、引脚功能、存储器构造、的片内硬件根本构造
3、、引脚功能、存储器构造、特殊功能存放器功能、特殊功能存放器功能、4 4个并行个并行I/OI/O口的构造和特点,口的构造和特点,n复位电路和时钟电路的设计复位电路和时钟电路的设计, ,节电任务方式。节电任务方式。n目的:本章学习,为目的:本章学习,为AT89S51AT89S51系统的运用设计打下根底。系统的运用设计打下根底。n在原理和构造上,单片机把微机的许多概念、技术与特点在原理和构造上,单片机把微机的许多概念、技术与特点都承继下来。用学习微机的思绪来学习单片机。都承继下来。用学习微机的思绪来学习单片机。内容概要内容概要62.1 AT89S512.1 AT89S51单片机的硬件组成单片机的硬件
4、组成片内硬件组成构造如图片内硬件组成构造如图2-12-1所示。把作为控制运用所必需的根所示。把作为控制运用所必需的根本功能部件都集成在一个尺寸有限的集成电路芯片上。本功能部件都集成在一个尺寸有限的集成电路芯片上。有如下功能部件和特性:有如下功能部件和特性:1 18 8位微处置器位微处置器CPUCPU;2 2数据存储器数据存储器128B RAM128B RAM;3 3程序存储器程序存储器4KB Flash ROM4KB Flash ROM;4 44 4个个8 8位可编程并行位可编程并行I/OI/O口口P0P0口、口、P1P1口、口、P2P2口、口、P3P3口;口;5 51 1个全双工的异步串行口
5、;个全双工的异步串行口;6 62 2个可编程的个可编程的1616位定时器位定时器/ /计数器;计数器;7图图2-1 AT89S512-1 AT89S51单片机片内构造单片机片内构造87 71 1个看门狗定时器;个看门狗定时器;8 8中断系统具有中断系统具有5 5个中断源、个中断源、5 5个中断向量;个中断向量;9 9特殊功能存放器特殊功能存放器SFRSFR2626个;个;1010低功耗方式有空闲方式和掉电方式,且具有掉电方式低功耗方式有空闲方式和掉电方式,且具有掉电方式 下的中断恢复方式;下的中断恢复方式;11113 3个程序加密锁定位。个程序加密锁定位。与与AT89C51AT89C51相比,
6、相比,AT89S51AT89S51有更突出的优点:有更突出的优点:1 1添加在线可编程功能添加在线可编程功能ISPISPIn System ProgramIn System Program,字,字节和页编程,现场程序调试和修正更加方便灵敏;节和页编程,现场程序调试和修正更加方便灵敏;2 2数据指针添加到两个,方便了对片外数据指针添加到两个,方便了对片外RAMRAM的访问过程;的访问过程;3 3添加了看门狗定时器,提高了系统的抗干扰才干;添加了看门狗定时器,提高了系统的抗干扰才干;4添加断电标志;5添加掉电形状下的中断恢复方式。片内各功能部件经过片内单一总线衔接而成见图2-1,根本构造照旧是CP
7、U 加上外围芯片的传统微机构造。CPU对各种功能部件的控制是采用特殊功能存放器SFR,Special Function Register的集中控制方式。下面引见图2-1中片内各功能部件。1CPU微处置器 8位的CPU,与通用CPU根本一样,同样包括了运算器和控制器两大部分,还有面向控制的位处置功能。92 2数据存储器数据存储器RAMRAM片内为片内为128B128B5252子系列为子系列为256B256B,片外最多可扩,片外最多可扩64KB64KB。片内。片内128B128B的的RAMRAM以高速以高速RAMRAM的方式集成,可加快单片机运转的速的方式集成,可加快单片机运转的速度和降低功耗。度
8、和降低功耗。3 3程序存储器程序存储器Flash ROMFlash ROM片内集成有片内集成有4KB4KB的的FlashFlash存储器存储器AT89S52 AT89S52 那么为那么为8KB8KB;AT89C55AT89C55片内片内20KB20KB,如片内容量不够,片外可外扩至,如片内容量不够,片外可外扩至64KB64KB。4 4中断系统中断系统具有具有6 6个中断源,个中断源,2 2级中断优先权。级中断优先权。5 5定时器定时器/ /计数器计数器2 2个个1616位定时器位定时器/ /计数器计数器5252子系列有子系列有3 3个,个,4 4种任务方式。种任务方式。106 61 1个看门狗
9、定时器个看门狗定时器WDTWDT当当CPUCPU由于干扰使程序堕入死循环或跑飞时,由于干扰使程序堕入死循环或跑飞时,WDTWDT可使程序恢可使程序恢复正常运转。复正常运转。7 7串行口串行口1 1个全双工的异步串行口,个全双工的异步串行口,4 4种任务方式。可进展串行通讯,种任务方式。可进展串行通讯,扩展并行扩展并行I/OI/O口,还可与多个单片机构成多机系统。口,还可与多个单片机构成多机系统。8 8P1P1口、口、P2P2口、口、P3P3口、口、P0P0口口4 4个个8 8位并行位并行I/OI/O口。口。9 9特殊功能存放器特殊功能存放器SFRSFR2626个,对片内各功能部件管理、控制和监
10、视。是各个功能部个,对片内各功能部件管理、控制和监视。是各个功能部件的控制存放器和形状存放器,映射在片内件的控制存放器和形状存放器,映射在片内RAMRAM区区80H80HFFHFFH内。内。11AT89S51完全兼容AT89C51,在充分保管原来软、硬件条件下,完全可以用AT89S51直接代换。2.2 AT89S51的引脚功能先了解引脚,牢记各引脚的功能。AT89S51与51系列中各种型号芯片的引脚相互兼容。目前多采用40只引脚双列直插,如图2-2所示。引脚按其功能可分为如下3类:1电源及时钟引脚VCC、VSS;XTAL1、XTAL2。2控制引脚 、ALE/ 、 /VPP、RSTRESET3I
11、/O口引脚P0、P1、P2、P3,为4个8位I/O口12EAEAEAPSENPROG2.2.1 2.2.1 电源及时钟引脚电源及时钟引脚1 1电源引脚电源引脚1 1VCCVCC4040脚:脚:+5V+5V电源。电源。2 2VSSVSS2020脚:数字地。脚:数字地。13图图2-2 AT89S51双列直插封装方式的引脚双列直插封装方式的引脚2 2时钟引脚时钟引脚 1 1XTAL1XTAL11919脚:片内振荡器反相放大器和时钟发生器电脚:片内振荡器反相放大器和时钟发生器电路输入端。用片内振荡器时,该脚接外部石英晶体和微调电路输入端。用片内振荡器时,该脚接外部石英晶体和微调电容。外接时钟源时,该脚
12、接外部时钟振荡器的信号。容。外接时钟源时,该脚接外部时钟振荡器的信号。2 2XTAL2XTAL21818脚:片内振荡器反相放大器的输出端。当运脚:片内振荡器反相放大器的输出端。当运用片内振荡器,该脚衔接外部石英晶体和微调电容。当运用用片内振荡器,该脚衔接外部石英晶体和微调电容。当运用外部时钟源时,本脚悬空。外部时钟源时,本脚悬空。2.2.2 2.2.2 控制引脚控制引脚1 1RST (RESETRST (RESET,9 9脚脚) )复位信号输入,在引脚加上继续时间大于复位信号输入,在引脚加上继续时间大于2 2个机器周期的高电个机器周期的高电平,可使单片机复位。正常任务,此脚电平应平,可使单片机
13、复位。正常任务,此脚电平应 0.5V 0.5V。14当看门狗定时器溢出输出时,该脚将输出长达当看门狗定时器溢出输出时,该脚将输出长达9696个时钟振荡个时钟振荡周期的高电平。周期的高电平。2 2 /VPP (Enable Address/Voltage Pulse of /VPP (Enable Address/Voltage Pulse of ProgramingPrograming,3131脚脚) ) :引脚第一功能:外部程序存储器访问允许控制端。:引脚第一功能:外部程序存储器访问允许控制端。=1=1,在,在PCPC值不超出值不超出0FFFH0FFFH即不超出片内即不超出片内4KB Fla
14、sh4KB Flash存存储器的地址范围时,单片机读片内程序存储器储器的地址范围时,单片机读片内程序存储器4KB4KB中的程序,但中的程序,但PCPC值超出值超出0FFFH 0FFFH 即超出片内即超出片内4KB Flash4KB Flash地地址范围时,将自动转向读取片外址范围时,将自动转向读取片外60KB60KB1000H-FFFFH1000H-FFFFH程序存储器空间中的程序。程序存储器空间中的程序。EAEAEA =0 =0,只读取外部的程序存储器中的内容,读取的,只读取外部的程序存储器中的内容,读取的地址范围为地址范围为0000H0000HFFFFHFFFFH,片内的,片内的4KB F
15、lash 4KB Flash 程序存储器程序存储器不起作用。不起作用。 VPP VPP:引脚第二功能,对片内:引脚第二功能,对片内FlashFlash编程,接编程电压编程,接编程电压。3 3ALE/ ALE/ Address Latch Enable/PROGrammingAddress Latch Enable/PROGramming,3030脚脚ALEALE为为CPUCPU访问外部程序存储器或外部数据存储器提供访问外部程序存储器或外部数据存储器提供地址锁存信号,将低地址锁存信号,将低8 8位地址锁存在片外的地址锁存器中位地址锁存在片外的地址锁存器中。16EAPROG此外,单片机正常运转时,
16、此外,单片机正常运转时,ALEALE端不断有正脉冲信号输出,端不断有正脉冲信号输出,此频率为时钟振荡器频率此频率为时钟振荡器频率foscfosc的的1/61/6。可用作外部定时或。可用作外部定时或触发信号。触发信号。留意,每当留意,每当AT89S51AT89S51访问外部访问外部RAMRAM时执行时执行MOVXMOVX类指令,要类指令,要丧失一个丧失一个ALEALE脉冲。脉冲。如需求,可将特殊功能存放器如需求,可将特殊功能存放器AUXRAUXR地址为地址为8EH8EH,将在后面,将在后面引见的第引见的第0 0位位ALEALE制止位置制止位置1 1,来制止,来制止ALEALE操作,但执操作,但执
17、行访问外部程序存储器或外部数据存储器指令行访问外部程序存储器或外部数据存储器指令“MOVCMOVC或或“MOVXMOVX时,时,ALEALE依然有效。即依然有效。即ALEALE制止位不影响对外部存制止位不影响对外部存储器的访问。储器的访问。 :引脚第二功能,对片内:引脚第二功能,对片内 Flash Flash编程,为编程脉冲输编程,为编程脉冲输入入 脚。脚。17PROG4 4 Program Strobe ENableProgram Strobe ENable,2929脚脚 片外程序存储器读选通讯号,低电平有效。片外程序存储器读选通讯号,低电平有效。2.2.3 2.2.3 并行并行I/OI/O
18、口引脚口引脚1 1P0P0口:口:8 8位,漏极开路的双向位,漏极开路的双向I/OI/O口口当外扩存储器及当外扩存储器及I/OI/O接口芯片时,接口芯片时,P0P0口作为低口作为低8 8位地址总线及位地址总线及数据总线的分时复用端口。数据总线的分时复用端口。P0P0口也可用作通用的口也可用作通用的I/OI/O口,需加上拉电阻,这时为准双向口,需加上拉电阻,这时为准双向口。作为通用口。作为通用I/OI/O输入,应先向端口写入输入,应先向端口写入1 1。可驱动。可驱动8 8个个LSLS型型TTLTTL负载。负载。2 2P1P1口:口:8 8位,准双向位,准双向I/OI/O口,具有内部上拉电阻。口,
19、具有内部上拉电阻。准双向准双向I/OI/O口,作为通用口,作为通用I/OI/O输入时,应先向端口锁存器写输入时,应先向端口锁存器写1 1。18PSENP1口可驱动4个LS型TTL负载。P1.5/MOSI、P1.6/MISO和P1.7/SCK可用于对片内Flash存储器串行编程和校验,它们分别是串行数据输入、输出和移位脉冲引脚。3P2口:8位,准双向I/O口,具有内部上拉电阻。当AT89S51扩展外部存储器及I/O口时,P2口作为高8位地址总线用,输出高8位地址。P2P2口也可作为普通的口也可作为普通的I/OI/O口运用。当作为通用口运用。当作为通用I/OI/O输入时,输入时, 应先向端口输出锁
20、存器写应先向端口输出锁存器写1 1。P2P2口可驱动口可驱动4 4个个LSLS型型TTLTTL负载。负载。4 4P3P3口:口:8 8位,准双向位,准双向I/OI/O口,具有内部上拉电阻。口,具有内部上拉电阻。可作为通用的可作为通用的I/OI/O口运用。作为通用口运用。作为通用I/OI/O输入,应先向端输入,应先向端口输出锁存器写入口输出锁存器写入1 1。可驱动。可驱动4 4个个LSLS型型TTLTTL负载。负载。P3P3口还可提供第二功能。第二功能定义见表口还可提供第二功能。第二功能定义见表2-12-1,应熟,应熟记。记。2021INT0INT1WRRD综上所述,综上所述,P0P0口可作为总
21、线口,为双向口。作为通用的口可作为总线口,为双向口。作为通用的I/OI/O口运用时,为准双向口,这时需加上拉电阻。口运用时,为准双向口,这时需加上拉电阻。P1P1口、口、P2P2口、口、P3P3口均为准双向口。口均为准双向口。留意:准双向口与双向口的差别。准双向口仅有两个形状留意:准双向口与双向口的差别。准双向口仅有两个形状。而。而P0P0口作为总线运用,口线内无上拉电阻,处于高阻口作为总线运用,口线内无上拉电阻,处于高阻“悬浮悬浮态。故态。故P0P0口为双向三态口为双向三态I/OI/O口。口。为什么为什么P0P0口要有高阻口要有高阻“悬浮态?悬浮态?准双向准双向I/OI/O口那么无高阻的口那
22、么无高阻的“悬浮形状。悬浮形状。另外,准双向口作通用另外,准双向口作通用I/OI/O的输入口运用时,一定要向该口的输入口运用时,一定要向该口先写入先写入“1 1。以上的准双向口与双向口的差别,读者在阅读。以上的准双向口与双向口的差别,读者在阅读2.52.5节后,将会有深化的了解。节后,将会有深化的了解。22至此,至此,4040个引脚已引见完,应熟记每一引脚功能对运用系统硬个引脚已引见完,应熟记每一引脚功能对运用系统硬件电路设计非常重要。件电路设计非常重要。2.3 AT89S512.3 AT89S51的的CPUCPU由图由图2-12-1可见,可见,CPUCPU由运算器和控制器构成。由运算器和控制
23、器构成。2.3.1 2.3.1 运算器运算器对操作数进展算术、逻辑和位操作运算。主要包括算术逻辑运对操作数进展算术、逻辑和位操作运算。主要包括算术逻辑运算单元算单元ALUALU、累加器、累加器A A、位处置器、程序形状字存放器、位处置器、程序形状字存放器PSWPSW及两个及两个暂存器等。暂存器等。1 1算术逻辑运算单元算术逻辑运算单元ALUALU可对可对8 8位变量逻辑运算与、或、异或、循环、求补和清零位变量逻辑运算与、或、异或、循环、求补和清零,还可算术运算加、减、乘、除,还可算术运算加、减、乘、除23ALUALU还有位操作功能,对位变量进展位处置,如置还有位操作功能,对位变量进展位处置,如
24、置“1“1、清清“0“0、求补、测试转移及逻辑、求补、测试转移及逻辑“与、与、“或等。或等。2 2累加器累加器A A运用最频繁的存放器,可写为运用最频繁的存放器,可写为AccAcc。“A“A与与“Acc“Acc 书写书写上的差别,将在第上的差别,将在第3 3章引见。章引见。作用如下:作用如下:1 1ALUALU单元的输入数据源之一,又是单元的输入数据源之一,又是ALUALU运算结果存放运算结果存放单元。单元。2 2数据传送大多都经过累加器数据传送大多都经过累加器A A,相当于数据的中转站,相当于数据的中转站。为处理。为处理“瓶颈堵塞问题,瓶颈堵塞问题,AT89S51AT89S51添加了一部分可
25、添加了一部分可以不经过累加器的传送指令。以不经过累加器的传送指令。24A A的进位标志的进位标志CyCy是特殊的,由于它同时又是位处置机的位累是特殊的,由于它同时又是位处置机的位累加器加器3 3程序形状字存放器程序形状字存放器PSWPSWPSWPSWProgram Status WordProgram Status Word位于片内特殊功能存放器区,位于片内特殊功能存放器区,字节地址为字节地址为D0HD0H。包含了程序运转形状的信息,其中包含了程序运转形状的信息,其中4 4位保管当前指令执行后位保管当前指令执行后的形状,供程序查询和判别。格式如图的形状,供程序查询和判别。格式如图2-32-3所
26、示。所示。 图图2-3 PSW2-3 PSW的格式的格式25PSWPSW中各个位的功能:中各个位的功能:1 1CyCyPSW.7PSW.7进位标志位进位标志位 可写为可写为C C。在算术和逻辑运算时,假设有进位。在算术和逻辑运算时,假设有进位/ /借位,借位,CyCy1 1;否那么,;否那么,CyCy0 0。在位处置器中,它是位累加器。在位处置器中,它是位累加器。2 2AcAcPSW.6PSW.6辅助进位标志位辅助进位标志位 在在BCDBCD码运算时,用作十进位调整。即当码运算时,用作十进位调整。即当D3D3位向位向D4D4位位产生进位或借位时,产生进位或借位时,AcAc1 1;否那么,;否那
27、么,AcAc0 0。3 3F0F0PSW.5PSW.5用户设定标志位用户设定标志位 由用户运用的一个形状标志位,可用指令来使它置由用户运用的一个形状标志位,可用指令来使它置1 1或清或清0 0,控制程序的流向。用户应充分利用。,控制程序的流向。用户应充分利用。264 4RS1RS1、RS0RS0PSW.4PSW.4、PSW.3PSW.34 4组任务存放器区选择组任务存放器区选择选择片内选择片内RAMRAM区中的区中的4 4组任务存放器区中的某一组为当前任组任务存放器区中的某一组为当前任务存放区见表务存放区见表2-22-2。5 5OVOVPSW.2PSW.2溢出标志位溢出标志位当执行算术指令时,
28、用来指示运算结果能否产生溢出。假当执行算术指令时,用来指示运算结果能否产生溢出。假设结果产生溢出,设结果产生溢出,OV=1OV=1;否那么,;否那么,OV=0OV=0。6 6PSW.1PSW.1位位 保管位保管位7 7P PPSW.0PSW.0奇偶标志位奇偶标志位指令执行完,累加器指令执行完,累加器A A中中“1 1的个数是奇数还是偶数。的个数是奇数还是偶数。27P=1P=1,表示,表示A A中中“1“1的个数为奇数。的个数为奇数。P=0P=0,表示,表示A A中中“1“1的个数为偶数。的个数为偶数。此标志位对串行通讯有重要的意义,常用奇偶检验的此标志位对串行通讯有重要的意义,常用奇偶检验的方
29、法来检验数据串行传输的可靠性。方法来检验数据串行传输的可靠性。28292.3.2 2.3.2 控制器控制器 义务识别指令,并根据指令的性质控制单片机各功能部件,从而义务识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动协调地任务。保证单片机各部分能自动协调地任务。 控制器包括:程序计数器、指令存放器、指令译码器、定时及控控制器包括:程序计数器、指令存放器、指令译码器、定时及控制逻辑电路等。功能是控制指令的读入、译码和执行,从而对各制逻辑电路等。功能是控制指令的读入、译码和执行,从而对各功能部件进展定时和逻辑控制。功能部件进展定时和逻辑控制。 程序计数器程序计数器PCPC
30、是一个独立的是一个独立的1616位计数器,不可访问。单片机复位位计数器,不可访问。单片机复位时,时,PCPC中内容为中内容为0000H0000H,从程序存储器,从程序存储器0000H0000H单元取指令,开场执单元取指令,开场执行程序。行程序。 PC PC任务过程是:任务过程是:CPUCPU读指令时,读指令时,PCPC的内容作为所取指令的地址,的内容作为所取指令的地址,程序存储器按此地址输出指令字节,同时程序存储器按此地址输出指令字节,同时PCPC自动加自动加1 1。 PC PC中内容变化轨迹决议程序流程。当顺序执行程序时自动中内容变化轨迹决议程序流程。当顺序执行程序时自动加加1 1;执行转移
31、程序或子程序、中断子程序调用时,自动;执行转移程序或子程序、中断子程序调用时,自动将其内容更改成所要转移的目的地址。将其内容更改成所要转移的目的地址。 PC PC的计数宽度决议了程序存储器的地址范围。的计数宽度决议了程序存储器的地址范围。PCPC为为1616位,位,故可对故可对64KB64KB=216B=216B寻址。寻址。2.4 AT89S512.4 AT89S51存储器的构造存储器的构造存储器的构造特点之一是将程序存储器和数据存储器分开存储器的构造特点之一是将程序存储器和数据存储器分开哈佛构造,并有各自的访问指令。哈佛构造,并有各自的访问指令。存储器空间可分为存储器空间可分为4 4类。类。
32、30. .程序存储器空间程序存储器空间片内和片外两部分。片内和片外两部分。片内片内4KB Flash 4KB Flash ,编程和擦除完全是电气实现。可用通用编,编程和擦除完全是电气实现。可用通用编程器对其编程,也可在线编程。程器对其编程,也可在线编程。当片内当片内4KB Flash 4KB Flash 存储器不够用时,可片外扩展,最多可扩存储器不够用时,可片外扩展,最多可扩展至展至64KB64KB程序存储器。程序存储器。. .数据存储器空间数据存储器空间片内与片外两部分。片内与片外两部分。片内有片内有128 B RAM128 B RAM5252子系列为子系列为256B256B。片内片内RAM
33、 RAM 不够用时,在片外可扩展至不够用时,在片外可扩展至64KB RAM 64KB RAM 。31. .特殊功能存放器特殊功能存放器SFR SFR Special Function RegisterSpecial Function Register片内各功能部件的控制存放器及形状存放器。片内各功能部件的控制存放器及形状存放器。SFRSFR综合反映了综合反映了整个单片机根本系统内部实践的任务形状及任务方式。整个单片机根本系统内部实践的任务形状及任务方式。. .位地址空间位地址空间共有共有211211个可寻址位,构成了位地址空间。它们位于内部个可寻址位,构成了位地址空间。它们位于内部 RAM R
34、AM共共128128位和特殊功能存放器区共位和特殊功能存放器区共8383位中。位中。2.4.1 2.4.1 程序存储器空间程序存储器空间存放程序和表格之类的固定常数。片内为存放程序和表格之类的固定常数。片内为4KB4KB的的 Flash Flash ,地址,地址为为0000H0000H0FFFH0FFFH。1616位地址线,可外扩的程序存储器空间最位地址线,可外扩的程序存储器空间最大为大为64KB64KB,地址为,地址为0000H0000HFFFFHFFFFH。运用时应留意以下问题:。运用时应留意以下问题:321 1分为片内和片外两部分,访问片内的还是片外的程序分为片内和片外两部分,访问片内的
35、还是片外的程序存储器,由存储器,由 引脚电平确定。引脚电平确定。 =1 =1时,时,CPUCPU从片内从片内0000H0000H开场取指令,当开场取指令,当PCPC值没有超出值没有超出0FFFH0FFFH时,只访问片内时,只访问片内Flash Flash 存储器,当存储器,当PCPC值超出值超出0FFFH0FFFH自自动转向读片外程序存储器空间动转向读片外程序存储器空间1000H1000HFFFFH FFFFH 内的程序。内的程序。 =0 =0时,只能执行片外程序存储器时,只能执行片外程序存储器0000H0000HFFFFHFFFFH中的中的程序。不理睬片内程序。不理睬片内4KB Flash
36、4KB Flash 存储器。存储器。2 2程序存储器某些固定单元用于各中断源中断效力程序程序存储器某些固定单元用于各中断源中断效力程序入口。入口。33EAEAEA3464KB64KB程序存储器空间中有程序存储器空间中有5 5个特殊单元分别对应于个特殊单元分别对应于5 5个中断源个中断源 的中断入口地址,见表的中断入口地址,见表2-32-3。通常这通常这5 5个中断入口地址处都放一条跳转指令跳向对应的个中断入口地址处都放一条跳转指令跳向对应的 中断效力子程序,而不是直接存放中断效力子程序。中断效力子程序,而不是直接存放中断效力子程序。2.4.2 2.4.2 数据存储器空间数据存储器空间 片内与片
37、外两部分。片内与片外两部分。. .片内数据存储器片内数据存储器 片内数据存储器片内数据存储器RAMRAM共共128128个单元,字节地址为个单元,字节地址为00H00H7FH7FH。图。图2-42-4为片内数据存储器的构造。为片内数据存储器的构造。35图图2-4 AT89S512-4 AT89S51片内片内RAMRAM构造构造00H00H1FH 1FH 的的3232个单元是个单元是4 4组通用任务存放器区,每区包含组通用任务存放器区,每区包含8B8B,为为R7R7R0R0。可经过指令改动。可经过指令改动RS1RS1、RS0RS0两位来选择。两位来选择。20H20H2FH2FH的的1616个单元
38、的个单元的128128位可位寻址,也可字节寻址。位可位寻址,也可字节寻址。30H30H7FH7FH的单元只能字节寻址,用作存数据以及作为堆栈区。的单元只能字节寻址,用作存数据以及作为堆栈区。. .片外数据存储器片外数据存储器当片内当片内128B128B的的RAMRAM不够用时,需外扩,最多可外扩不够用时,需外扩,最多可外扩64KB64KB的的RAMRAM。留意,片内留意,片内RAMRAM与片外与片外RAMRAM两个空间是相互独立的,片内两个空间是相互独立的,片内RAMRAM与片外与片外RAMRAM的低的低128B128B的地址是一样的,但由于运用的是不同的地址是一样的,但由于运用的是不同的访问
39、指令,所以不会发生冲突。的访问指令,所以不会发生冲突。362.4.3 2.4.3 特殊功能存放器特殊功能存放器SFRSFR采用特殊功能存放器集中控制各功能部件。特殊功能存放器采用特殊功能存放器集中控制各功能部件。特殊功能存放器映射在片内映射在片内RAMRAM的的 80H 80HFFH FFH 区域中,共区域中,共2626个。表个。表2-4 SFR2-4 SFR的称号及其分布。有些还可位寻址,位地址见表的称号及其分布。有些还可位寻址,位地址见表2-42-4。与与AT89C51AT89C51相比,新增相比,新增5 5个个SFRSFR:DP1LDP1L、DP1HDP1H、AUXRAUXR、AUXR1
40、AUXR1和和WDTRSTWDTRST,已在表,已在表2-42-4中标出。中标出。凡是可位寻址的凡是可位寻址的SFRSFR,字节地址末位只能是,字节地址末位只能是0H0H或或8H8H。另外,。另外,假设读假设读/ /写未定义单元,将得到一个不确定的随机数。写未定义单元,将得到一个不确定的随机数。下面引见某些下面引见某些SFRSFR,余下的,余下的SFRSFR将在后面引见。将在后面引见。37381 1堆栈指针堆栈指针SPSP指示堆栈顶部在内部指示堆栈顶部在内部RAMRAM块中的位置。块中的位置。堆栈构造堆栈构造向上生长型。单片机复位后,向上生长型。单片机复位后,SPSP为为07H07H,使得堆,
41、使得堆栈实践上从栈实践上从08H08H单元开场,由于单元开场,由于08H08H1FH1FH单元分别是属于单元分别是属于1 13 3组的任务存放器区,最好在复位后把组的任务存放器区,最好在复位后把SPSP值改置为值改置为60H60H或或更大的值,防止堆栈与任务存放器冲突。更大的值,防止堆栈与任务存放器冲突。堆栈是为子程序调用和中断操作而设,主要用来维护断点和堆栈是为子程序调用和中断操作而设,主要用来维护断点和现场。现场。1 1维护断点。无论是子程序调用操作还是中断效力子程维护断点。无论是子程序调用操作还是中断效力子程序调用,最终都要前往主程序。应预先把主程序的断点在序调用,最终都要前往主程序。应
42、预先把主程序的断点在堆栈中维护起来,为程序正确前往做预备。堆栈中维护起来,为程序正确前往做预备。402 2现场维护。执行子程序或中断效力子程序时,要用到一现场维护。执行子程序或中断效力子程序时,要用到一些存放器单元,会破坏原有内容。要把有关存放器单元的内些存放器单元,会破坏原有内容。要把有关存放器单元的内容保管起来,送入堆栈,这就是所谓的容保管起来,送入堆栈,这就是所谓的“现场维护。现场维护。两种操作:数据压入两种操作:数据压入PUSHPUSH堆栈,数据弹出堆栈,数据弹出POPPOP堆栈。堆栈。数据压入堆栈,数据压入堆栈,SPSP自动加自动加1 1;数据弹出堆栈,;数据弹出堆栈,SPSP自动减
43、自动减1 1。2 2存放器存放器B B为执行乘法和除法而设。在不执行乘、除法操作的情况下,可为执行乘法和除法而设。在不执行乘、除法操作的情况下,可把它当作一个普通存放器来运用。把它当作一个普通存放器来运用。4142乘法,两乘数分别在乘法,两乘数分别在A A、B B中,执行乘法指令后,乘积在中,执行乘法指令后,乘积在BABA中中除法,被除数取自除法,被除数取自A A,除数取自,除数取自B B,商存放在,商存放在A A中,余数存中,余数存B B中。中。3 3AUXRAUXR存放器存放器 AUXR AUXR是辅助存放器,其格式如图是辅助存放器,其格式如图2-52-5所示:所示:图图2-5 AUXR2
44、-5 AUXR存放器的格式存放器的格式43其中其中: :DISALEDISALE:ALEALE的制止的制止/ /允许位。允许位。0 0:ALEALE有效,发出脉冲;有效,发出脉冲; 1 1:ALEALE仅在执行仅在执行MOVCMOVC和和MOVXMOVX类指令时有效,不访问外部类指令时有效,不访问外部存储器时,存储器时,ALEALE不输出脉冲信号。不输出脉冲信号。DISRTODISRTO:制止:制止/ /允许允许WDTWDT溢出时的复位输出。溢出时的复位输出。0 0:WDTWDT溢出时,在溢出时,在RSTRST引脚输出一个高电平脉冲;引脚输出一个高电平脉冲;1 1:RSTRST引脚仅为输入脚。
45、引脚仅为输入脚。WDIDLEWDIDLE:WDTWDT在空闲方式下的制止在空闲方式下的制止/ /允许位。允许位。 0 0: WDT WDT在空闲方式下继续计数;在空闲方式下继续计数; 1 1: WDT WDT在空闲方式下暂停计数。在空闲方式下暂停计数。444. 4. 数据指针数据指针DPTR0DPTR0和和DPTR1DPTR1双数据指针存放器,便于访问数据存储器。双数据指针存放器,便于访问数据存储器。DPTR0DPTR0:AT89C51AT89C51单片机原有的数据指针;单片机原有的数据指针;DPTR1DPTR1:新添加的数据指针。:新添加的数据指针。AUXR1AUXR1的的DPSDPS位用于
46、选择两个数据指针。当位用于选择两个数据指针。当DPS=0DPS=0时,选用时,选用DPTR0DPTR0;当;当DPS=1DPS=1时,选用时,选用DPTR1DPTR1。数据指针可作为一个数据指针可作为一个1616位存放器来用,也可作为两个独立的位存放器来用,也可作为两个独立的8 8位存放器位存放器DP0HDP0H或或DP1HDP1H和和DP0LDP0L或或DP1LDP1L来用。来用。455. AUXR15. AUXR1存放器存放器AUXR1AUXR1是辅助存放器,格式如图是辅助存放器,格式如图2-62-6所示:所示: DPS DPS:数据指针存放器选择位。:数据指针存放器选择位。0 0:选择数
47、据指针存放器:选择数据指针存放器DPTR0DPTR0;1 1:选择数据指针存放器:选择数据指针存放器DPTR1DPTR1。图图2-6 AUXR12-6 AUXR1存放器的格式存放器的格式6. 6. 看门狗定时器看门狗定时器WDTWDTWDTWDT包含一个包含一个1414位计数器和看门狗定时器复位存放器位计数器和看门狗定时器复位存放器 WDTRSTWDTRST。当当CPUCPU由于干扰,程序堕入死循环或跑飞形状时,由于干扰,程序堕入死循环或跑飞形状时,WDTWDT提供了一种提供了一种使程序恢复正常运转的有效手段。使程序恢复正常运转的有效手段。有关有关WDTWDT在抗干扰设计中的运用以及低功耗方式
48、下运转的形状,在抗干扰设计中的运用以及低功耗方式下运转的形状,将在相应的章节中详细引见。将在相应的章节中详细引见。上面引见的特殊功能存放器,除了前两个上面引见的特殊功能存放器,除了前两个SPSP和和B B以外,其他的均以外,其他的均为为AT89S51AT89S51在在AT89C51AT89C51根底上新添加的根底上新添加的SFRSFR。462.4.4 2.4.4 位地址空间位地址空间211211个寻址位的位地址,位地址范围为个寻址位的位地址,位地址范围为 00H 00HFFHFFH,其中,其中 00H 00H7FH 7FH 这这128128位处于片内位处于片内RAM RAM 字节地址字节地址
49、20H 20H2FH 2FH 单元中,如单元中,如表表2-52-5所示。其他的所示。其他的8383个可寻址位分布在特殊功能存放器个可寻址位分布在特殊功能存放器SFRSFR中,见表中,见表2-62-6。可被位寻址的特殊存放器有可被位寻址的特殊存放器有1111个,共有位地址个,共有位地址8888个,个,5 5个位未个位未用,其他用,其他8383个位的位地址离散地分布于片内数据存储器区字个位的位地址离散地分布于片内数据存储器区字节地址为节地址为80H80HFFHFFH的范围内,其最低的位地址等于其字节地的范围内,其最低的位地址等于其字节地址,且其字节地址的末位都为址,且其字节地址的末位都为0H0H或
50、或8H8H。4749特殊功能寄存器位 地 址字 节地 址D7D6D5D4D3D2D1D0BF7HF6HF5HF4HF3HF2HF1HF0HF0HAccE7HE6HE5HE4HE3HE2HE1HE0HE0HPSWD7HD6HD5HD4HD3HD2HD1HD0HD0HIPBCHBBHBAHB9HB8HB8HP3B7HB6HB5HB4HB3HB2HB1HB0HB0HIEAFHACHABHAAHA9HA8HA8HP2A7HA6HA5HA4HA3HA2HA1HA0HA0HSCON9FH9EH9DH9CH9BH9AH99H98H98HP197H96H95H94H93H92H91H90H90HTCON8FH
51、8EH8DH8CH8BH8AH89H88H88HP087H86H85H84H83H82H81H80H80H表2-6 SFR中的位地址分布 作为对作为对AT89S51AT89S51存储器构造的总结,图存储器构造的总结,图2-72-7为各类存储为各类存储器的构造图。从图中可清楚看出各类存储器在存储器空间器的构造图。从图中可清楚看出各类存储器在存储器空间的位置。的位置。50图图2-7 AT89S512-7 AT89S51单片机的存储器构造单片机的存储器构造2.5 AT89S512.5 AT89S51的并行的并行I/OI/O端口端口4 4个双向的个双向的8 8位并行位并行I/OI/O端口,分别记为端口
52、,分别记为P0P0、P1P1、P2P2和和P3P3,其中,其中输出锁存器属于特殊功能存放器。端口的每一位均由输出锁输出锁存器属于特殊功能存放器。端口的每一位均由输出锁存器、输出驱动器和输入缓冲器组成,存器、输出驱动器和输入缓冲器组成,4 4个端口按字节输入个端口按字节输入/ /输出外,也可位寻址。输出外,也可位寻址。2.5.1 P02.5.1 P0口口P0P0口是一个双功能的口是一个双功能的8 8位并行端口,字节地址为位并行端口,字节地址为80H80H,位地址为,位地址为80H80H87H87H。端口的各位具有完全一样但又相互独立的电路构。端口的各位具有完全一样但又相互独立的电路构造,造,P0
53、P0口某一位的位电路构造如图口某一位的位电路构造如图2-82-8所示。所示。5152图图2-8 P02-8 P0口某一位的位电路构造口某一位的位电路构造1 1位电路构造位电路构造 P0 P0口某一位的电路包括:口某一位的电路包括:1 1一个数据输出的锁存器,用于数据位的锁存。一个数据输出的锁存器,用于数据位的锁存。2 2两个三态的数据输入缓冲器,分别是用于读锁存器数两个三态的数据输入缓冲器,分别是用于读锁存器数据的输入缓冲器据的输入缓冲器BUF1BUF1和读引脚数据的输入缓冲器和读引脚数据的输入缓冲器BUF2BUF2。3 3一个多路转接开关一个多路转接开关MUXMUX,它的一个输入来自锁存器的
54、,它的一个输入来自锁存器的 端,另一个输入为地址端,另一个输入为地址/ /数据信号的反相输出。数据信号的反相输出。MUXMUX由由“控控制信号控制,实现锁存器的输出和地址制信号控制,实现锁存器的输出和地址/ /数据信号之间数据信号之间的转接。的转接。4 4数据输出的控制和驱动电路,由两个场效应管数据输出的控制和驱动电路,由两个场效应管FETFET组成。组成。532 2任务过程分析任务过程分析1 1P0P0口用作地址口用作地址/ /数据总线数据总线外扩存储器或外扩存储器或I/OI/O时,时,P0P0口作为单片机系统复用的地址口作为单片机系统复用的地址/ /数据数据总线运用。总线运用。当作为地址或
55、数据输出时,当作为地址或数据输出时,“控制信号为控制信号为1 1,硬件自动使转,硬件自动使转接开关接开关MUXMUX打向上面,接通反相器的输出,同时使与门处于打向上面,接通反相器的输出,同时使与门处于开启形状。开启形状。当输出的地址当输出的地址/ /数据信息为数据信息为1 1时,与门输出为时,与门输出为1 1,上方的场效应,上方的场效应管导通,下方的场效应管截止,管导通,下方的场效应管截止,P0.xP0.x引脚输出为引脚输出为1 1;当输出;当输出的地址的地址/ /数据信息为数据信息为0 0时,上方的场效应管截止,下方的场时,上方的场效应管截止,下方的场效应管导通,效应管导通,P0.xP0.x
56、引脚输出为引脚输出为0 0。54输出电路是上、下两个场效应管构成的推拉式构造,大大提高了输出电路是上、下两个场效应管构成的推拉式构造,大大提高了负载才干,上方的场效应管这时起到内部上拉电阻的作用。负载才干,上方的场效应管这时起到内部上拉电阻的作用。当当P0P0口作为数据输入时,仅从外部存储器或口作为数据输入时,仅从外部存储器或I/OI/O读入信息,读入信息,对应的对应的“控制信号为控制信号为0 0,MUXMUX接通锁存器的接通锁存器的 端。端。由于由于P0P0口作为地址口作为地址/ /数据复用方式访问外部存储器时,数据复用方式访问外部存储器时,CPUCPU自动向自动向P0P0口写入口写入FFH
57、FFH,使下方场效应管截止,上方场效应管由于控制,使下方场效应管截止,上方场效应管由于控制信号为信号为0 0也截止,从而保证数据信息的高阻抗输入,从外部存也截止,从而保证数据信息的高阻抗输入,从外部存储器输入的数据信息直接由储器输入的数据信息直接由P0.xP0.x引脚经过输入缓冲器引脚经过输入缓冲器BUF2BUF2进进入内部总线。入内部总线。Q具有高阻抗输入的具有高阻抗输入的I/OI/O口应具有高电平、低电平和高阻抗口应具有高电平、低电平和高阻抗3 3种形种形状的端口。因此,状的端口。因此,P0P0口作为地址口作为地址/ /数据总线运用时是一个真数据总线运用时是一个真正的双向端口,简称双向口。
58、正的双向端口,简称双向口。 2 2P0P0口用作通用口用作通用I/OI/O口口当当P0P0口不作为系统的地址口不作为系统的地址/ /数据总线运用时,此时数据总线运用时,此时P0P0口也可作口也可作为通用的为通用的I/OI/O口运用。口运用。作通用的作通用的I/OI/O口时,对应的口时,对应的“控制信号为控制信号为0 0,MUXMUX打向下面,接打向下面,接通锁存器的通锁存器的 端,端,“与门输出为与门输出为0 0,上方场效应管截止,上方场效应管截止,构成的构成的P0P0口输出电路为漏极开路输出。口输出电路为漏极开路输出。P0P0口作输出口时,来自口作输出口时,来自CPUCPU的的“写脉冲加在写
59、脉冲加在D D锁存器的锁存器的CPCP端,端,内部总线上的数据写入内部总线上的数据写入D D锁存器,并由引脚锁存器,并由引脚P0.xP0.x输出。输出。56Q当当D D锁存器为锁存器为1 1时,时, 端为端为0 0,下方场效应管截止,输出为漏极开路,下方场效应管截止,输出为漏极开路,此时,必需外接上拉电阻才干有高电平输出;当,此时,必需外接上拉电阻才干有高电平输出;当D D锁存器为锁存器为0 0时,下方场效应管导通,时,下方场效应管导通,P0P0口输出为低电平。口输出为低电平。P0P0口作输入口运用时,有两种读入方式:口作输入口运用时,有两种读入方式:“读锁存器和读锁存器和“读引脚读引脚。当当
60、CPUCPU发出发出“读锁存器指令时,锁存器的形状由读锁存器指令时,锁存器的形状由Q Q端经上方的三端经上方的三态缓冲器态缓冲器BUF1BUF1进入内部总线;进入内部总线;当当CPUCPU发出发出“读引脚指令时,锁存器的输出形状读引脚指令时,锁存器的输出形状=1=1即即 端为端为0 0,而使下方场效应管截止,引脚的形状经下方的三态缓冲,而使下方场效应管截止,引脚的形状经下方的三态缓冲器器BUF2BUF2进入内部总线。进入内部总线。57QQ3 3P0P0口的特点口的特点P0P0口为双功能口口为双功能口地址地址/ /数据复用口和通用数据复用口和通用I/OI/O口。口。1 1当当P0P0口用作地址口
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 加盟餐饮合同范例
- 陕西艺术职业学院《汽车设计》2023-2024学年第一学期期末试卷
- 村里房子租赁合同范例
- 陕西铁路工程职业技术学院《数学建模综合实践》2023-2024学年第一学期期末试卷
- 2024年知识产权许可使用合同标的专利技术实施及收益分配
- 建筑用工个人合同范例
- 英国合同范例
- 民间金融居间合同范例
- 景观用水合同范例
- 四年级数学(四则混合运算)计算题专项练习与答案汇编
- 2023年度省综合专家库评标专家继续教育培训考试试题(三套)
- 试验检测单位安全培训课件
- 二年级下册加减混合竖式练习360题附答案
- 公路沥青路面设计标准规范
- 2024年湖北交投智能检测股份有限公司招聘笔试参考题库含答案解析
- 2023年银行安全保卫知识考试题库(含答案)
- 水库白蚁防治标书
- 广东省深圳市宝安、罗湖、福田、龙华四区2023-2024学年数学九年级第一学期期末联考试题含解析
- 电子电路EWB仿真技术
- 初中九年级化学课件化学实验过滤
- 教学课件:《新时代新征程》
评论
0/150
提交评论