第1章 89S52单片机概述

合集下载

AT89S52单片机的基本结构.

AT89S52单片机的基本结构.
PSW是8位寄存器,用于作为程序运 行状态的标志。这是一个很重要的部件, 里面存放了CPU工作时的很多状态,借 此,我们可以了解CPU的当前状态,并 作出相应的处理。
2019/8/9
6
当CPU进行各种逻辑操作或算术运算时,为反映操 作或运算结果的状态,把相应的标志位置1或清0。这 些标志的状态,可由专门的指令来测试,也可通过指 令来读出。它为计算机确定程序的下一步进行方向提 供依据。PSW寄存器中各位的名称及位置如上所示,下 面说明各标志位的作用。
各种I/O 定时器/计数器
2019/8/9
2
AT89S52单片机组成框图
P0.0~P0.7
P2.0~P2.7
VCC (+5V)
GND
RAM地址 锁存器
RAM
通道0驱动器
通道0锁 存器
通道2驱动器
通道2锁 存器
Flash 程序地址寄存器
PSEN ALE
RST
B寄存器 ACC TMP2
TMP1
堆栈指针SP
如何进行复位呢?只要在单片机的RST引脚上 加上高电平,就可以了。为了达到这个要求,可以 用很多种方法,见图。
2019/8/9
19
复位后,PC指向0000H,使单片机从起始地址0000H 开始执行程序。
复位电路
+5V C
RST 9
R
89S52
上电复位电路
2019/8/9
20
二、复位后单片机的状态
定时 指 指 和 令令
控制 寄 译 逻辑 存 码
器器
ALU PSW
PCON SCON TMOD TCON
TH0 TL0 TH1 TL1
SBUF(TX/RX) IE

单片机AT89S52介绍

单片机AT89S52介绍

AT89S52简介AT89S52是一个8位单片机,片内ROM全部采用FLASH ROM技术,与MCS-51系列完全兼容,它能以3V的超低电压工作,晶振时钟最高可达24MHz。

AT89S52是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。

第31引脚需要接高电位使单片机选用内部程序存储器;第9引脚是复位引脚,要接一个上电手动复位电路;第40脚为电源端VCC,接+5V电源,第20引脚为接地端VSS,通常在VCC和VSS引脚之间接0.1μF高频滤波电容。

第18、19脚之间接上一个12MHz的晶振为单片机提供时钟信号。

AT89S52单片机说明如下:此芯片是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:8K字节的程序存储器,256字节的RAM,32条I/O线,2个16位定时器/计数器, 一个5中断源两个优先级的中断结构,一个双工的串行口, 片上震荡器和时钟电路。

引脚说明::电源电压·VCC·GND:地·P0口:P0口是一组8位漏极开路型双向I/O口,作为输出口用时,每个引脚能驱动8个TTL逻辑门电路。

当对0端口写入1时,可以作为高阻抗输入端使用。

当P0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。

在这种模式下,P0口具有内部上拉电阻。

在EPROM编程时,P0口接收指令字节,同时输出指令字节在程序校验时。

程序校验时需要外接上拉电阻。

·P1口:P1口是一带有内部上拉电阻的8位双向I/O口。

P1口的输出缓冲能接受或输出4个TTL逻辑门电路。

当对P1口写1时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。

当作为输入端使用时,P1口因为内)。

