第二章单片机硬件结构1Word格式文档下载.docx

上传人:b****1 文档编号:4683113 上传时间:2023-05-03 格式:DOCX 页数:20 大小:803.69KB
下载 相关 举报
第二章单片机硬件结构1Word格式文档下载.docx_第1页
第1页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第2页
第2页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第3页
第3页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第4页
第4页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第5页
第5页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第6页
第6页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第7页
第7页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第8页
第8页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第9页
第9页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第10页
第10页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第11页
第11页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第12页
第12页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第13页
第13页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第14页
第14页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第15页
第15页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第16页
第16页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第17页
第17页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第18页
第18页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第19页
第19页 / 共20页
第二章单片机硬件结构1Word格式文档下载.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

第二章单片机硬件结构1Word格式文档下载.docx

《第二章单片机硬件结构1Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《第二章单片机硬件结构1Word格式文档下载.docx(20页珍藏版)》请在冰点文库上搜索。

第二章单片机硬件结构1Word格式文档下载.docx

片外数据存储器可扩展到64KB;

18个特殊功能寄存器占21个字节;

(21个占26个字节)

4个8位I/O(输入/输出)口线P0、P1、P2、P3;

2个16位定时器/计数器;

(3个、对8032/8052)

1个具有5个中断源,2个优先级的嵌套中断结构;

1个全双工串行I/O口(通用异步接收发送器);

111条指令,较强的位寻址、位处理能力

片内采用单总线,片外可扩展为3总线结构;

单一+5V电源。

二、内部结构及工作原理见图2-2

工作原理:

将程序存入ROM中;

由振荡器产生控制信号;

在控制信号的控制下,从程序存储器中取出指令,将指令译码后,发出微控制序列信号,完成数据的运算、存储、传送;

程序计数器(PC)自动加1,取下一条指令,遇到跳转指令则跳转到相应的程序地址;

三、外部引脚说明

1)主电源引脚:

Vss和Vcc

VSS(20)接地,VCC(40)一般接+5V(包括对EPROM编程和验证)。

2)外接晶体 XTALI入端,XTAL2出端。

XTAL2(18)反向放大器的输出端;

XTAL1(19)反向放大器的输入端,一般外接晶振和电容。

3)控制或其它电源复用引脚RST/VPD、ALE/PROG、PSEN、EA/Vpp

RST/VPD(9)复位/内存备用电源,当振荡器运行时,在此引脚上出现两个机器周期的高电平将使单片机复位。

Vcc掉电期间,VPD引脚可接上备用电源,以保持内部RAM的数据。

ALE/(30)地址锁存控制/编程及冲输入

ALE/(30)当访问外部存贮器时,ALE的输出用于地址锁存的低位字节,ALE的频率为振荡器频率的1/6。

当不访问外部存贮器时,ALE可用作对外输出的时钟,或作定时器使用。

(检查单片机是否正常工作,可以用示波器检查ALE信号)

ALE可以驱动(吸收或输出电流)8个LSTTL。

(反映端口的负载能力,通常把100μA电流定义为1个LSTTL负载的输入电流)

对于EPROM型单片机,在EPROM编程期间,此引脚用于输入编程脉冲(PROG)。

PSEN(29)外部程序存贮器读选通信号。

在有外部程序存贮器取指令(或常数)期间,每个机器周期两次PSEN有效。

(由于现在程序一般都在片内存储,该引脚应用很少)

PSEN同样可以驱动(吸收或输出电流)8个LSTTL输入。

当EA/Vpp=1时,CPU访问内部程序存贮器,在PC(程序计数器)值超过0FFFH(对8052)时,将自动转向执行外部程序存贮器。

当EA/Vpp=0时,CPU始终访问外部程序存贮器。

在89C51系列单片机中,有闪速存储器E2PROM,给片内固化程序很方便,所以一般程序都在单片机片内存储,此时一定要将EA接高电平)

对于EPROM型单片机,在EPROM编程处理期间,此引脚用于施加Vpp(21伏)的编程电源(不同型号则编程电压不同)。

〈4〉输入/输出引脚P0.0~P0.7,P1.0~P1.7,P2.0~P2.7和P3.0~P3.7

