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

付费下载

下载本文档

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

文档简介

第2章AT89S51单片机

硬件结构

AT89S51片内硬件基本结构、引脚功能、存储器结构、

特殊功能寄存器功能、4个并行I/O口的结构和特点,

复位电路和时钟电路的设计,节电工作模式。

为AT89s51系统的应用设计打下基础。

原理和结构上,单片机把微机的许多概念、技术与特点

都继承下来。用学习微机的思路来学习单片机。

2

单片机的硬件组成

•内结构如图2T所示。把作为控制应用所必需的基本功能部

件都集成在一个集成电路芯片上。

:1)8位微处理器(CPU);

:2)数据存储器(128BRAM);

:3)程序存储器(4KBFlashROM);

14)4个8位可编程并行I/O口(P0口、P1口、P2口、P3

I);

:5)1个全双工的异步串行口;

:6)2个可编程的16位定时器/计数器;

1r/

数据存储器

RAM

CPU特殊功能

(运算器)寄存器

(控制器)(SFR)

XTAL1-

XTAL2<口

AT89S51单片机片内结构

4

(7)1个看门狗定时器;

(8)中断系统具有5个中断源、5个中断向量;

(9)特殊功能寄存器(SFR)26个;

(10)低功耗模式有空闲模式和掉电模式,且具有掉电模

式下的中断恢复模式;

(11)3个程序加密锁定位;

AT89s51更突出的优点:

(1)增加在线可编程功能ISP(InSystemProgram),

字节和页编程,现场程序调试和修改更加方便灵活;

■数据指针增加到两个,方便了对片外RAM的访问过程;

(3)增加了看门狗定时器,提高了系统的抗干扰能力;

(4)增加法;

(5)增加下的;

•内的各功能部件通过片内单一总线连接而成(见图2-1),

依旧是CPU加上外围芯片的传统微机结构。

能部件的控制是采用特殊功能寄存器(SFR,

SpeciaIFunctionRegister)的集中控制方式。

■图2-1中片内各功能部件。

位的CPU,与通用CPU基本相同,包括了运算器和控制

两大部分,还有面向控制的位处理功能。

)

内为(上子;I为256B),片外最多可扩

4KBo,存储器(FlashROM)

M内集成有的Flash存储器(AT89s52则为8阳;

T89C55

片内20KB),如片内容量不够,片外可外扩至64KBo

中断源,2级中断优先权。

(5)

16位定时器/计数器(52子系列有3个),4种工作方式。

(6)1亨WDT

iCPU由于干扰使程序陷入死循环或跑飞时,WDT可使程序恢

复正常运行。

(7

■全双工的异步串行口,4种工作方式。可进行串行通信,

■展并行I/O口,还可与多个单片机构成多机系统。

(8)P1口、P2口和P3□

位并行I/OOo

(9)(SFR)

个,对片内各功能部件管理、控制和监视。是各个功能部件

,控制寄存器和状态寄存器,映射在片内RAM区80H-FFH内。

8

完全兼容AT89C51,在充分保留原来软、硬件条件下,

可以用AT89S51直接代换。

^»S51的引脚功能

先了解引脚,牢记各引脚的功能。

AT89s51与51系列中各种型号芯片的引脚互相兼容。目

采用引脚1列直插,如图2-2。此外,还有44引

的PLCC和TQFP封装方式的芯片。

引脚按其功能可分为如下3类:

■|电源及时钟引脚一Vcc、Vss;XTAL1vXTAL2o

***

,控制引脚一PSEN、ALE/PROG、EA/VPP、RST(RESET)

■♦0口引脚——POvP1、P2、P3,为4个8位I/O口

9

t及时钟引脚pi.o[T朝@

PI1[F39]P0,0

P1.2JF38]P0.1

P1.3|T豆|P0.2

Vcc(40脚):+5V电源。P1.4[T羽P0.3

MOSI/PI5匠互]P0.4

Vss(20脚):数字地。MISO/P1.6£34]P0,5

SCK/P1.7133]P0.6

RS1叵国P0.7

RXD/P3,0[TO到EA/PPP

AT89S5I

TXD/P3.1叵到ALE/PROG

1NT0/P3.2叵29|PSEN

1NT1/P3.3叵28]P2,7