部存在上拉电阻,所以当外部被拉低时会输出一个低电流(IIL·P2口:P2是一带有内部上拉电阻的8位双向的I/O端口。

89S52简介

89S52简介

4.1 89S52单片机的介89S52单片机最初是由Intel 公司开发设计的,但后来Intel 公司把51 核的设计方案卖给了几家大的电子设计生产商,譬如SST、Philip、Atmel 等大公司。

如是市面上出现了各式各样的但均以51 为内核的单片机,倒是Intel 公司自己的单片机却显得逊色了。

这些各大电子生产商推出的单片机都兼容51 指令、并在51 的基础上扩展一些功能而内部结构是与51 一致的。

89S52有40个引脚,4个8位并行I/O口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。

89S52的存储器系统由4K 的程序存储器(掩膜ROM),和128B的数据存储器(RAM)组成。

【3】89S52单片机的基本组成框图见图4-1。

【3】P0P1P2P3图4-1 80C51单片机结由图4-1可见,89S52单片机主要由以下几部分组成:1.cpu系统8位cpu,含布尔处理器;时钟电路;总线控制逻辑。

2.存储器系统4K字节的程序存储器(ROM/EPROM/Flash,可外扩至64KB);128字节的数据存储器(RAM,可再外扩64KB);特殊功能寄存器SFR。

3.I/O口和其他功能单元4个并行I/O口;2个16位定时计数器;1个全双工异步串行口;中断系统(5个中断源,2个优先级)。

4.1.1 89S52单片机主要特性1. 一个8 位的微处理器(CPU)。

2. 片内数据存储器RAM(128B),用以存放可以读/写的数据,如运算的中间结果、最终结果以及欲显示的数据等,SST89 系列单片机最多提供1K 的RAM。

3. 片内程序存储器ROM(4KB),用以存放程序、一些原始数据和表格。

但也有一些单片机内部不带ROM/EPROM,如8031,8032,80C31 等。

目前单片机的发展趋势是将RAM 和ROM 都集成在单片机里面,这样既方便了用户进行设计又提高了系统的抗干扰性。

单片机AT89S52中文资料

单片机AT89S52中文资料

单片机AT89S52中文资料AT89S521主要性能l 与MCS-51单片机产品兼容l 8K字节在系统可编程Flash存储器l 1000次擦写周期l 全静态操作:0Hz~33MHzl 三级加密程序存储器l 32个可编程I/O口线l 三个16位定时器/计数器l 八个中断源l 全双工UART串行通道l 低功耗空闲和掉电模式l 掉电后中断可唤醒l 看门狗定时器l 双数据指针l 掉电标识符功能特性描述AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。

使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得A T89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,A T89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

R8 位微控制器8K 字节在系统可编程FlashAT89S52Rev. 1919-07/01AT89S522引脚结构AT89S523方框图引脚功能描述AT89S524VCC : 电源GND: 地P0 口:P0口是一个8位漏极开路的双向I/O口。

作为输出口,每位能驱动8个TTL逻辑电平。

对P0端口写“1”时,引脚用作高阻抗输入。

当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。

第1章 89S52单片机概述

第1章  89S52单片机概述

第1讲认识89S52单片机学习要点:单片机的基本概念AT89S52引脚功能及封装形式程序存储器和数据存储器的地址空间特殊功能寄存的地址分配及其复位值1.1 单片机概述单片机的全称为单片微型计算机(Single-Chip Microcomputer)或微型控制器(Micro-controller)。

它在一块芯片上集成了中央处理单元CPU、随机存储器RAM、只读存储器ROM、定时器/计数器和多种输入/输出(I/O),如并行I/O、串行I/O和A/D转换器等。

就其组成而言一块单片机就是一台计算机。

典型的结构如图1-1所示。

由于它具有许多适用于控制的指令和硬件支持而广泛应用于工业控制、仪器仪表、外设控制、顺序控制器中,所以又称为微控制单元(MCU)。

图1-1 单片机结构框图MCS-51系列单片机,是Intel公司继MCS-48系列单片机之后,在1980年推出的高档8位单片机。

当时MCS-51系列产品有8051、8031、8751、80C51、80C31等型号。

它们的结构基本相同,其主要差别反映在寄存器的配置上有所不同。

8051内部没有4K字节的掩膜ROM程序存储器,8031片内没有程序存储器,而8751是将8051片内的ROM换成EPROM。

ATMEL89系列单片机是A TMEL公司的以8031核构成的8位Flash单片机系列。

这个系列单片机的最大特点就是在片内含有Flash存储器,AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。

该器件采用Atmel公司的高密度非易失性存储技术生产,其指令与工业标准的80C51指令集兼容。

片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。

通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。

它的应用范围广,可用于解决复杂的控制问题,且成本较低。

单片机及控制-第一章单片机基础知识

单片机及控制-第一章单片机基础知识

关于逻辑高低电平: 1) 5V CMOS 、 HC 、 AHC 、 AC 中 , 输 入 大 于 3. 5V 算 高 电 平 , 输 入 小 于 1.5 V 算 低 电 平 ; 2) 5 V TTL 、 AB T 、 AHCT 、 HC T 、 ACT 中 , 输 入 大 于 2 V 算 高 电 平 , 输 入 小 于 0. 8V 算 低 电 平 ; 3) 3. 3V LV TTL 、 LV T 、 L VC 、 AL VC 、 LV 、 AL V T 中 ,输 入 大 于 2V 算高电平 | | 输 入 小 于 0. 8V 算 低 电 平 ;
【单片机的应用领域】 目前单片机渗透到我们生活的各个领域, 几乎很难找到哪个领域没有单片机的踪迹。 导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程 的实时控制和数据处理,广泛使用的各种智能 IC 卡,民用豪华轿车的安全保障系统,录像 机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。 更不用说自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应 用将造就一批计算机应用与智能化控制的科学家、工程师。
AT89S52 具有以下标准功能:8K 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门狗定 时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结构,全双工串行 口,片内晶振及时钟电路。另外,AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选 择节电模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工 作。掉电保护方式下,RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一 个中断或硬件复位为止。