P0.0~P0.7(39~32),P0是一个双向I/O口。

在访问外部存贮器时,它是分时复用的低八位地址和数据总线。

P1.0~p1.7(1~8),P1是一个带有内部上拉电阻的8位双向I/O口。

P2.0~P2.7(21~28),P2是一个带内部上拉电阻的8位双向I/O口。

在访问外部存贮器时,它送出高8位地址。

P3.0~P3.7(10~17),P3是内部带上拉电阻的8位双向I/O口。

有第二功能。

 

第二节微处理器

一、运算器

1、算术逻辑单元ALU

完成加、减、逻辑运算、数据传送、程序转移等操作。

特点:

1)在B寄存器配合下可以完成乘法与除法操作。

2)可进行多种内容交换操作;

3)能作比较判跳;

4)有很强的位操作功能

2、寄存器

1)累加器ACC(Accumulator):

存放操作数和结果,可以位寻址。

在8051中使用最频繁。

(特别要注意)

2)寄存器B:

配合A完成乘、除法运算。

(1)放第二操作数

(2)乘积高位字节

(3)除法的余数

3)程序状态字PSW(ProgrameStateWord):

(教材中放到寄存器中)

D7HD6HD5HD4HD3HD2HD1HD0H(地址)

CY

AC

F0

RS1

RS0

OV

F1

P

CY(C)-进位/借位标志;

位累加器。

有进(借)位时自动置1。

AC-辅助进/借位标志;

用于十进制调整。

第4、5位之间有进(借)位时自动置1。

F0、F1-用户定义标志位;

软件置位/清零。

检测、控制程序运行。

RS1、RS0-工作寄存器组选择位,后面讲。

OV-溢出标志;

硬件置位/清零。

1)加法:

最高位、次高位之一有进位时置1;

2)减法:

最高位、次高位之一有借位时置1;

3)乘法:

积大于255时置1

P-奇偶标志;

累加器A中1的个数为奇数P=1;

否则P=0。

在串行通信,若采用偶校验,将待发送的值送入A中,P就会按A中的奇偶赋值,然后将P送到发送的校验位。

二、控制器

组成:

指令寄存器、指令译码器、定时及控制等

作用:

按指令产生相应的操作时序和控制信号

三、振荡器和CPU时序

1、振荡器:

1)内部振荡方式:

89C51单片机片内有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。

把放大器与作为反馈元件的晶体振荡器或陶瓷谐振器连接,就构成了内部自激振荡器并产生振荡时钟脉冲(如图2-4所示)。

对AT89xx,频率位12M,24M等。

2)外部振荡方式:

外部振荡方式就是把外部已有的时钟信号引入单片机内(如图2-5所示)。

在XTAL1和XTAL2两端跨接石英晶体及两个电容就构成了稳定的自激振荡器。

电容器Cl和C2通常都取30pF左右,对振荡频率有微调作用。

振荡频率范围是1.2—33MHz。

常用12MHz、24MHz。

2、几个周期概念

1)振荡周期:

为单片机提供时钟信号的振荡源的周期,一般为晶振频率。

2)机器状态周期:

是振荡源信号经二分频后形成的时钟脉冲信号。

89C51的片内振荡器及时钟发生器

3)机器周期:

通常将完成一个基本操作(访问存储器1次)所需的时间称为机器周期。

在此为12个振荡周期。

(注意,现在发展的趋势是减少机器周期的振荡周期)

4)指令周期:

是指CPU执行一条指令所需要的时间。

按指令不同,一个指令周期通常含有1~4个机器周期。

学习指令是要注意指令周期。

若89C51单片机外接晶振为12MHz时,则单片机的四个周期的具体值为:

振荡周期=1/12MHz=1/12μs=0.0833μs

时钟周期=2/12MHz=0.167μs

机器周期=12/12MHz=1μs

指令周期=1~4μs(不同指令周期不同,学习指令时注意)

3、指令的执行周期

●每一条指令的执行都可以包括取指和执行两个阶段。

●在取指阶段,CPU从内部或者外部ROM中取出指令操作码及操作数,然后再执行这条指令的逻辑功能。

●在8051指令系统中,其指令可由单字节、双字节和三字节组成。