10/P3.4叵27]P2,6

T1/P3.5叵26]P2,5

WR/P3.6叵25]P2,4

RD/P3,7叵24]P2,3

X1AL2回23]P2,2

XTAL1叵22]P2,1

fss(20为P2.0

图2-2AT89S51双歹U直插封装方式的弓I脚

10

2.冲引

19脚):片内振荡器反相放大器和时钟发生器

电路输入端。用片内振荡器时,该脚接外部石英晶体和微调

肿源时,该脚接外部时钟振荡器的信号。

(:3I®):片内振荡器反相放大器的输出端。当

吏用,该脚连接外部石英晶体和微调电容。当

使用外部时钟源时,本脚悬空。

2.2.

(^^KRESET,9脚)

位信号输入,在引脚加上持续时间大于2个机器周期的高电

,可使单片机复位。正常工作,此脚应W0.5Vo

门狗定时器溢出输出时,该脚将输出长达96个时钟振

的高电平。

;(EnabIeAddress/VoltagePulseof

Programing,31脚)

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

*

EA=1,在PC值不超出0FFFH(即不超出片内4KB

Flash存储器的地址范围)时,单片机读片内程序存储器

(4KB)中的程序,但PC值超出0FFFH(即超出片内

Flash地址范)时,将自动转向读取片外60KB

(1000H-FFFFH)程序存储器空间中的程序。

b*=o,双外部的程序存储器中的内容,读取的地

为0000H〜FFFFH,片内的4KBFlash程序存储器不

|引脚第二功能,对片内Flash编程,接编程电压。

■(AddressLatchEnabIe/PROGramming,

脚)

ALE为CPU访问外部程序存储器或外部数据存储器提供

1,将低8位地址锁存在片外的地址锁存器中。

13

外,单片机时,ALE端一直有正脉冲信号输出,

此频率为时钟振荡器频率Gc的1/6o可作外部定时或触

发信号用o

注,每当AT89s51访问外部RAM时(执行MOVX类指令),

要一个ALE脉冲。

需要,可将特殊功能寄存器AUXR(地址为8EH,将在后面

|介绍)的(ALE禁止位)置1,来禁止ALE操作,

但执行访问外部程序存储器或外部数据存储器指令"MOVC”

或“MOVX”时,ALE仍然有效。即ALE禁止位不影响对外

^^瓢器的访问。

PRO脚第二功能,对片内Flash编程,为编程脉冲输入

14

(ProgramStrobeENable,29脚)

片外程序存储器读选通信号,低有效。

亍I/O口引脚

■:8位,漏极开路的双向I/O口

I::,P0口作为低8位地址总线

数据总线的分时复用端口。

口也可,需加上拉电阻,这时为准双

o作为通用I/O输入,应先向端口写入1。可驱动8

个LS型TTL负载。

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

;隹双向I/O口,作为通用I/O输入时,应先向端口锁存器写

15

可驱动,LS型TTL负载。

P1.1.6/MIS0和P1.7/SCK

用于对片内Flash存储器串行编程和校验,它们分别是串行

数据输入、输出和移位脉冲引脚。

8位,准双向I/O口,具有内部上拉电阻。

M89S51扩展外部存储器及I/O口时,P2口作为高8位地址

用,输出高8位地址。

P2也可作为普通的I/O口使用。当作为通用I/O输入时,

应先向端口输出锁存器写1。P2口可驱动4个LS型TTL负

载.

(8位,«]I/O□,具有内部上拉电阻。

作为O作为通用I/O输入,应先向端

出锁存器写入1。可驱动4个LS型TTL负载。

口还可提供第二功能。第二功能定义如表2-1,应熟记。

表2-1P3口的第二功能定义

引脚第二功能说明

P3.0RXD串行数据输入口

P3.1TXD串行宾g输出口

P3.2INTO外部中断0输入

P3.3Em外部中断1输入

P3.4TO定时器0外部计数输入

P3.5T1定时器1外部计数输入

?3,6WR外部数免存储器写选通输出

?3.7RD外部数据存储器读选通输出

18

综上所述,可作为总线口,为双向口。作为通用的

口使用时,为准双向口,这时需加上拉电阻。P1口、

均为准双向口。

