第二章 AT89S51单片机的硬件结构_第1页
第二章 AT89S51单片机的硬件结构_第2页
第二章 AT89S51单片机的硬件结构_第3页
第二章 AT89S51单片机的硬件结构_第4页
第二章 AT89S51单片机的硬件结构_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

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

文档简介

第二章AT89S51单片机的硬件结构2.1AT89S51单片机的硬件组成图2-1AT89S51单片机片内结构88微处理器(运算部件)控制部件看门狗定时器

数据存储器RAM(128B)P0口P2口程序存储器(4KB)P1口P3口串行口定时/计数器中断系统特殊功能寄存器(SFR)26个88ROM/EPROMVCCVSSXTAL1XTAL2PSENALEEARESET(1)CPU(微处理器)8位CPU,由运算器和控制器组成,还有面向控制的位处理功能。(2)数据存储器(RAM)

片内128B,片外最多可扩64KB。片内128B的RAM以高速RAM的形式集成,可加快单片机运行的速度和降低功耗。(3)程序存储器(FlashROM)

片内集成有4KB的Flash存储器,如片内容量不够,片外可外扩至64KB。(4)中断系统

具有6个中断源,2级中断优先权。(5)定时器/计数器2个16位定时器/计数器,4种工作方式。(6)1个看门狗定时器WDT

当CPU由于干扰使程序陷入死循环或跑飞时,WDT可使程序恢复正常运行。(7)串行口1个全双工的异步串行口,4种工作方式。可进行串行通信,扩展并行I/O口,还可与多个单片机构成多机系统。(8)P1口、P2口、P3口、P0口4个8位并行I/O口。(9)特殊功能寄存器(SFR)26个,对片内各功能部件管理、控制和监视。是各个功能部件控制寄存器和状态寄存器,映射在片内RAM区80H~FFH内。2.2AT89S51的引脚功能电源及时钟引脚:Vcc、Vss;XTAL1、XTAL2。控制引脚:、

、ALE、RESET(即RST)。I/O口引脚:P0、P1、P2、P3,为4个8位I/O口的外部引脚。电源引脚Vcc(40脚):接5V电源正端 Vss(20脚):接5V电源地端时钟引脚(1)XTAL1(19脚)(2)XTAL2(18脚)2.2.1电源及时钟引脚XTAL2XTAL1外部时钟2.2.2控制引脚RST(RESET,9脚)

复位信号输入,在引脚加上持续时间大于2个机器周期的高电平,可使单片机复位。正常工作,此脚电平应≤0.5V。当看门狗定时器溢出输出时,该脚将输出长达96个时钟振荡周期的高电平。(ProgramStrobeENable,29脚)

片外程序存储器读选通信号,低电平有效。读取外部ROM时,每个机器周期产生两次PSEN有效信号,执行片内ROM取指时,不产生PSEN信号

2.2.2控制引脚AT89S51锁存器74LS373P0.0-P0.7ALEPSENP2.0-P2.48D8QOEA8-A12A0-A7D0-D7GEAOECEEPROM2.2.2控制引脚/VPP(EnableAddress/VoltagePulseofPrograming,31脚)

:引脚第一功能:外部程序存储器访问允许控制端。

=1,在PC值不超出0FFFH(即不超出片内4KBFlash存储器的地址范围)时,单片机读片内程序存储器(4KB)中的程序,但PC值超出0FFFH

(即超出片内4KBFlash地址范围)时,将自动转向读取片外60KB(1000H-FFFFH)程序存储器空间中的程序。 =0,只读取外部的程序存储器中的内容,读取的地址范围为0000H~FFFFH,片内的4KBFlash程序存储器不起作用。VPP:引脚第二功能,对片内Flash编程,接编程电压。2.2.2控制引脚ALE/(AddressLatchEnable/PROGramming,30脚)ALE为CPU访问外部程序存储器或外部数据存储器提供地址锁存信号,当访问外部存储器时,ALE信号的负跳变将P0口上的低8位地址送入锁存器。