●从机器执行指令的速度看,单字节和双字节指令都可能是单周期或双周期,

●而三字节指令都是双周期,

●只有乘、除指令占四个周期。

在S1P2、S4P2,两次读指令。

●如果是单字节指令,在S4仍作读操作,但无效,且程序计数器PC不加1。

●图2-7分别给出了单字节单周期和双字节单周期指令的时序,都在S6P2结束时完成执行指令的操作。

●在ALE的下降沿S2P1、S5P1锁存P0地址信息。

●P2口高8位地址信息在ALE低电平期间有效。

●在每个机器周期的S5P2中断采样,若有中断,在下一个周期的S1期间响应。

第三节存储器

一、89C51系列存储器的特点

1、程序存储器ROM和数据存储器RAM分开编址;

2、ROM、RAM有片内片外之分。

二、程序存储器

1、程序计数器PC(programCounter程序当前执行的地址)

PC是一个16位的计数器,由两个八位寄存器PCH和PCL组成,用于存放一条要执行的指令地址,寻址范围为64kB,PC有自动加1功能,即完成了一条指令的执行后,其内容自动加1。

PC本身并没有给出地址,因而不可由用户寻址,用户无法对它进行读写,但是可以通过转移、调用、返回等指令改变其内容,以控制程序的执行顺序。

2、程序存储器的特点

1)对于8051,片内程序存储器(ROM)共4KB,地址为0000H~0FFFH;

对于8052,片内程序存储器(ROM)共8KB,地址为0000H~1FFFH;

8031、8032无片内程序存储器。

AT89C5x采用闪速存储技术,擦、写程序很快。

2)可扩展外部程序存储器,扩展量为64KB-内部存储器量。

当程序计数器由内部(8051为0FFFH)执行到外部(1000H)时,会自动跳转。

编址规律为先片内,后片外,片内、外连续。

如果要先执行片内的程序,必须给

引脚接高电平;

引脚为低电平,只访问片外程序存储器。

(一般不提倡扩展片外程序存储器,如不够可选不同的型号)

3)单片机复位后,程序从0000H开始运行,一般在该单元中存放一条绝对跳转指令。

4)有5个(对8052为6个)单元地址为中断服务程序入口地址,见下表:

存储单元保留目的

0000H一0002H复位后初始化引导程序(经常在0000H放跳转语句)

0003H一000AH外部中断0

000BH一0012H定时器0溢出中断

0013H一001AH外部中断1

001BH一002AH定时器1溢出中断

0023H一002AH串行端口中断

002BH定时器2中断(8052才有)

注意:

对编写中断程序很重要

3、片内程序存储器的写入与加密

1)EPROM的写入,用编程器,擦除用紫外线照射。

平时应盖住照射口。

EEPROM可以用电擦除。

2)AT89Cxx采用闪速(Flash)存储技术,写和擦除的速度都很快,4K写约3s,擦除10ms;

可反复编程1000次以上;

数据可保持10-40年。

AT89Sxx系列可以在线编程。

3)加密,程序写入后可以经过加密,有些可以多达3道加密,可以方便的保护研究成果。

加密后,无法读出程序源代码。

三、

数据存储器

1、数据存储器的结构

数据存储器分为三部分是:

1)片内数据存储器。

片内数据存储器只有较少的字节,对于AT89C51只有256B,而AT89C52也只有256B+128B,但在单片机中起到相当重要的作用,必须掌握。

其中128B是用于特殊功能寄存器,不能存储用户数据。

2)特殊功能寄存器。

专用于控制、管理片内算术逻辑部件、并行I/O口、串行I/O口、定时器/计数器、中断系统等功能模块的工作。

在编程时用的很多,要求必须掌握。

在AT89C52中,片内数据存储器的高128字节地址与特殊功能寄存器的地址重叠,因此在访问片内数据存储器的高128字节,必须用简接寻址的指令访问。

3)外部数据存储器。

当内部数据存储器不够用时,可以扩展外部数据存储器,最多可以扩展64KB。

地址是0000H~0FFFFH。

片外数据存储器与片内数据存储器空间低地址0000H—00FFH是重迭的,CPU通过MOVX指令访问外部数据存储器,用间接寻址方式,R0、R1和DPTR都可作间接寄存器。