注意:双向口的差别。准双向口仅有两个状态C

3P0口作为总线使用,口线内无上拉电阻,处于高阻“悬浮'

故P0口为双向三态I/O口。

为什么P0口要有高阻“悬浮”态?

准双向I/O口则无高阻的“悬浮”状态。

另外,作通用I/O的输入口使用时,一定要向

。以上的准双向口与双向口的差别,读者

学习第4章后,将会有深刻的理解。

19

址匕,40只引脚已介绍,应熟记每一引脚功能,对应用系

件电路设计十分重要。

^WS51的CPU

目2-1可见,由运算器和控制器构成的。

t操作数进行算术、逻辑和位操作运算。主要包括算术逻辑

单元ALU、累加器A、位处理器、程序状态字寄存器PSW

个暂存器等.

辑运算单元ALU

量(与、或、异或、循环、求补和清零)

(加、减、乘、除)

20

,U还有位操作功能,对位变量进行位处理,如置“1”、

清“0”、求补、测试转移及逻辑“与”、“或”等。

2.

艮加器A是CPU中使用最频繁的一个8位寄存器,在使用汇

|编语言编程时,有些场合必须写为Acco

.如下:

(1)ALU单元的输入数据源之一,又是ALU运算结果存放单

I(2)数据传送大多都通过累加器A,相当于数据的中转站。

为解决“瓶颈堵塞”问题,AT89S51增加了一部分可以不

经过累加器的传送指令。

21

进位标志是特殊的,因为它同时又是位处理机的位

(ProgramStatusWord)位于片内特殊功能寄存器区,

含了事运行状态的信息,其中4位保存当前指令执行

后的状态,供程序查询和判断。格式如图2-3o

D7D6D5D4D3D2DIDO

PSWCyAcFORSIRSOOV—PDOH

图2-3PSW的格式

PSW中各,

JW.7)进位标志位

可写为C。在算术和逻辑运算时,若有进位/借位,Cy=

否则,。在位处理器中,它是位累加器。

^■(PSW.6)辅助进位标志位

在BCD码运算时,用作十进位调整。即当D3位向D4位

生进位或借位时,Ac=1;否则,Ac=0o

^H(PSW.5)用户设定标志位

由用户使用的一个状态标志位,可用指令来使它置“1”

▲:清“0,控制程序的流向。用户应充分利用。

23

3Q(PSW.4、PSW.3)4组工作寄存器区选择

选择片内RAM区中的4组工作寄存器区中的某一组为当

前工作寄存区。如表2-2。

2)溢出标志位

当执行算术指令时,用来指示运算结果是否产生溢出。

如果结果产生溢出,0V=1;否则,0V=0。

保留位

P(PSW.0)奇偶标志位

指令执行完,累加器A中“1”的个数是奇数还是偶数。

24

P=1表示A中“1”的个数为奇数。

P=0,表示A中“1”的个数为偶数。

此标志位对串行通信有重要的意义,常用奇偶检验

,方法来检验数据串行传输的可靠性。

表2・2RS1、RSO与4组工作寄存器区的对应关系

RSIRSO所选的4组寄存器

0区(内部RAM地址00H〜

0007H)

-------------1区(内部RAM地址08H〜

010FH)

-------------2区(内部RArM-地址

1017H)

3区(内部RAM地址18H〜

4~1~--------------------------

识别指令,并根据指令的性质控制单片机各功能部件,

保证单片机各部分能自动协调地工作。

制器包括:程序计数器、指令寄存器、指令译码器、定

控制逻辑电路等。功能是控制指令的读入、译码和执行,

对各功能部件进行定时和逻辑控制O

■序计数器PC是一个独立的16位计数器,不可访问。单

,复位时,PC中的内容为0000H,从程序存储器0000H单

,旨令,开始执行程序。

f工作过程是:CPU读指令时,PC的内容作为所取指令

址,程序存储器按此地址输出指令字节,同时PC自动加

a

决定程序流程。当顺序执行程序时自

动加1;执行转移程序或子程序、中断子程序调用时,

自动将其内容更改成所要转移的目的地址。

■数宽度决定了程序存储器的地址范围。PC为16

位,故可对64KB(=216B)寻址。

■期51存储器的结构

2.

E储器结构特点之一是将程序存储器和数据存储器分开

■哈佛结构),并有各自的访问指令。