单片机正常运行时,ALE端一直有正脉冲信号输出,此频率为时钟振荡器频率fosc的1/6。可用作外部定时或触发信号。:第二功能,对片内

Flash编程,编程脉冲输入脚。P0口:8位,漏极开路的双向I/O口

当外扩存储器及I/O接口芯片时,P0口作为低8位地址总线及数据总线的分时复用端口。P0口也可用作通用的I/O口,需加上拉电阻,这时为准双向口。作为通用I/O输入,应先向端口写入1。可驱动8个LS型TTL负载。2.2.3并行I/O口引脚P1口:8位,准双向I/O口,具有内部上拉电阻。准双向I/O口,作为通用I/O输入时,应先向端口锁存器写1。P1口可驱动4个LS型TTL负载。P1.5/MOSI、P1.6/MISO和P1.7/SCK可用于对片内Flash存储器串行编程和校验,它们分别是串行数据输入、输出和移位脉冲引脚。2.2.3并行I/O口引脚P2口:8位,准双向I/O口,具有内部上拉电阻。

当AT89S51扩展外部存储器及I/O口时,P2口作为高8位地址总线用,输出高8位地址。P2口也可作为普通的I/O口使用。当作为通用I/O输入时,应先向端口输出锁存器写1。P2口可驱动4个LS型TTL负载。2.2.3并行I/O口引脚P3口:8位,准双向I/O口,具有内部上拉电阻。可作为通用的I/O口使用。作为通用I/O输入,应先向端口输出锁存器写入1。可驱动4个LS型TTL负载。P3口还可提供第二功能,应熟记。2.2.3并行I/O口引脚引脚第二功能P3.0RxD(ReceiveData):串行口接收数据输入端P3.1TxD(TransmitData):串行口发送数据输出端P3.2INT0*(External0Interrupt):外部中断申请输入端0P3.3INT1*(External1Interrupt):外部中断申请输入端1P3.4T0(clocksourcefortimer0):外部计数脉冲输入端0P3.5T1(clocksourcefortimer0):外部计数脉冲输入端1P3.6WR*(Write):写外设控制信号输出端P3.7RD*(Read):读外设控制信号输出端一个8位的CPU包括运算器、控制器及若干寄存器组成2.3AT89S51的CPU1、算术逻辑运算单元ALU算数和逻辑运算,可对8位变量进行操作加、减、乘、除、加1、减1、比较等算术运算与、或、异或、求补、循环等逻辑运算位处理器2、累加器AALU单元输入数据源之一,又是ALU运算结果存放单元。数据传送大多都通过累加器A,相当于数据中转站。为解决“瓶颈堵塞”问题,AT89S51增加了一部分可以不经过累加器的传送指令。2.3.1运算器3、PSW位于片内特殊功能寄存器区,字节地址为D0H2.3.1运算器D7HD6HD5HD4HD3HD2HD1HD0HCYACF0RS1RS0OV

P结构和定义如下:1、CY:进位标志。表示Acc.7有否向更高位进位。例:78H+97H(01111000+10010111)2、AC:辅助进位标志、半进位标志。表示Acc.3有否向Acc.4进位例:57H+3AH(01010111+00111010)3、F0:用户标志位,由编程人员编程决定。4、RS1、RS0:工作寄存器组选择位。RS1、RS0=00——0区(00H~07H)RS1、RS0=01——1区(08H~0FH)RS1、RS0=10——2区(10H~17H)RS1、RS0=11——3区(18H~1FH)5、0V:溢出标志位。表示Acc在有符号数算术运算中产生溢出。6、P:奇偶校验位:表示ALU运算结果中“1”的个数的奇偶性。若为

奇数,则P=1,若为偶数,则P=0。通信中有重要的意义。例:运算结果是78H(01111000),显然1个数为偶数,所以P=02.3.1运算器任务:

识别指令,并根据指令的性质控制单片机各功能部件,从而保证单片机各部分能自动协调地工作。控制器包括:

程序计数器、指令寄存器、指令译码器、定时及控制逻辑电路等。功能是控制指令的读入、译码和执行,从而对各功能部件进行定时和逻辑控制。2.3.2控制器程序计数器PC独立的16位计数器,不可访问。单片机复位时,PC中内容为0000H。PC工作过程是:CPU读指令时,PC的内容作为所取指令的地址,程序存储器按此地址输出指令字节,同时PC自动加1。PC中内容变化轨迹决定程序流程。当顺序执行程序时自动加1;执行转移程序或子程序、中断子程序调用时,自动将其内容更改成所要转移的目的地址。PC的计数宽度决定了程序存储器的地址范围。PC为16位,故可对64KB(=216B)寻址。2.3.2控制器存储器的结构特点之一是将程序存储器和数据存储器分开(哈佛结构),并有各自的访问指令。1.程序存储器空间2.数据存储器空间3.特殊功能寄存器SFR(SpecialFunctionRegister)4.位地址空间2.4AT89S51存储器的结构2.4.1程序存储器①程序计数器PCPC没有地址,用户不可访问,但可以通过指令改变其内容,实现程序的转移。②/EA引脚电平③程序运行的入口地址操作入口地址复位0000H外部中断/INT00003H定时/计数器0中断000BH外部中断/INT10013H定时/计数器1中断001BH串口中断0023H2.4.2数据存储器空间128B特殊功能寄存器区数据缓冲区位寻址区(128位)工作寄存器区FFH80H7FH30H2FH20H1FH00H128B80B16B32B片内RAM的结构0000HFFFFH64KB片外可扩展RAM区域2.4.2数据存储器空间D7HD6HD5HD4HD3HD2HD1HD0HCYACF0RS1RS0OV

P00H~1FH

的32个单元是4组通用工作寄存器区,每区包含8B,为R7~R0。通过指令改变RS1、RS0两位来选择FFH80H7FH30H2FH20H1FH00H特殊功能寄存器区数据缓冲区位寻址区(128位)工作寄存器区01234567012345670123456701234567012345670123456701234567012345670号寄存器组1号寄存器组2号寄存器组3号寄存器组1FH18H17H10H0FH08H07H00H07H06H05H04H03H02H01H00HR7R6R5R4R3R2R1R020H~2FH的16个单元的128位可位寻址,也可字节寻址。2.4.2数据存储器空间特殊功能寄存器区数据缓冲区位寻址区(128位)工作寄存器区FFH80H7FH30H2FH20H1FH00H单元地址位地址D7D6D5D4D3D2D1D02FH7F7E7D7C7B7A79782EH77767574737271702DH6F6E6D6C6B6A69682CH67666564636261602BH5F5E5D5C5B5A59582AH575655545352515029H4F4E4D4C4B4A494828H474645444342414027H3F3E3D3C3B3A393826H373635343332313025H2F2E2D2C2B2A292824H272625242322212023H1F1E1D1C1B1A191822H171615141312111021H0F0E0D0C0B0A090820H07060504030201001.作用:专用于控制、选择、管理、存放单片机内部各部分的工作方式、条件、状态、结果的寄存器.2.不同的SFR管理不同的硬件模块,负责不同的功能——各司其职,换言之:要让单片机实现预订的功能,必须有相应的硬件和软件,而软件中最重要的一项工作就是对SFR写命令(要求).2.4.3特殊功能寄存器特殊功能寄存器区数据缓冲区位寻址区(128位)工作寄存器区FFH80H7FH30H2FH20H1FH00H2.4.3特殊功能寄存器2.4.3特殊功能寄存器AT89S51有26个SFR1-4. P0:P0口锁存器(Latch)80h P1:P1口锁存器90h P2:P2口锁存器0A0h P3:P3口锁存器0B0h5.堆栈指针寄存器SP(StackPointer)81h

总是指向栈顶,压栈时:先(SP)+1,后数据进栈;