注意,外部RAM和扩展的I/O接口是统一编址的,所有的外扩I/O口都要占用64KB中的地址单元。

2、片内数据存储器

1)片内RAM的配置:

AT89C51单片机片内RAM的配置如下图:

图2-11片内RAM的配置

片内RAM为128字节,地址范围为00H~FFH,(有些教材为256B,含专用寄存器的128B字节。

2)工作寄存器:

作用:

供用户临时存放数据或8位地址,编程时使用频繁。

结构:

00H~1FH共32单元是4个通用工作寄存器区。

每一个区有8个通用寄存器R0~R7。

寄存器和RAM地址对应关系如下表:

注意:

a、寄存器名称与数据重叠,一个名称下有4个地址,如R2对应02H、0AH、12H、1AH,编程时到底是那一个地址呢,规定是当前工作寄存器的地址。

b、工作区的选择

用PSW寄存器中的RS0、RS1进行选择,见上表。

在单片机复位后,

RS1、RS0均为“0”、自动选择工作寄存器组0。

3)位寻址区

位寻址区(20H——2FH)共128个单元。

如下表:

位寻址区可以按位寻址,每一位对应有位地址。

也有字节地址,可以按字节寻址。

位地址与字节地址在名称上有完全重复的,如字节寻址中的20H,在位寻址中也有20H。

用指令进行区别。

4)数据缓冲区(30H-7FH)共80个单元,对于52系列(30H-FFH)共208个单元。

该单元由用户使用。

对52系列,高128字节其地址与特殊功能寄存器地址重叠,访问时要用间接寻址:

(在指令中要强调)

MOVR0,#80H

MOV@R0,#34H

上面语句是给52系列的80H单元写立即数34H。

5)三个区域统一编址,可以统一调度使用,如只用一个工作寄存器区,其他的可以作为用户区使用。

6)堆栈区域与栈指针SP(81H)(81H指堆栈寄存器的地址)

8051同一般微处理器一样,设有堆栈。

数据的存取是以“后进先出”的结构方式处理的。

这种数据结构方式对于处理中断、调用子程序都非常方便。

8051的堆栈结构属于向上生长型的堆栈。

在使用堆栈之前,先给SP赋值,以规定堆栈的起始位置,称为栈底。

当数据压入堆栈后,SP自动加1,即RAM地址单元加1以指出当前栈顶位置。

系统复位后,SP初始化为07H,即指向07H的RAM单元,数据从08H开始存放。

08H是工作寄存器的第一组地址,若工作寄存器或位寻址区要使用,必须改变堆栈区域,改变的方法是改变指针。

实际堆栈区一般在30H~7FH之间。

3、特殊功能寄存器(SFR)(也称作专用寄存器)

1)8051片内高128字节RAM中,有18个专用寄存器(SFR),占用21个字节;

(不含程序计数器PC外)

8052有21个专用寄存器(SFR),占用26个字节;

它们离散地分布在80H—FFH的RAM空间中。

2)访问特殊功能仅允许使用直接寻址方式。

3)在21(89C52)个特殊功能寄存器SFR中,有12(89C52)个特殊功能寄存器,它们的字节地址正好能被8整除(89C51是11个)。

具有位寻址能力,该位地址和位寻址区的地址连续排列。

没有位地址的不能按位访问,如TMOD、PCON。

4)几个特殊功能寄存器介绍

(1)数据指针DPTR(83H,82H)

●DPTR是一个16位的特殊功能寄存器,其高位字节寄存器用DPH表示(地址83H),低位字节寄存器用DPL表示(地址82H)。

●DPTR既可以作为一个16位寄存器来处理,也可以作为两个独立的8位寄存器DPH和DPL使用。

●DPTR主要用以存放16位地址,以便对64K片外RAM作间接寻址。

(2)I/O端口P0—P3(80H,90H,A0H,B0H)

●P0—P3为四个8位特殊功能寄存器,分别是四个并行I/O端口的锁存器。

它们都有字节地址,每一个口锁存器还有位地址,所以每一条I/O线独立地用作输入或输出时,数据可以锁存;

作输入时,数据可以缓冲。

其他的在以后陆续介绍。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2