:储器空间可分为4类。

27

1.

:内和片外两部分。

:内程序存储器为4KB的FIash存储器,编程和擦除全是电

i实现,且速度快。可用通用编程器编程,也可在线编程。

I片内的4KB的Flash存储器不够用时,用户可在片外可

扩展程序存储器,最多可扩展至64KB程序存储器。。

2.

...与片外两部分。

有128BRAM(52子系列为256B)。

片内RAM不够用时,在片外可扩展至64KBRAM。

28

FR(SpecialFunctionRegister)

各功能部件的控制寄存器及状态寄存器。SFR综合反映

整个单片机基本系统内部实际的工作状态及工作方式。

2♦个可寻址位,构成了位地址空间。它们位于内部

,(共128位)和特殊功能寄存器区(共83位)中。

存储器空间

程序和表格之类的固定常数。片内为4KB的Flash,地

:为0000H〜0FFFH。16位地址线,可外扩的程序存储器空

I最大为64KB,地址为0000H〜FFFFH。使用应注意以下问

磔片内片外,访问片内的还是片外的程

*

F存储器,由EA引脚电平确定。

时,CPU从片内0000H开始取指令,当PC值没有超出

OFFFH时,只访问片内FIash存储器,当PC值超出OFFFH

自动转向读片外程序存储器空间1000H〜FFFFH内的程序。

时,只能执行片外程序存储器(OOOOH-FFFFH)中

的程序。不理会片内4KBFlash存储器。

工固定单元用于各中断源中断服务程

入口。

30

KB程序存储器空间中有5个特殊单元分别对应于5个中断

的中断入口地址,见表2-3。

常这A中断入口地址处都放一条跳转指令跳向对应

中断服务子程序,而不是直接存放中断服务子程序。

表”33个中断源的中断入口地址

中断源入口地址

外部中断00003H

定时器T0OOOBH

外部中断10013H

定时器T1001BH

串行口0023H

2.据存储器空间

;内与片外两部分。

1

内数据存储器(RAM)共128个单元,字节地址为00H-

7FHo图2-4为片内数据存储器的结构。

7FH

用户RAMIX

(堆栈、数据缓冲区)

30H

2FII

1可位寻址区

2011

1FH

1第3组工作寄存器区

18H

17H

第2组工作寄存器区

1011

01'H

♦第1组工作寄存器区

0811

0711

1笫0组工作寄存器区

00H

图2-4AT89S51片内RAM结构

32

OOH〜1的是4组通用工作寄存器区,每区包含

为R7〜R0。可通过指令改变RS1、RSO两位来选择。

20H〜:的单元的128位可位寻址,也可字节寻址。

30H~|的单元只能字节寻址,用作存数据以及作为堆栈区。

2.片,

128B的RAM不够用时,需外扩,最多可外扩64KB的

■意,片内RAM与片外RAM两个空间是相互独立的,

BRAM的低128B的地址是相同的,但由于使

的是不同的访问指令,所以不会发生冲突。

33

能寄存器(SFR)

牌存器集中控制各功能部件。特殊功能寄存器映

|)H~FFH区域中,共26个。表2-4是

SFR的名称及其分布。有些还可位寻址,位地址见表2-4。

相比,新增5个SFR:DP1L、DP1H、AUXR、AUXR1和

,已在表2-4中标出。

T位寻址的SFR,字节地址末位只能是0H或8H。另

外,若读/写未定义单元,将得到一个不确定的随机数。

:面某些介绍SFR,余下的SFR将在后面介绍。

表2-4SER的名称及其分布

特殊功能字节

序号名称位地址复位值

寄存器符号地址

1P。ponSOHS7H〜80HFFH

2SP堆栈指针S1H—07H

3DP0L数据指针DPIK0低字节S2H—00H

4DP0H数据指针DPIR。高字节S3H—00H

5DP1L数据指针DPTRlf氐字节S4H—00H

1

6DP1H数据指针DPTK1高字节S5H—00H

17PCON电源控制寄存器S7H—OXXXOOOOB

8TCON定时器计数器控制恰存器S8HSFH-SSH00H

9IMOD定时器计数器方式控制S9H—00H