《单片机原理与应用》AT89s52

《单片机原理与应用》AT89s52

片内 8KB Flash ROM EA=1
1FFFH 0000H EA=0
程序存储器 ROM
64KB RAM ( I/O)
0000H
片内
专用 FFH 寄存器 80H
内部 7FH
RAM 00H
数据存储器 RAM
¼Ä÷
❖1、程序存储器
AT89S52单片机片内程序存储器 ROM有8K字节, 其地址为0000H~1FFFH;片外可接扩展程序存储 器ROM,最大达64 k字节,地址为0000H~FFFFH, 片内外统一编址。CPU访问片内、片外程序存储器 ROM时用MOVC指令。
表1-2 程序状态寄存器PSW功能表
地址
D0H
寄存器 名称
程序状态寄存器PSW
位地址
D7
D6
D5
D4
D3
D2
D1
D0
位名称
CY
AC
F0
RS1
RS0
OV
F1
P
位意义
进/借
辅进
用户标志
寄存器组选择
溢出
用户标志
奇/偶
CY(PSW.7):进/借位标志位。在执行加法(或减法)运 算指令时,如果运算结果的最高位(D7位)向前有进位( 或借位),则CY位由硬件自动置为1(CY=1);如果运算 结果的最高位无进位(或借位),则CY位被清0(CY=0) 。
AT89S52
AT89S52单片机的基本组成
AT89S52 单片机内部结构框图如图1-2所示:
AT89S52 单片机内部包括:
❖ 一个8位89S52微处理器(CPU),是单片机的运算和指 挥中心。
❖ 片内8K字节程序存储器 (ROM),用于存放程序、原始 数据及表格。

AT89S52单片机资料和最小系统

AT89S52单片机资料和最小系统

AT89S52单片机资料和最小系统AT89S52单片机的最小系统AT89S52单片机的引脚(P1口)P1.0—P1.7: 准双向I/O口(内置了上拉电阻)输出时一切照常,在作输入口用时要先对其写“1”。

P1.0—P1.7: 准双向I/O口(内置了上拉电阻)输出时一切照常,仅在作输入口用时要先对其写“1”。

P1.0—P1.7: 准双向I/O口(内置了上拉电阻)输出时一切照常,仅在作输入口用时要先对其写“1”。

在读数据之前,先要向相应的锁存器做写1操作的I/O口称为准双向口;P0.0—P0.7: 双向I/O (内置场效应管上拉)寻址外部程序存储器时分时作为双向8位数据口和输出低8位地址复用口;不接外部程序存储器时可作为8位准双向I/O口使用。

P2.0—P2.7: 双向I/O (内置了上拉电阻)寻址外部程序存储器时输出高8位地址;不接外部程序存储器时可作为8位准双向I/O口使用。

P3.0—P3.7: 双功能口(内置了上拉电阻)它具有特定的第二功能。

在不使用它的第二功能时它就是普通的通用准双向I/O口。