出栈时:数据先出栈,然后(SP)-1.2.4.3特殊功能寄存器在片内RAM中,常常要指定一个专门的区域来存放某些特别的数据,它遵循先进后出or后进先出(LIFO/FILO)-LastInFirstOut的,顺序存储原则,这个RAM区叫堆栈1.功用:1)在调用子程序和中断服务程序时CPU自动将当前PC

值压栈保存,返回时自动将PC值弹栈.2)保护现场/恢复现场(PUSH/POP)3)数据传输堆栈堆栈

由于进栈时SP的值增加,即堆栈向地址大的方向生长,并且栈顶是有效数据,这种堆栈是满递增型堆栈。

7B出栈后的状态A6、58、36出栈后的状态E7E7E6E6SPE5SPE5E37BE4E07BE4A6E3A6E358E258E236E136E121E021E07BA658366.累加器ACC(Accumulator)

0E0H

一个被众多指令用得最频繁的特殊功能寄存器(如:运算、数据传输…).7.寄存器B

0F0H一个经常与ACC配合在一起使用的特殊功能寄存器(如:乘法MULAB、除法DIVAB),此外,它也经常当作普通寄存器使用.

8.程序状态字寄存器PSW(ProgramStatusWord):CyACF0RS0OVPRS1PSW.7PSW.02.4.3特殊功能寄存器9-10.DPTR(DataPointer)

数据指针寄存器82H,83H

单片机内部唯一的一个可以供用户使用的16位寄存器(比较:PC16位不可寻址),用来存放16位地址值,以便用间接寻址或变址寻址片外存储器。MOVDPTR,#4000H DPTR可分成DPL(LOW)和DPH(HIGH)两个8位寄存器分别使用。11.IP(InterruptPriorities)——中断优先级控制寄存器12.IE(InterruptEnable)——中断允许控制寄存器2.4.3特殊功能寄存器13.TMOD(TimerModeRegister)——定时器/计数器方式控制寄存器14.TCON(TimerControlRegister)——定时器/计数器控制寄存器.15-16. TH0,TL0(Timer0Low/High)——定时器/计数器017-18. TH1,TL1(Timer1Low/High)——定时器/计数器119.SCON(SerialControlRegister)——串行端口控制寄存器20.SBUF(SerialBufferRegister)——串行数据缓冲器21.PCON(PowerControlRegister)——电源控制寄存器2.4.3特殊功能寄存器PC与SFR(SpecialFunctionRegister)特殊功能寄存器寄存器复位状态寄存器复位状态PC0000HTCON00HA00HT2CON00HB00HTH000HPSW00HTL000HSP07H(特殊,记忆)TH100HDPTR0000HTL100HP0~P3FFH(特殊,记忆)SCON00HIPXX000000BSBUFXXHIE0X000000BPCON0XXX0000BTMOD00H2.4.3特殊功能寄存器2.4.4位地址空间内部RAM的可寻址位128个(字节地址20H~2FH)2.4.4位地址空间特殊功能寄存器SFR为83个可寻址位AT89S51存储器空间2.5AT89S51的并行I/O口

4个双向的8位并行I/O端口(Port),记作P0~P3属于特殊功能寄存器,端口的每一位均由输出锁存器、输出驱动器和输入缓冲器组成。2.5.1P0口P0口:8位,漏极开路的双向I/O口

地址低8位,数据位,输入输出口2.5.2P1口P1口:8位,准双向I/O口,具有内部上拉电阻。

输入输出口2.5.3P2口P2口:8位,准双向I/O口,具有内部上拉电阻。

地址的高8位,输入输出口2.5.4P3口P3口:8位,准双向I/O口,具有内部上拉电阻。

输入输出口,第二功能2.6时钟电路与时序1、内部方式

(常用)2、外部方式(多用于多机同步)2.6.2电源及时钟引脚CPU总是按照一定的

温馨提示

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

评论

0/150

提交评论