10TL0定时器计数器。(低字节)8AH—00H

11TL1定时器计数器1(低字节)8BH—00H

12TH0定时器计数器0(高字节)SCH—00H

35

13TH1定时器计数器1(高字节)8DH—OOH

14AUXR辅助寄存器8EH—XXXQOXXQB

15PlP1U寄仔器90H97H〜90HFFH

16SCON串行控制寄存器98H9FH-98HOOH

17SBUF串行发送数据缓冲器99H—XXXXXXXXB

18P2P2U寄仔器A0HA7H〜AOHFFH

19AUXR1辅助寄存器A2H—XXXXXXXOB

20WDTRJST看门狗艮位寄存器A6H—XXXXXXXXB

21IE中断允许控制寄存器ASHAFH-ASHOXXOOOOOB

22P3P3口寄仔器BOH57H〜BOHFFH

23IP中断优先级控制寄存器BSHBFH〜BSHXX00OOOOB

24PSV/程序状态字寄存器DOHD7H〜DOHOOH

25A(或Acc)累加器EOHE7H〜EOHOOH

26BB寄仔器FOHF7H〜FOHOOH

1

2

示堆栈顶部在内部RAM块中的位置。

栈结构一向上生长型。单片机复位后,SP为07H,使得堆

栈实际上从08H单元开始,由于08H-1FH单元分别是属

于1〜3组的工作寄存器区,最好在复位后把SP值改置

大的值,避免堆栈与工作寄存器冲突。

1是为2序调用和中断操作而设。保护断点和现场

K无论是子程序调用操作还是中断服务子

程序调用,最终都要返回主程序。应预先把主程序的断

点在堆栈中保护起来,为程序正确返回做准备。

37

执行子程序或中断服务子程序时,要用到一

:寄存器单元,会破坏原有内容。要把有关寄存器单元的内

保存起来,送入堆栈,这就是所谓的“现场保护”。

中操作:堆栈,数据弹出(POP)堆栈。

压入堆栈,SP自动加1;数据弹出堆栈,SP自动减1o

2.

执行乘法和除法而设。在不执行乘、除法操作的情况下,

可把它当作一个普通寄存器来使用。

38

两乘数分别在A、B中执行乘法指令后,乘积在BA

,被除数取自A,除数取自B,商存放在A中,余数存

AUXR是辅助寄存器其格式如图2-5:

D7D6D5D4D3D2DIDO

AUXR———YDIDLEDISRTO——DISALE8EH

图2-5AUXR寄存器的格式

39

中:

的禁止/允许位。

ALE有效,发出脉冲;

ALE仅在执行MOVC和MOVX类指令时有效,不访问

外部存储器时,ALE不输出脉冲信号;DISRTO:禁止/允许

时的复位输出。

WDT溢出时,在RST引脚输出一个高电平脉冲;

RST引脚仅为输入脚。

WDT在空闲模式下的禁止/允许位。

WDT在空闲模式下继续计数;

WDT在空闲模式下暂停计数。。

40

DPTRO和DPTR1

【数据指针寄存器,便于访问数据存储器。

DP,AT89C51单片机原有的数据指针,

的数据指针。

AI用于选择两个数据指针。当DPSR时,

选用DPTRO;当时,选用DPTR1。

可作为一个16位寄存器来用,也可作为两个独立

的8位寄存器DPOH(或DP1H)和DPOL(或DP1L)来用。

IAUXR1是辅助寄存

.格式如n2-6:

数据指针寄存器选择位。0:

选择数据指针寄存器DPTR0;

选择数据指针寄存器DPTR1o

D7D6D51)4D3D2DIDO

AUXR1----DPSA2H

图2-6AUXR1寄存器的格式

42

6.t器WDT

含1个14位计数器和看门狗定时器复位寄存器(WDTRST)o

用于当CPU由于干扰,程序陷入死循环或跑飞状态时,WDT

提供了一种使程序恢复正常运行的有效手段。

导关WDT在抗干扰设计中的应用以及低功耗模式下运行的状态,

将在相应的章节中具体介绍。

二面介绍的特殊功能寄存器,除了前两个SP和B以外,其

余的均为AT89S51在AT89C51基础上新增加的SFR。