引脚第二功能P3.0 RxD: 串行口接收数据输入端P3.1 TxD: 串行口发送数据输出端P3.2 INT0: 外部中断0输入端P3.3 INT1: 外部中断1输入端P3.4 T0: 外部计数0脉冲输入端P3.5 T1: 外部计数1脉冲输入端P3.6 WR: 写外设控制信号输出端P3.7 RD: 读外设控制信号输出端51单片机的8个特殊引脚●Vcc, GND: 电源端●XTAL1, XTAL2: 片内振荡电路输入、输出端●RESET: 复位端正脉冲有效(宽度 10 mS)●EA/Vpp: 寻址外部ROM控制端。

低有效片内有ROM时应当接高电平。

●ALE/PROG: 地址锁存允许控制端。

●PSEN:选通外部ROM的读(OE)控制端。

低有效51单片机的4个8位的I/O口●P0.0—P0.7:8位数据口和输出低8位地址复用口(复用时是双向口;不复用时也是准双向口) ●P1.0—P1.7: 通用I/O口(准双向口)✹P2.0—P2.7: 输出高8位地址(用于寻址时是输出口;不寻址时是准双向口)✹P3.0—P3.7: 具有特定的第二功能(准双向口)注意:在不外扩ROM/RAM时,P0~P3均可作通用I/O口使用,而且都是准双向I/O口!P0口需外接上拉电阻P1—P3 可接也可不接在用作输入时都需要先置”1”矩阵键盘1. 键扫描键扫描就是要判断有无键按下,当扫描到有键按下时再进行下一步处理,否则退出键盘处理程序。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第1讲认识89S52单片机学习要点:单片机的基本概念AT89S52引脚功能及封装形式程序存储器和数据存储器的地址空间特殊功能寄存的地址分配及其复位值1.1 单片机概述单片机的全称为单片微型计算机(Single-Chip Microcomputer)或微型控制器(Micro-controller)。

它在一块芯片上集成了中央处理单元CPU、随机存储器RAM、只读存储器ROM、定时器/计数器和多种输入/输出(I/O),如并行I/O、串行I/O和A/D转换器等。

就其组成而言一块单片机就是一台计算机。

典型的结构如图1-1所示。

由于它具有许多适用于控制的指令和硬件支持而广泛应用于工业控制、仪器仪表、外设控制、顺序控制器中,所以又称为微控制单元(MCU)。

图1-1 单片机结构框图MCS-51系列单片机,是Intel公司继MCS-48系列单片机之后,在1980年推出的高档8位单片机。

当时MCS-51系列产品有8051、8031、8751、80C51、80C31等型号。

它们的结构基本相同,其主要差别反映在寄存器的配置上有所不同。

8051内部没有4K字节的掩膜ROM程序存储器,8031片内没有程序存储器,而8751是将8051片内的ROM换成EPROM。

ATMEL89系列单片机是A TMEL公司的以8031核构成的8位Flash单片机系列。

这个系列单片机的最大特点就是在片内含有Flash存储器,AT89S52单片机是一种低功耗高性能的CMOS8位微控制器,内置8KB可在线编程闪存。

该器件采用Atmel公司的高密度非易失性存储技术生产,其指令与工业标准的80C51指令集兼容。

片内程序存储器允许重复在线编程,允许程序存储器在系统内通过SPI串行口改写或用同用的非易失性存储器改写。

通过把通用的8位CPU与可在线下载的Flash集成在一个芯片上,AT89S52便成为一个高效的微型计算机。

它的应用范围广,可用于解决复杂的控制问题,且成本较低。

其结构框图如图1-2所示。

图1-2 AT89S52结构框图1.2 AT89S52单片机特性AT89S52的主要特性如下:兼容MCS51产品8K字节可擦写1000次的在线可编程ISP 闪存4.0V到5.5V的工作电源范围全静态工作:0Hz ~24MHz3级程序存储器加密256字节内部RAM32条可编程I/O线3个16位定时器/计数器8个中断源UART串行通道低功耗空闲方式和掉电方式通过中断终止掉电方式看门狗定时器双数据指针灵活的在线编程(字节和页模式)1.3 AT89S52引脚功能与封装图1-3是AT89S52封装结构图。

