第2章-AT89S51单片机的片内硬件结构
AT89S51单片机串行口的内部结构及工作原理介绍
AT89S51单片机串行口的内部结构及工作原理介绍AT89S51单片机串行口的内部结构如下图所示。
它有两个物理上独立的接收、发送缓冲器SBUF(属于特殊功能寄存器),可同时发送、接收数据。
发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,两个缓冲器共用一个特殊功能寄存器字节地址(99H)。
串行口的控制寄存器共有两个:特殊功能寄存器SCON 和PCON。
下面介绍这两个特殊功能寄存器各位的功能。
1、串行口控制寄存器SCON串行口控制寄存器SCON,字节地址988H,可位寻址,位地址为98H~9FH。
SCON的格式如下图所示。
下面介绍SCON中各位的功能。
(1) SM0、SMl:串行口4种工作方式选择位。
SM0、SM1两位的编码所对应的4种工作方式见下表。
表串行口的4种工作方式(2) SM2:多机通信控制位。
因为多机通信是在方式2和方式3下进行的,因此SM2位主要用于方式2或方式3中。
当串行口以方式2或方式3接收时,如果SM2=1,则只有当接收到的第9位数据(RB8)为1时,才使RI置l,产生中断请求,并将接收到的前8位数据送人SBUF;当接收到的第9位数据(RB8)为0时,则将接收到的前8位数据丢弃。
而当SM2=0时,则不论第9位数据是l还是0,都将前8位数据送入SBUF中,并使RI置1,产生中断请求。
在方式1时,如果SM2=1,则只有收到有效的停止位时才会激活RI。
在方式0时,SM2必须为0。
(3)REN:允许串行接收位。
由软件置1或清0。
REN=1,允许串行口接收数据。
REN=O,禁止串行口接收数据。
(4)TB8:发送的第9位数据。
在方式2和方式3时,TB8是要发送的第9位数据,其值由软件置l或清O。
在双机串行通信时,TB8一般作为奇偶校验位使用;在多机串行通信中用来表示主机发送的是地址帧还是数据帧,TB8=1为地址帧,TB8=0为数据帧。
(5) RB8:接收的第9位数据。
工作在方式2和方式3时,RB8存放接收到的第9位数据。
第2章 AT89S51单片机原理与基本应用系统
单片机实用教程第2章AT89S51单片机原理与基本应用系统本章主要内容1、单片机的内部结构与引脚功能2、单片机存储器空间配臵与功能3、汇编语言指令格式与内部RAM的操作指令4、单片机I/O输入输出端口结构及工作原理5、单片机基本应用系统一、AT89S51单片机内部结构(1)一个8位的CPU;(2)一个片内振荡器及时钟电路;(3)4KB的Flash ROM;(4)128B的内部RAM(5)可扩展64KB外部ROM和外部RAM的控制电路;(6)两个十六位的定时/计数器;(7)26个特殊功能寄存器(双数据指针);(8)4个8位的并行口;(9)一个全双工的串行口;(10)5个中断源,两个外部中断,三个内部中断;(11)内部硬件看门狗电路;(12)一个SPI串行接口,用于芯片的在系统编程(ISP)。
1、电源VCC (P40)——芯片电源,接+5V 。
VSS (P20)——接电源地。
二、AT89S51单片机引脚功能2、时钟XTAL1(P19)——晶体振荡电路的反相器输入端XTAL2(P18)——晶体振荡电路的反相器输出端。
使用内部振荡电路时,该引脚外接石英晶体和补偿电容。
使用外部振荡输入时从XTAL2输入,此时XTAL1需接地。
3、控制控制引脚有4个,先学习其中的两个。
(1)RST/VPD——复位/备用电源RST复位功能是单片机正常工作必不可少的,因为复位可以使单片机从程序的开头运行,使单片机按照人们设计的程序运行,在单片机系统上电开始工作,或单片机系统由于外界干扰偏离正常运行,都需要复位。
AT89S51单片机是高电平复位,只要在该引脚上一段时间(两个机器周期以上)的高电平,单片机就复位。
在正常运行程序时该引脚为低电平。
VPD功能是在VCC掉电情况下,该引脚接备用电源,向片内的RAM供电,使RAM中的数据不丢失。
3、控制(2)EA/VPP——内外ROM选择/EPROM编程电源在通常的应用中EA功能是作为内部和外部ROM的选择端。
第2章 89C51单片机硬件结构和原理
2.累加器A 使用最频繁的寄存器,可写为Acc。“A”与“Acc” 书写上 的差别,将在第3章介绍。
作用如下:
(1)ALU单元的输入数据源之一,又是ALU运算结果存放单元。 (2)数据传送大多都通过累加器A,相当于数据的中转站。为 解决“瓶颈堵塞”问题,AT89S51增加了一部分可以不经过 累加器的传送指令。
18
PSW中各个位的功能: (1)Cy(PSW.7)进位标志位
可写为C。在算术和逻辑运算时,若有进位/借位,Cy=1;
否则,Cy=0。在位处理器中,它是位累加器。 (2)Ac(PSW.6)辅助进位标志位 在BCD码运算时,用作十进位调整。即当D3位向D4位产生进 位或借位时,Ac=1;否则,Ac=0。 (3)F0(PSW.5)用户设定标志位 由用户使用的一个状态标志位,可用指令来使它置1或清0, 控制程序的流向。用户应充分利用。
端(12-21V)。
4、I/O端口P0、P1、P2和P3 准双向的含义:
当I/O口作为输入时,应先向此口锁存器写入全1, 此 时该口引脚浮空,可作高阻抗输入。
1)P0口:用作通用的I/O口;当外扩存储器及I/O接口芯片时,P0口作为低8位地址 总线及数据总线的分时复用端口。 2)P1口:用作通用的I/O口 3)P2口:用作通用的I/O口;当外扩存储器及I/O接口芯片时,P2口作为高8位地址 总线 4)P3口:用作通用的I/O口;每个引脚有第二功能
图2-6 高128字节RAM(SFR区)
1、堆栈指针SP
堆栈指针SP(8位),可指向片内RAM00H~7FH的任何单元。系统 复位后,SP指向07H的RAM单元,所以入栈的第一个数据位于08H单元。
堆栈:在片内RAM区专门开辟的一个区域,数据的存取是按“后进先
第2章AT89S51单片机硬件结构
TXD
INT0 INT1 T0 T1 WR RD
串行数据发送
外部中断 0 申请 外部中断 1 申请 定时器/计数器 0 计数输入 定时器/计数器 1 计数输入 外部RAM写选通 外部RAM读选通
11
控制信号引脚
RST/VPD(9引脚):RST为复位信号输入端。
当RST端保持2个机器周期以上高电平时,单片机完成复位操作。 第二功能VPD为内部RAM的备用电源输入端。当主电源VCC发生 断电,降到一定电压值时,可通过VPD为单片机内部RAM提供电 源,以保护片内RAM中的信息不丢失,上电后能继续正常运行。 ALE / PROG (30引脚) : ALE为地址锁存允许信号 在系统扩展时,ALE用于控制把P0口输出的低8位地址送入锁存 器锁存起来,以实现低8位地址和数据的分时传送。
CPU是单片机内部的核心部件,完成运算和控制操作。包括运 算器、控制器以及若干寄存器等部件组成
运算器
以算术逻辑单元ALU为核心,加上累加器ACC、寄存器B、暂存器 TMP1和TMP2、 程序状态寄存器PSW、十进制调整电路及专门用
于位操作的布尔处理机组成的。
功能:实现数据的算术逻辑运算,位变量处理和数据传送操作。
可编程I/O
内中断
外中断 控制
并行口
4
89S51单片机的基本组成 一个8位 的微处理器CPU。 片内数据存储器(RAM128B/256B):
用以存放可以读/写的数据,如运算的中间结果、最终 结果以及欲显示的数据等。
片内程序存储器Flash ROM(4KB/8KB):
用以存放程序、一些原始数据和表格。但有一些单
片机内部不带ROM/EPROM,如8031、8032、80C31等。
第2章 AT89S51单片机系统结构和
技术凝聚实力 专业创新出版
2.2.1 8051结构
如图所示为8031、8051、8751的内部总体结构,该结构按功能可划分为8个组成部 分,它们是通过片内单一总线连接起来的。 微处理器(CPU); 数据存储器(RAM); 程序存储器(ROM/EPROM); 特殊功能寄存器(SFR); I/O口; 串行口; 定时器/计数器及中断系统。
当AT89S51工作于节电模式时,CPU进入睡眠模式,但是 所有的端口仍然保持工作状态。节电模式能够通过软件 进入,在这个模式下,所有的内存数据和特殊功能寄存 器的值均保持不变。节电模式能够被任何使能的中断和 硬件复位所结束。 当节电模式是由于硬件复位结束时,程序将从其进入节 电模式的指令继续执行,为了避免在外部引脚有不可预 测的输出,最好不要将写外部端口操作和读取外部内存 放在节电模式指令后的下一步操作。
技术凝聚实力 专业创新出版
2.2.4 特殊寄存器组(SFR)
AT89S51单片机中的特殊功能寄存器(SFR)是非常重要 的内存单元,对于单片机的工程技术人员来说,理解了 SFR也就基本掌握了AT89S51单片机。 AT89S51单片机的SFR包括内部的I/O口锁存器、累加器、 定时器、串行口、中断等各种控制寄存器和状态寄存器, 共26个SFR,它们离散地分布在80H~0FFH的SFR地址空间 内,其余空缺内存位置为保留空间,为将来单片机内核 升级使用,特殊功能寄存器名及对应的地址
SP是一个8为的SFR,它用来指示出堆栈顶部在内部RAM 块中的位置。系统复位后SP的值为07H,若不对SP设置 初值,则堆栈在08H开始的区域,为了不占用工作寄存 器R0~R7的地址,一般在编程时应设置SP的初值。 数据进入堆栈前,SP加1(成为压栈);数据从堆栈中 取出(成为出栈)后,SP减1。
单片机原理及接口技术第版张毅刚习题及答案
单片机原理及接口技术第版张毅刚习题及答案文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]《单片机原理及接口技术》(第2版)人民邮电出版社第2章 AT89S51单片机的片内硬件结构思考题及习题21.在AT89S51单片机中,如果采用6MHz晶振,一个机器周期为。
答:2μs2.AT89S51单片机的机器周期等于个时钟振荡周期。
答:123.内部RAM中,位地址为40H、88H的位,该位所在的字节地址分别为和。
答:28H,88H4.片内字节地址为2AH单元最低位的位地址是;片内字节地址为88H单元的最低位的位地址为。
答:50H,A8H5.若A中的内容为63H,那么,P标志位的值为。
答:06.AT89S51单片机复位后,R4所对应的存储单元的地址为,因上电时PSW= 。
这时当前的工作寄存器区是组工作寄存器区。
答:04H,00H,0。
7. 内部RAM中,可作为工作寄存器区的单元地址为 H~ H。
答:00H,1FH8. 通过堆栈操作实现子程序调用时,首先要把的内容入栈,以进行断点保护。
调用子程序返回指令时,再进行出栈保护,把保护的断点送回到,先弹出的是原来中的内容。
答:PC, PC,PCH9.AT89S51单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为AT89S51单片机的PC是16位的,因此其寻址的范围为 KB。
答:6410.判断下列说法是否正确?A.使用AT89S51单片机且引脚EA=1时,仍可外扩64KB的程序存储器。
错B.区分片外程序存储器和片外数据存储器的最可靠的方法是看其位于地址范围的低端还是高端。
错C.在AT89S51单片机中,为使准双向的I/O口工作在输入方式,必须事先预置为1。
对D.PC可以看成是程序存储器的地址指针。
对11.判断下列说法是否正确?A.AT89S51单片机中特殊功能寄存器(SFR)占用片内RAM的部份地址。
对B.片内RAM的位寻址区,只能供位寻址使用,而不能进行字节寻址。
第2章--AT89S52硬件结构S52
2.4.3 特殊功能寄存器 2.4.4 位地址空间 2.4.5 存储器结构总结 2.5 AT89S52的并行I/O端口 2.5.1 P0口 2.5.2 P1口 2.5.3 P2口 2.5.4 P3口 2.6 时钟电路与时序 2.6.1 时钟电路设计
3
2.6.2 时钟周期、机器周期、指令周期与指令时序 2.7 复位操作和复位电路
25
(3)P2口:P2.7~P2.0引脚 准双向I/O口,引脚内部接有上拉电阻,可驱动4个LS型TTL负载。 当AT89S52访问外部存储器及I/O口时,P2口作为高8位地址总线使用,
输出高8位地址。 当P2口不作为高8位地址总线时,可作为通用的I/O口使用。
26
(4)P3口:P3.7~P3.0 准双向I/O口,具有内部上拉电阻。 P3口的第一功能是作为通用的I/O口使用,可驱动4个LS型TTL负载。 P3口还可提供第二功能。第二功能定义见表2-1,应熟记。 综上所述,P0口可作为总线口,为双向口。作为通用的I/O口使用
6
图2-1 AT89S52单片机片内结构
7
(7)中断系统具有6个中断源、6个中断向量; (8)特殊功能寄存器(SFR)32个; (9)1个看门狗定时器; (10)低功耗模式有空闲模式和掉电模式,且具有掉电模式
下的中断恢复模式。
片内各功能部件通过片内单一总线连接而成(见图2-1),基本结构依 旧是CPU 加上外围芯片的传统微机结构。
复位,使程序恢复正常运行。 AT89S52完全兼容AT89C51/AT89S51单片机,使用AT89C51/
AT89S51单片机的系统,在保留原来软硬件的基础上,可用AT89S52直接 代换。
12
2.2 AT89S52的引脚功能
第2章 AT89S51单片机硬件结构
P3 P2
10
2. 2 AT89S51单片机的引脚与功能
11
2. 2 AT89S51单片机的引脚与功能
总结:外ROM占用单片机的三个控制脚
外RAM借用P3.6/WR P3.7/RD 做写读信号输出脚 逻辑符号
vcc vss P1 P3 晶振
P0 P2
DBUS/ABUS分时复用 ABUS高8位 (16地址线、8数据线)
25
2.4 AT89S51存储器的结构
三.区别四空间地址的三种方法 1.用/EA区别内外ROM /EA=0时(接地),CPU从外ROM取指执行(内ROM)不用 /EA=1时(接+5V),CPU从内ROM取指执行,但当地址>4KB 时,转而从外ROM取指执行(前4K浪费掉) 2.三种不同指令,使CPU分别指向(访问)四个不同的地址空 间之一 ①CPU—内RAM 使用MOV指令:使用8位地址码; 该指令不产生外部读写信号 ②CPU—外RAM 使用MOVX指令;一般使用16位地址码 该指令产生读/写信号之一 P3.6/WR—写外RAM P3.7/RD—读外RAM
控制器
振荡器
XTAL1 OSC C1 C2 XTAL2
P3口驱动器
P1口驱动器
P3口 锁存器
P1口 锁存器
I/O口
P3.0~P3.7 P1.0~P1.7
13
2. 3 AT89S51的CPU
中央处理器(CPU)
CPU由运算器和控制器组成,它是单片机的核心,完成 运算和控制操作。 一. 运算器 运算器:运算器的核心是ALU 另外三个:ACC.B.PSW 功能: 1.ALU可完成 + - * / —四则 与、或、非、异或—逻辑 其他:加1、减1、比较、移位
AT89S51 单片机的硬件组成_单片机原理及接口技术(第2版)_[共2页]
14 第2
章
AT89S51单片机的片内硬件结构 【内容概要】本章介绍AT89S51单片机的片内硬件结构。
读者应牢记AT89S51单片机的片内硬件结构,以及片内外设资源的基本功能及工作原理,重点掌握AT89S51单片机的存储器结构、常见的特殊功能寄存器的基本功能以及复位电路与时钟电路的设计,掌握单片机最小系统的概念。
最后介绍低功耗节电模式。
本章的学习目的是为单片机应用系统的硬件设计打下基础。
单片机应用的特点是编写程序来控制硬件电路,所以,读者应首先熟知并掌握AT89S51单片机片内硬件的基本结构和特点。
2.1 AT89S51单片机的硬件组成
AT89S51单片机片内硬件结构如图2-1所示,它把那些作为控制应用所必需的基本外围部件都集成在一个集成电路芯片上。
AT89S51单片机具有如下部件及特性。
图2-1 AT89S51单片机片内结构
(1)8位CPU。
(2)数据存储器(128B RAM)。
(3)程序存储器(4KB Flash ROM)。
单片机原理与接口技术
《单片机原理与接口技术》教学大纲课程名称:单片机原理与接口技术Fundamentals of Mono-Chip b Computers and Interface Technology课程编号:202020课程类型:专业主干课学时/学分:32/2适用专业:电子信息工程一、前言(一)课程性质本课程是计算机科学与技术领域的专业理论课,它上承“电子技术基础”等专业理论基础课,下启“接口技术”和“计算机控制技术”等专业课,在其间起着桥梁和纽带的作用,因此是非常重要的应用技术专业理论课。
(二)教学目标通过本课程的学习,应使学生在掌握单片机基本理论知识的基础上,着重强化应用所学知识的能力和实际动手能力。
因此,在教学过程中既要重视基础理论的培养,也要重视实验等实践性环节,基础理论知识和基本应用能力并重,为后续专业课的学习及学生从业后自学相关知识、更好地从事相关技术工作奠定良好的基础。
(三)教学要求要求学生能够全面深入理解所学内容,并能够用分析、初步设计解答与网络相关的问题,能够举一反三。
了解单片机应用系统各主要环节的设计、调试方法,并了解单片机在测量、控制等电子技术应用领域的应用,要求学生能够较好地理解和掌握,并能够进行简单的分析和判断。
要求学生能够一般地了解所学内容。
掌握单片机应用系统设计与制作的基本方法与步骤,能够熟练运用仿真开发环境调试软、硬件。
(四)先修课程《模拟电子技术》、《数字电子技术》、《微机原理及应用》、《电路基础》、《C 程序设计》。
二、课程内容第一章单片机概述教学内容及总体要求:本章介绍有关单片机的基础知识、发展历史、应用领域以及发展趋势,并对当前8位单片机的主流机型、且占有较大市场份额的MCS—51系列单片机及其兼容的单片机(统称为51系列单片机)进行简要概述。
对目前流行的51的单片机的代表性机型:美国ATMEL 公司的AT89C5x/AT89S5x系列单片机以及其中最具代表性的产品AT89S51进行详细介绍。
第2章 AT89S52单片机的片内硬件结构(2)存储器结构
pop
A
pop
B
pop
PSW
这样的指令顺序对不对?
30
2.寄存器B
为执行乘法和除法而设。
在不执行乘、除法操作的情况下,可把它当作一个 普通寄存器来使用。
乘数 A × 乘数 B
高8位 B 低8位 A
商 A 余数 B 除数 B 被除数 A
31
4. 数据指针DPTR0和DPTR1
双数据指针寄存器,便于访问数据存储器。 DPTR数据指针是唯一一个既可以当16位寄存器来用,
MOV 21H,ACC ;21H为字节地址
MOV 21H,P1.2 ;21H为位地址
17
2.数据存储器空间
AT89S52与AT89S51 片内数据存储器相比 ,片内数据存储器增 加了128B,对应的字 节地址为80H~FFH 。
这高128B的RAM单元 地址与特殊功能寄存 器区的字节地址重合 ,但它们是两个不同 的物理区域。
② 主要功能:保护断点和保护现场,为程序的正确返 回作准备。
③ 堆栈保护内容:累加器ACC,工作寄存器内容,寄 存器B,程序状态字PSW等。
27
④ 设立目的:为子程序调用和中断操作设立。 ⑤ 区域范围:由用户自己设置,通常设在30H-7FH的范围
内, SP值改置为60H 。 注意,设为堆栈的区域不能再用作普通RAM区。 单片机复位后,(SP)=07H,所以,必须在初始化时改变
18
2.数据存储器空间
对这两个具有相同地址区
域进行访问时,是由不同
的指令寻址方式(将在指
令系统一章中介绍)来区
分,对地址为80H~FFH
的RAM区,只能采用间
接寻址方式访问,而对地
址为80H~FFH的特殊功
AT89S51单片机的硬件结构
2.时钟引脚
(1)XTAL1(19脚):如果采用外接晶体振荡器时,此 引脚应接地。
(2)XTAL2(18脚):接外部晶体的另一端。 2.2.2 控制引脚 提供控制信号,有的引脚还具有复用功能。
(1) RST/VPD(9脚):复位与备用电源。
第2章 AT89S51单片机的硬件结构
2.1 AT89S51单片机片内部结构
各功能部件介绍:
1.CPU(微处理器) 8位微处理器 2.数据存储器(RAM) 片内为128个字节 3.程序存储器 AT89S51 4KB Flash ROM 4.中断系统 6个中断源、2级优先级; 5.定时器/计数器 2个可编程的16位定时器/计数器 6. 串行口 1个全双工的异步串行口,四种工作方式。
2.5.3 P2端口 字节地址为A0H,位地址A0H~A7H。
在实际应用中,因为P2口用于提供高位地址,有 一个多路转接开关MUX。但MUX的一个输入端不再是 “地址/数据”,而是单一的“地址”,因为P2口只作 为地址线使用。 当P2口用作为地址线使用时,多路转接开关应接 向“地址”端。正因为只作为地址线使用,口的输出 用不着是三态的,所以,P2口也是一个准双向口。 P2口也可作为通用I/O口使用,这时,多路转接开 关接向锁存器Q端。
44只引脚方形封装方式(4只无用)
40只引脚按功能分为3类:
(1)电源及时钟引脚: Vcc、Vss;XTAL1、XTAL2。
(2)控制引脚: PSEN*、EA* 、ALE、RESET (即 RST)。 (3)I/O口引脚:P0、P1、P2、P3,为4个8位I/O口 的外部引脚。
2.2.1 电源及时钟引脚
AT89S51单片机的硬件结构
第二章 AT89S51 单片机的硬件结构第二章 AT89S51 单片机的硬件结构本章“从内到外”主要讲述关于AT89S51单片机的一些基础知识。
首先介绍AT89S51单片机的组成、CPU 、存储器组织以及特殊功能寄存器(SFR),然后,详细讲解了AT89S51的引脚分布及其功能;最后,讨论了使用AT89S51单片机时的时钟和复位电路。
2.1 AT89S51 单片机的组成如前所述,AT89S51单片机与MCS-51完全兼容,内部的结构如图2.1所示:从功能上分,它包括如下部件:一个8位中央处理器(CPU);4K可在线编程Flash ;128字节RAM与特殊功能寄存器;2个16位定时/计数器;中断逻辑控制电路;一个全双工串行接口(UART);32条可编程的I/O口线;另外,还包括一些寄存器如程序计数器PC 、程序状态寄存器PSW 、堆栈指针寄存器SP 、数据指针寄存器DPTR等部件。
2.2 AT89S51 单片机 CPU 的结构CPU是单片机的核心,它主要由运算器(ALU)、时序控制逻辑电路(控制器)以及各种寄存器等部件组成。
( 1 )运算器的功能是进行算术和逻辑运算。
它主要由算术逻辑单元ALU(Arithmetic Logic Unit)和寄存器组成,实现“加、减、乘、除、比较”等算术运算和“与、或、异或、求补、循环”等逻辑操作。
运算器中还包含一个布尔处理器,可以执行置位、清零、求补、取反、测试、逻辑与、逻辑或等操作,为单片机的应用提供了极大的便利。
( 2 )控制器的主要功能是产生各种控制信号和时序。
在CPU内部协调各寄存器之间的数据传送,完成ALU的各种算术或逻辑运算操作;在CPU访问外部存储器或端口时,提供地址锁存信号ALE、外部程序存贮器选通信号PSEN以及读(/RD)、写(/WR)等控制信号。
( 3 )寄存器。
CPU中还有一些寄存器,如累加器(ACC)、程序状态字(PSW)、B寄存器、程序计数器PC 、堆栈指针(SP)、指令寄存器(IR)等,这些寄存器有的在片内特殊功能寄存器空间有地址映像,它们既可看作CPU的寄存器,也可看作具有确定单元的存储单元。
第二章AT89S51单片机的硬件结构
电源及时钟引脚 时钟
时钟有两种方式, 一种是片内时钟振荡方式,需在这两 个脚外接石英晶体和振荡电容。 另一种是外接一个输入时钟信号,有 源晶振至XTAL1,令XTAL2悬空。 若使用石英晶体:则C=30pF±10pF; 若使用陶瓷谐振器:则C=40pF±10pF。
控制引脚 RST
2.3 CPU 运算器 PSW
⑦ 奇偶校验标志位P(Parity): PSW.0奇偶校验标志位,用于指示运算结果中“1” 的个数的奇偶性。当累加器A中的数据“1”个数 为偶数时,P=0,若为奇数时,P=1。 在串行通信中,常用奇偶校验的方法来检测数据 串行传输的可靠性。
AT89S51方框图
2.1 AT89S51单片机的硬件组成
各功能部件简单说明: ROM 8031:无此部件;8051:4K字节ROM;8751:4K 字节EPROM ; 89C51/89C52/89C55:4K/8K/20K 字节闪存。 特殊功能寄存器(SFR)用于对片内各功能模块进行 管理、控制、监视。实际上是一些控制寄存器和状 态寄存器。共有26个,是一个具有特殊功能的RAM区。
④工作寄存器组选择位RS1和RS0
RS1 、RS0 工作寄存器组 R0~R7的物理地址
00
0
00H~07H
01
1
08H~0FH
10
2
10H~17H
11
3
18H~1FH
2.3 CPU 运算器 PSW
⑤ 溢出标志位OV(OVerflow):溢出标志位 PSW.2用于指示带符号数运算的过程中是否发生溢 出。 如果结果产生溢出,则OV=1;否则OV=0 ⑥ PSW.1:保留位,无定义。给芯片制造商预留 的。
并行I/O口引脚P2口
AT89S51单片机原理及应用技术第2章
双功能引脚,ALE功能是输出端,PROG功能是输入端。 ALE功能:是为CPU访问外部程序存储器或外部数据存储器时提供低 8位地址锁存信号输出,将低8位地址信号锁存在外部的低8位地址锁存器中 。ALE信号是下降沿有效。当单片机正常运行时,不包括访问外部数据存 储器操作,ALE引脚一直有周期性正脉冲信号输出,信号频率固定为单片 机时钟振荡器频率fosc的1/6,此信号可用作外部定时或触发信号;每当单片
AT89S51单片机的主要特性参数如下: 与MCS-51系列产品完全兼容。 4K字节在系统编程(ISP) Flash存储器,承受10000次擦写周期。 4.0-6.0V的工作电压范围。 全静态工作方式:0MHz-33 MHz。 3级程序加密位。 128×8位内部RAM。 32个可编程I/O端口线。 2个16位定时/计数器。 5个中断源。 全双工UART串行口。 低功耗空闲和掉电方式。 掉电方式的中断唤醒功能。
2.1 AT89S51的内部结构及外部引脚特性
通用I/O端口:没有第三态,为准双向I/O端口。P1口作为通用I/O端口 输入时,应先向端口锁存器写入1(FFH),然后再输入(读引脚);作为 通用I/O端口输出时,P1口可驱动4个LS型TTL负载。
串行编程接口:引脚P1.5/MOSI、P1.6/MISO和P1.7/SCK(Serial Clock)可用于对片内Flash存储器串行编程和校验,分别是串行数据输入 、串行数据输出和串行移位脉冲(串行时钟)引脚。
另外,该引脚可接上备用电源,当主电源发生故障,降低到低电平 规定值或掉电时,该备用电源为片内RAM供电,以保证RAM中的数据不 会丢失。
第2章 AT89S52单片机的片内硬件结构(4)时钟电路时序复位操作
22
23
2.7.2 复位电路设计
复位电路采用上电自动复位和按钮复位两种方式。最简单 的上电自动复位电路。
1.上电自动复位电路 给电容C 充电加给RST引脚一个短
器、内部RAM和SFR中内容均保持进入空闲模式前状态。 2. 空闲模式退出 两种方法退出,
响应中断方式, 硬件复位方式。
35
2.8.2 掉电运行模式 1. 掉电模式的进入 用指令把PCON寄存器的PD位置1,便进入掉电模式。在
掉电模式下,进入时钟振荡器的信号被封锁,振荡器停止 工作。
0 0
33
2.8.1 空闲模式 1. 空闲模式进入 如把PCON中的IDL位置1,则把通往CPU的时钟信号关断,便进
入空闲模式。
0
34 34
2.8.1 空闲模式 虽然振荡器运行,但是CPU进入空闲状态。 所有外围电路(中断系统、串行口和定时器)仍继续工作,
CPU内部SP、PC、PSW、A、P0~P3端口等所有其他寄存
30
看门狗的启动和清0的方法是一样的。
实际应用中,用户只要向寄存器WDTRST(地址为A6H) 先写入1EH,接着写入E1H,看门狗定时器便启动计数。
为防止看门狗定时器启动后产生不必要的溢出,在执行程 序的过程中,应在16384µs(时钟为12MHz时)内不断地复 位清“0” 看门狗。
31
2.10 低功耗节电模式 两种低功耗节电工作模式:空闲模式(idle mode)和掉
电保持模式(power down mode)。 掉电保持模式下,Vcc可由后备电源供电。 两种节电模式的内部控制电路。
2 AT89C51单片机硬件结构
AT89C1051
AT89C2051
AT89C51 AT89S51 AT89C52 AT89S52
2
4 4 8 8
128
128 128 256 256
15
32 32 32 32
2
2 2 3 3
5
5 5 6 6
20
40 40 40 40 ISP ISP
AT89LV51
AT89LV52
4
8
128
256
32
LJMP S_INT0
0030H
0003H
…
0030H 0031H
…
22
程序计数器PC
1. PC是一个16位的地址寄存器,用于存放下一条将要执行 的指令在程序存储器中的地址。 2. PC不属于特殊功能寄存器,不可访问,在物理结构上是独 立的。 3.PC的基本工作方式有: ⑴ 自动加1。CPU从程序存储器中每读一个字节,自动执行 PC+1→PC;
Atmel公司的89系列单片机主要有AT89S51、 AT89S52 AT89C51、AT89C2051和AT89C1051等 型号。 6
ATMEL的51系列单片机
型号 片内Flash ROM (KB) 1 片内 RAM (B) 128 I/O口线 (位) 15 定时器/ 计数器 (个) 1 引脚 中断 源 (条) (个) 3 20 备注
XTAL2(18脚):接外部晶振和微调电容的另一端。
(*外部时钟)
VCC
XTAL1 C1 C2 晶振 8051 XTAL2
外部时钟 信号 TTL
XTAL2 8051 XTAL1 VSS
12
控制引脚(4根)
RST/VPD(9脚):复位信号/备用电源输入引脚。
第2章 AT89系列单片机的硬件体系结构(结构、引脚、存储器配置、专用寄存器、时钟与时序、工作方式)
2021/8/1
3
2.1 AT89系列单片机概述
2.1.1 AT89系列单片机简介
AT89系列单片机是与MCS—51系列单片机兼容 的低功耗高性能8位Flash单片机。它是在MCS-51 的技术内核为主导的基础上倾注了ATMEL公司优良 技术进行新的设计和开发,使之功能更强、更具特色, 尤其是AT89S系列单片机具有在系统可程序设计功能, 使生产维护更加方便灵活。
当CPU访问64KB的外部数据存储器时,就用
DPTR作地址指针,存放外部内存的地址;
当CPU访问64KB的程序存储器时,DPTR用作基
址寄存器。
CPU也可单独对DPH、DFra bibliotekL操作,即将DPTR分成
两个寄存器使用。
2021/8/1
21
2.3 AT89系列单片机的存储器
结构AT89系列单片机采用哈佛结构,有单独的程序存储器和
(2) 堆栈指针SP 堆栈指针SP(stack pointer)是一个8位特殊功能寄存器。
它指示出堆栈顶部在内部RAM中的位置。系统复位后,SP初 始化为07H,使得堆栈事实上由08H单元开始。考虑到08H ~1FH单元分属于工作寄存器区1~3,若程序设计中要用到 这些区,则最好把SP值改置为1FH或更大的值如60H。
处理情况。
例如:有一个单片机型号为“AT89C51—12PI”,
则表示意义为该单片机是 ATMEL公司的Flash单片
机,内部是CMOS结构,速度为12 MHz,封装为塑
封DIP,是工业用产品,按标准处理工艺生产。
2021/8/1
9
2.2 AT89系列单片机的结构原
2.2理.1 AT89系列单片机的基本组成
2021/8/1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(5)OV(PSW.2)溢出标志位:当执行算术指令时,OV用来 指示运算结果是否产生溢出。如果结果产生溢出,OV=1;否则, OV=0。
(6)PSW.1位:保留位,未用。 (7)P(PSW.0)奇偶标志位:该标志位表示指令执行完时, 累加器A中“1”的个数是奇数还是偶数。 P=1,表示A中“1”的个数为奇数。 P=0,表示A中“1”的个数为偶数。 该标志位对串行口通信中的数据传输有重要的意义。在串行通 信中,常用奇偶检验的方法来检验数据串行传输的可靠性。
RESET); (3)I/O口引脚—P0、P1、P2与P3,为4个8位并行I/O口的外
部引脚。 下面结合图2-2介绍各引脚的功能。
2.2.1 电源及时钟引脚
1.电源引脚 (1)VCC(40脚):接+5V电源。 (2)VSS(20脚):接数字地。
12
2.时钟引脚 (1)XTAL1(19脚):片内振荡器的反相放大器和外 部时钟发生器的输入端。使用片内的振荡器时,该引 脚外接石英晶体和微调电容。当采用外部的独立时钟 源时,本引脚接外部时钟振荡器的信号。 (2)XTAL2(18脚):片内振荡器反相放大器的输出 端。当使用片内振荡器时,该引脚连接外部石英晶体 和微调电容。当使用外部时钟源时,本引脚悬空。
负载。 P3口还可提供第二功能,其第二功能定义如表2-1
所示,8位)及数据总线使用时, 为双向口。作为通用的I/O口使用时,需加上拉电阻,这时为准双 向口。而P1口、P2口、P3口均为准双向口。
双向口P0与P1口、P2口、P3口这3个准双向口相比,多了一 个高阻输入的“悬浮”态。这是由于P0口作为数据总线使用时, 多个数据源都挂在数据总线上,当P0口不需与其他数据源打交道 时,需要与数据总线高阻“悬浮”隔离。而准双向I/O口则无高阻 的“悬浮”状态。另外,准双向口作通用I/O的输入口使用时,一 定要向该口先写入“1”。以上的准双向口与双向口的差别,在学 习本章2.5节的P0~P3口的内部结构后,将会有更深入的理解。
34
程序计数器的计数宽度决定了访问程序存 储器的地址范围。AT89S51单片机中的PC位数 为16位,故可对64KB(=216B)的程序存储器 进行寻址。
35
2.4 AT89S51单片机存储器的结构
AT89S51单片机存储器结构为哈佛结构,即程序存储器空 间和数据存储器空间是各自独立的。
32
2.3.2 控制器
控制器的主要任务是识别指令,并根据指令的性
质控制单片机各功能部件,从而保证单片机各部分能 自动协调地工作。
控制器主要包括程序计数器、指令寄存器、指令
译码器、定时及控制电路等。其功能是控制指令的读 入、译码和执行,从而对单片机的各功能部件进行定 时和逻辑控制。
程序计数器PC是控制器中最基本的寄存器,它是 一个独立的16位计数器,用户不能直接使用指令对PC 进行读写。当单片机复位时,PC中的内容为0000H, 即CPU 从程序存储器0000H单元取指令,开始执行程 序。
23
2.3 AT89S51的CPU
AT89S51的CPU是由运算器和控制器构成。
2.3.1 运算器
运算器主要用来对操作数进行算术、逻辑和位操
作运算。
算术逻辑运算单元ALU 程序状态字寄存器PSW 累加器A 位处理器 两个暂存器
1.算术逻辑运算单元ALU ALU的功能强,不仅可对8位变量进行逻辑与、或、
(2)CPU中数据传送大多都通过累加器A,故累加器A又 相当于数据的中转站。为解决累加器结构所带来的“瓶颈堵 塞”问题,AT89S51单片机增加了一部分可以不经过累加器 A的传送指令。
累加器A的进位位Cy(位于程序状态字特殊功能寄存器 PSW中)是特殊的,因为它同时又是位处理器的位累加器。
26
3.程序状态字寄存器PSW AT89S51单片机的程序状态字寄存器(Program
14
(2)EA/ VPP (Enable Address/Voltage Pulse of Programing ,31脚) (External Access Enable)为该引脚的第一功能:外部程序 存储器访问允许控制端。
当EA=1时,在单片机片内的PC值不超出0FFFH(即不超 出片内4KB Flash存储器的最大地址范围)时,单片机读片 内程序存储器(4KB)中的程序代码,但PC值超出0FFFH( 即超出片内4KB Flash存储器地址范围)时,将自动转向读 取片外60KB(1000H~FFFFH)程序存储器中的程序代码。
Status Word,PSW)位于单片机片内的特殊功能寄存 器区,字节地址为D0H。PSW的不同位包含了程序运 行状态的不同信息,其中4位保存当前指令执行后的状 态,以供程序查询和判断。PSW格式见图2-3。
27
RIWNDRT01
28
PSW中各个位的功能如下。 (1)Cy(PSW.7)进位标志位:也可写为C。在执行 算术运算和逻辑运算指令时,若有进位/借位,则Cy = 1 ;否则,Cy=0。在位处理器中,它是位累加器。 (2)Ac(PSW.6)辅助进位标志位:Ac标志位用于 在BCD码运算时进行十进位调整。即在运算时,当D3位 向D4位产生进位或借位时,Ac=1;否则,Ac=0。
19
(3)P2口:P2.7~ P2.0引脚 准双向I/O口,具有内部上拉电阻,可驱动4个LS型
TTL负载。 当AT89S51扩展外部存储器及I/O口时,P2口作为
高8位地址总线用,输出高8位地址。 P2口也可作为通用的I/O口使用。
20
(4)P3口:P3.7~ P3.0 准双向I/O口,具有内部上拉电阻。 P3口可作为通用的I/O口使用,可驱动4个LS型TTL
ALE的第一功能为CPU访问外部程序存储器或外部数 据存储器提供低8位地址锁存信号,将单片机P0口发出的 低8位地址锁存在片外地址锁存器中。
PROG为该引脚的第二功能,在对片内Flash存储器编 程时,此引脚作为编程脉冲输入端。 (4)PSEN(Program Strobe ENable,29脚)
片内或片外程序存储器的读选通信号,低电平有效。
15
当EA =0时,只读取外部的程序存储器中的内容,读取 的地址范围为0000H~FFFFH,片内的4KB Flash 程序 存储器不起作用。
VPP为该引脚的第二功能,在对片内Flash进行编程 时,VPP引脚接入编程电压。
16
(3)ALE/PROG(Address Latch Enable/PROGramming ,30脚)
13
2.2.2 控制引脚
控制引脚提供控制信号,有的引脚还具有复用功能。 (1)RST(RESET,9脚)
复位信号输入端,高电平有效。在此引脚加上持续 时间大于2个机器周期的高电平,就可使单片机复位。在 单片机正常工作时,此引脚应为≤0.5V的低电平。
当看门狗定时器溢出输出时,该引脚将输出长达96 个时钟振荡周期的高电平。
9
2.2 AT89S51的引脚功能
掌握AT89S51单片机,应首先熟悉并掌握各引 脚的功能。AT89S51与各种8051单片机的引脚是互 相兼容的。目前,AT89S51单片机多采用40只引脚 的塑料双列直插封装(DIP)方式,如图2-2所示。
10
图2-2 AT89S51双列直插封装方式的引脚
40只引脚按功能可分为如下3类: (1)电源及时钟引脚—VCC、VSS;XTAL1、XTAL2; (2)控制引脚—PSEN、ALE/PROG、EA/ VPP、RST(即
33
PC的基本工作过程是:CPU读取指令时,PC内容 作为欲读取指令的地址发送给程序存储器,然后程序存 储器按此地址输出指令字节,同时PC自动加1,这也是 为什么PC被称为程序计数器的原因。由于PC实质上是 作为程序寄存器的地址指针,所以也称其为程序指针。
PC内容的变化轨迹决定了程序的流程。由于PC是 用户不可直接访问的,当顺序执行程序时自动加1;执 行转移程序或子程序或中断子程序调用时,由运行的指 令自动将其内容更改成所要转移的目的地址。
7
(3)程序存储器(Flash ROM):用来存储程序。 AT89S51片内有4KB的Flash存储器,若片内程序存 储器容量不够,片外最多可外扩64KB程序存储器。
(4)中断系统:具有5个中断源,2级中断优先权。 (5)定时器/计数器:片内有2个16位的定时器/计数器
具有4种工作方式。 (6)串行口:1个全双工的异步串行口(UART),具
6
AT89S51片内的各部件通过片内单一总线连接而成,其基 本结构依旧是CPU加上外围芯片的传统微型计算机结构模式,但 CPU对各种外围部件的控制是采用特殊功能寄存器SFR(Special Function Register)的集中控制方式。
下面对图2-1中的片内各部件作简单介绍。 (1)CPU(微处理器):8位的CPU,包括了运算器和控制器 两大部分,此外还有面向控制的位处理和位控功能。 (2)数据存储器(RAM):片内为128B(增强型的52子系列为 256B),片外最多还可外扩64KB的数据存储器。
17
2.2.3 并行I/O口引脚 (1)P0口:P0.7~ P0.0引脚
漏极开路的双向I/O口。当AT89S51扩展外部存储 器及I/O接口芯片时,P0口作为地址总线(低8位)及数 据总线的分时复用端口。
P0口也可作为通用I/O口使用,但需加上拉电阻, 这时为准双向口。P0口可驱动8个LS型TTL负载。
(2)P1口:P1.7~ P1.0引脚 准双向I/O口,具有内部上拉电阻,可驱动4个LS型
TTL负载。 P1口是完全可提供给用户使用的准双向I/O口。 P1.5/MOSI、P1.6/MISO和P1.7/SCK也可用于对片
内Flash存储器的串行编程和校验,它们分别是串行数据 输入、串行数据输出和移位脉冲引脚。
AT89S51单片机具有如下外围部件及特性: (1)8位CPU; (2)数据存储器(128B RAM); (3)程序存储器(4KB Flash ROM); (4)4个8位可编程并行I/O口(P0口、P1口、P2口和P3 口); (5)2个可编程16位定时器/计数器;