43

2.

1个寻址位的位地址,位地址范围为00H〜FFH,其中

〜7FH这128位处于片内RAM字节地址20H〜2FH单

,中,如表2-5所示。其余的83个可寻址位分布在特殊

中,如表2-6。

交位寻址的特殊寄存器有11个,共有位地址88个,5个

位未用,其余83个位的位地址离散地分布于片内数据存

ft器区字节地址为80H〜FFH的范围内,其最低的位地址

,且其字节地址的末位都为0H或8H。

44

表2-5AT89s51片内RAM的可寻珏位及其位地址

字节位地址

地址D7D6D5D4D3D2DIDO

2FH7FH7EH7DH7CH7BH7AH79H78H

2EH77H76H75H74H73H72H71H70H

2DH6FH6EH6DH6CH6BH6AH69H68H

2CH67H66H65H64H63H62H61H60H

2BH5FH5EH5DH5CH5BH5AH59H58H

2AH57H56H55H54H53H52H51H50H

29H4FH4EH4DH4CH4BH4AH49H48H

28H47H46H45H44H43H42H41H40H

27H3FH3EH3DH3CH3BH3AH39H38H

26H37H36H35H34H33H32H31H30H

25H2FH2EH2DH2CH2BH2AH29H28H

24H27H26H25H24H23H22H21H20H

23H1FH1EH1DH1CH1BH1AH19H18H

表2-6SFR中的位地址分布

特殊功位地址字节

■能

地址

寄存器D7D6D5D4D3D2D1DO

BF7HF6HF5HF4HF3HF2HF1HF0HF0H

AccE7HE6HE5HE4HE3HE2HE1HE0HE0H

PSWD7HD6HD5HD4HD3HD2HD1HDOHD0H

IP——————BCHBBHBAHB9HB8HB8H

P3B7HB6HB5HB4HB3HB2HB1HBOHB0H

IEAFH———ACHABHAAHA9HA8HA8H

P2A7HA6HA5HA4HA3HA2HA1HAOHA0H

SCON9FH9EH9DH9CH9BH9AH99H98H98H

Pl97H96H95H94H93H92H91H90H90H

TCON8FH8EH8DH8CH8BH8AH89H88H88H

PO87H86H85H84H83H82H81H80H80H

46

作为对AT89S51存储器结构的总结,图2-7为各类存

清楚看出各类存储器在存储器空间的位置。

FFFFHFFHFFFFH

SFR

外部80H

ROM7FH

RAM

30H

1000H外部

2FH

位寻址区RAM

20H

1FH

oFFFH

OFFFH内部nw工作

ROMROM寄存器区

0~3组

EA=0

EA=1OOOOHI

00001100H()000H

片内ROM外部ROM片内RAM外部RAM

程序存储器区数据存储器区

图2-7AT89S51单片机的存储器结构

47

的并行I/O端口

■双向的8位并行I/O端口,分别记为PO、P1、P2和P3,

中属于特殊功能寄存器。端口的每一位均由

出锁存器、输出驱动器和输入缓冲器组成,4个端口按字

外,也可位寻址。

字节地址为80H,位地址为80H〜87H。P0口可作为双功

口:在外扩程序存储器、数据存储器(或外扩I/O)情况

,只能作为系统的低8位地址/数据总线端口来使用,否

"可作为通用I/O端口使用。

48

具有如下特点。

*当P0口用作地址/数据复用口时,是一个真正的双向口,

■乍与外部存储器的连接,输出低8位地址和输出/输入8

:数据。

)当P0口用作通用I/O口时,由于需在片外接上拉电阻,

百,不存在高阻抗(悬浮)状态,因此是一准双向口。为

正确读入引脚信号,应首先向锁存器写1o单片机复位

锁存器自动被置1;当P0口由原来的输出状态转变为

1-,入状态时,应首先向锁存器写1,方可执行输入操作。

般情况下,P0口大多作为地址/数据复用口使用,这时就

E能再作为通用I/O口使用。

49

功能的I/O口,字节地址为90H,位地址为90H〜97H。

点如下。

1)P1口由于有内部上拉电阻,没有高阻抗输入状态,故

为准双向口。作为输出口时,不需要在片外接上拉电阻。