图1-3 A T89S52封装引脚图按照功能,AT89S52的引脚可分为主电源、外接晶体振荡或振荡器、多功能I/O口、控制和复位等。

1.多功能I/O口AT89S52共有四个8位的并行I/O口:P0、P1、P2、P3端口,对应的引脚分别是P0.0 ~P0.7,P1.0 ~P1.7,P2.0 ~P2.7,P3.0 ~P3.7,共32根I/O线。

每根线可以单独用作输入或输出。

①P0端口,该口是一个8位漏极开路的双向I/O口。

在作为输出口时,每根引脚可以带动8个TTL输入负载。

当把“1”写入P0时,则它的引脚可用作高阻抗输入。

当对外部程序或数据存储器进行存取时,P0可用作多路复用的低字节地址/数据总线,在该模式,P0口拥有内部上拉电阻。

在对Flash存储器进行编程时,P0用于接收代码字节;在校验时,则输出代码字节;此时需要外加上拉电阻。

②P1端口,该口是带有内部上拉电阻的8位双向I/O端口,P1口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。

P1口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

在对Flash编程和程序校验时,P1口接收低8位地址。

另外,P1.0与P1.1可以配置成定时/计数器2的外部计数输入端(P1.0/T2)与定时/计数器2的触发输入端(P1.0/T2EX),如表1-1所示。

表1-1 P1口管脚复用功能③P2端口,该口是带有内部上拉电阻的8位双向I/O端口,P2口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。

P2口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

在访问外部程序存储器或16位的外部数据存储器(如执行MOVX @DPTR指令)时,P2口送出高8位地址,在访问8位地址的外部数据存储器(如执行MOVX @RI指令)时,P2口引脚上的内容(就是专用寄存器(SFR)区中P2寄存器的内容),在整个访问期间不会改变。

在对Flash 编程和程序校验期间,P2口也接收高位地址或一些控制信号。

④P3端口,该口是带有内部上拉电阻的8位双向I/O端口,P3口的输出缓冲器可驱动(吸收或输出电流方式)4个TTL输入。

对端口写“1”时,通过内部的上拉电阻把端口拉到高电位,此时可用作输入口。

P3口作输入口使用时,因为有内部的上拉电阻,那些被外部信号拉低的引脚会输出一个电流。

在A T89S52中,同样P3口还用于一些复用功能,如表1-2所列。

在对Flash编程和程序校验期间,P3口还接收一些控制信号。

表1-2 P3端口引脚与复用功能表位。

看门狗定时器(Watchdog)溢出后,该引脚会保持98个振荡周期的高电平。

在SFR AUXR (地址8EH)寄存器中的DISRTO位可以用于屏蔽这种功能。

DISRTO位的默认状态,是复位高电平输出功能使能。

3.ALE/PROG 地址锁存允许信号。

在存取外部存储器时,这个输出信号用于锁存低字节地址。

在对Flash存储器编程时,这条引脚用于输入编程脉冲PROG。

一般情况下,ALE是振荡器频率的6分频信号,可用于外部定时或时钟。

但是,在对外部数据存储器每次存取中,会跳过一个ALE脉冲。

在需要时,可以把地址8EH中的SFR寄存器的0位置为“1”,从而屏蔽ALE的工作;而只有在MOVX或MOVC指令执行时ALE才被激活。

在单片机处于外部执行方式时,对ALE屏蔽位置“1”并不起作用。

4.PSEN 程序存储器允许信号。

它用于读外部程序存储器。

当AT89S52在执行来自外部存储器的指令时,每一个机器周期PSEN被激活2次。

在对外部数据存储器的每次存取中,PSEN 的2次激活会被跳过。

5.EA/Vpp 外部存取允许信号。

为了确保单片机从地址为0000H~FFFFH的外部程序存储器中读取代码,故要把EA接到GND端,即地端。

但是,如果锁定位1被编程,则EA在复位时被锁存。

当执行内部程序时,EA应接到Vcc。