2)P1口“读引脚”输入时,必须先向P1口锁存器先写入

O

3

,一个双功能口,字节地址为AOH,位地址为AOH〜A7H。P2□

某一位的位电路结构如图4-3所示。在片外扩有存储器或

I/O的情况下,P2口大多作为高8位地址总线口使用,这时

就不能再作为通用I/O口。

争点如下:

:1)作为地址输出线使用时,P2口可输出外部存储器的高8

位地址,与P0口输出的低8位一起构成16位地址,可寻

址64KB的地址空间。当P2口作为高8位地址输出口时,

输出锁存器的内容保持不变。

:2)作通用I/O口使用时,P2口为准双向口,功能与P1口一

AT89S51的引脚数目有限,因此在P3口电路中增加了引

P的第二功能。P3口的第二功能定义如表2-7所示,读者

熟记。

的每一位都可定义为第二输入功能或第二输出功能。P3

I的字节地址为BOH,位地址为BOH〜B7H。

I的特点如下:

P3口内部有上拉电阻,不存在高阻抗输入状态,为准

!向口。

P3口作为第二功能的输出/输入,或第一功能通用输入,

;要先将相应位的锁存器置1。

52

表2TP3□的第二功能定义

引脚第二功能说明

P3.0RXD串行数据输入口

P3.1TXD串行数据输出口

P3.2INTO外部中断0输入

P3.3rm外部中断1输入

P3.4TO定时器0外部计数输入

P3.5T1定E寸器1外部计数输入

P3.6WR外部数据存储器写选通输出

P3.7KD外部数裾存储器读选通输出

际应用中,由于复位后P3口锁存器自动置1,满足第二

功能所需的条件,所以不需要任何设置工作,就可以进

入第二功能操作。

某位不作为第二功能使用时,可作为第一功能通用I/O

使用。

钟电路产生AT89s51工作时所必需的控制信号,在时钟

信号的控制下,严格按时序执行指令。

行指令时,CPU首先到程序存储器中取出需要执行的指令

操作码,然后译码,并由时序电路产生一系列控制信号

完成指令所规定的操作。

U发的寸序信号两类,一类用对片内各个功能部件控制,

用户无须了解;另一类用于对片外存储器或I/O端口的

,这部分时序对于分析、设计硬件接口电路至关重要。

2.6.I电路设计

时,H直接影响单片机的速度,时钟电路的质量也直接影

向单片机系统的稳定性。常用的时钟电路有两种方式,

种是方式,另一种是外部时钟方式。

1.停式

AT89S51内部有一个用于构成振荡器的高增益反相放

I输入端为芯片引脚XTAL1,输出端为引脚XTAL2。

这两个引脚跨接石英晶体振荡器和微调电容,构成一个稳

定的自激振荡器,图2-8是AT89s51内部时钟方式的电路。

56

AT89S51

XTAL1

C.

30pF

JL11.0592Hz

l=i=J晶振

C2

30pF

XTAL2

至内部时钟电路

图2・8内部时钟方式电路

中的电容C1和C2的典型值通常选择为30pFo晶体

振荡频率的范通常是在1.2-12MHz。AT89S51单片机

常选择振荡频率6MHz或12MHz的石英晶体。

58

用现成的外部振荡器产生脉冲信号,常用于多片AT89s51同

卜作.以便于多片AT89s51单片机之间的同步。

屋直接接到XTAL1端,XTAL2端悬空,见图2-9。

AT89S51

外部振荡器XTAL1

信号

悬空---------XTAL2

1GND

I2-9AT89S51的外部时钟方式电路

59

rifl

3.

■用片内振荡器,XTAL1vXTAL2引脚还能为应用系统中

■其他芯片提供时钟,但需增加驱动能力。其引出的方

式有两种,如图2-10。

60

AT89S5I

期、指令周期与指令时序

种指令时序与时钟周期相关。

寸钟控制信号的基本时间单位。若晶振频率为fosc,则时

钟周期7QSC~1//osco如/osc~6MHzj7QSC-166.7nso

CPU完成一个基本操作所需时间为机器周期。执行一条指

分为几个机器周期。每个机器周期完成一个基本操作,如

」指令、读或写数据等。每

温馨提示

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

评论

0/150

提交评论