在对Flash存储器编程时,这条引脚接收12V编程电压Vpp。

6.XTAL1 振荡器的反相放大器输入,内部时钟工作电路的输入。

7.XTAL2 振荡器的反相放大器输出。

1.4 存储器组织所有的ATMEL Flash单片机都将程序存储器和数据存储器分为不同的存储空间。

89系列单片机的典型存储器的结构如图1-4所示。

图1-4 存储器结构程序和数据存储器分为不同的逻辑空间,使得可用8位地址来访问数据存储器。

这样可提高8位CPU的存储和处理速度。

尽管如此,也可通过数据指针(DPTR)寄存器来产生16位的数据存储器地址。

程序存储器只可读不可写,用于存放编好的程序和表格常数。

89系列单片机可寻址的程序存储器总空间为64KB。

外部程序存储器的读选通脉冲为PSEN(程序存储允许信号)。

数据存储器在物理上和逻辑上都分为两个地址空间:一个内部和一个外部数据存储器空间。

外部数据存储器的寻址空间可达64KB。

访问外部数据存储器时,CPU发出读和写的信号——RD和WR。

将RD和PSEN两个信号加到一个与门的输入端,然后用与门的输出作为外部程序/数据存储器的读选通脉冲。

这样就可将外部程序存储器空间和外部数据存储器空间合并在一起。

1.4.1 程序存储器89系列单片机可寻址的内部和外部程序存储器总空间为64KB。

每个外部程序和数据存储器的可寻址范围高达64KB。

它没有采用程序存储器分区的方法,64KB的地址空间是统一的。

EA引脚接低电平时,单片机就从外部程序存储器中取指。

对于AT89S52,EA引脚接高电平时,程序直接从单片机内部存储器中的0000H到1FFFH单元执行,2000H到FFFFH单元到外部存储器中执行。

程序存储器中有几个单元专门用来存放特定的程序。

这几个单元的配置情况如图1-5所示。

图1-5 程序存储器的中断入口配置由图1-5可知,0000H~0002H单元用于初始化程序。

单片机复位后,CPU总是从0000H单元开始执行程序。

另外,每个中断在程序存储器中都分配有一个固定的入口地址。

中断响应后,CPU便跳到该单元,在这里开始执行中断服务子程序。

例如,外部中断0的入口地址被放在0003H单元,如果使用外部中断0,则它的中断服务子程序必须从0003H单元开始。

如果中断没有使用,那么它的服务单元也可作一般用途的程序存储器用。

每个中断入口地址的间隔为8个单元;外部中断0的入口地址为0003H;定时器0的入口地址为000BH;外部中断1的入口地址为0013H;定时器1的入口地址为001BH;以此类推。

如果一个中断服务子程序足够短的话,则可全部存放在这8个单元中。

对较长的服务子程序,则可利用一条跳转指令跳过后续的中断入口地址。

程序存储器最低端的地址可以在片内Flash中,或在外部存储器中。

将外部存取(EA)引脚接Vcc或接地,就可进行这种选择。

例如,在带有4KB片内Flash的AT89C51中,如果把EA引脚连到Vcc,当地址为0000H~0FFFH时,则访问内部Flash;当地址为1000H~FFFFH时,则访问外部程序存储器。

在AT89C52(8KB Flash)中,当EA端保持高电平时,如果地址不超过1FFFH,则访问内部Flash;地址超过1FFFH(即为2000H~FFFFH)时,将自动转向外部程序存储器。

如果EA端接地,则只访问外部程序存储器,不管是否有内部Flash存储器。

外部程序存储器读选通信号PSEN用于读取所以的外部程序;读取内部程序时,不产生PSEN 信号。

执行外部程序是的硬件连接方法如图1-6所示。

图1-6 访问外部程序存储器的连接注意,在访问外部程序存储器时,16条I/O线(P0和P2)作为总线使用。

P0端口作为地址/数据总线使用。

它先输出16位地址的低8位PCL,然后进入悬浮状态,等待程序存储器送出的指令字节。

当有效地址PCL出现在P0总线上时,ALE(允许地址锁存)把这个地址锁存到地址锁存器中。

相关文档
最新文档