单片机控制技术与应用(刘靖)课件2汇总

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(5)上拉电阻
上拉电阻就是当作为输入时,上拉电阻将其电位 拉高。若输入为低电平,则可提供电流源。所以 如果P0口作为输入时处在高阻抗状态,只有外接 一个上拉电阻才能有效。
(6Leabharlann BaiduALE/PROG地址锁存控制信号
在系统扩展时,ALE用于控制把P0口的输出低8位
地址送锁存器锁存起来,以实现低位地址和数据 的隔离。ALE有可能是高电平,也有可能是低电 平。当ALE是高电平时,允许地址锁存信号,当访 问外部存储器时,ALE信号负跳变(即由正变负), 将P0口上低8位地址信号送入锁存器。当ALE是 低电平时,P0口上的内容和锁存器输出一致。
033开始的用户ROM区域,用户可以通过ORG指 令任意安排,但在应用中应注意,不要超过实际的 存储空间,不然程序就会找不到。
(3)数据存储器
数据存储器也称为随机存取数据存储器。数据 存储器分为内部数据存储和外部数据存储。
MCS-51内部RAM有128B或256B的用户数据存 储(不同的型号有分别),片外最多可扩展64KB的 RAM,构成两个地址空间。访问片内RAM用 “MOV”指令,访问片外RAM用“MOVX”指 令,它们是用于存放执行的中间结果和过程数据 的。MCS-51的数据存储器均可读写,部分单元还 可以位寻址。
扩展外部ROM。当读取内部程序存储器超过0 FFFH(8051)、1FFFH(8052)时,自动读取外部 ROM。
② 接低电平时,CPU读取外部程序存储器 (ROM)。8031单片机内部是没有ROM的,那么在 应用8031单片机时,这个脚是一直接低电平的。
③ 8751烧写内部EPROM时,利用此脚输入21V的 烧写电压。
有内部EPROM的单片机芯片(例如8751),为写入 程序需提供专门的编程脉冲和编程电源,这些信 号也是由信号引脚的形式提供的,即:
编程脉冲 30脚(ALE/PROG);
编程电压(25V) 31脚(EA/Vpp)。
有些印刷线路板上会有一个电池,这就是单片机 的备用电源。当外接电源下降到下限值时,备用 电源就会经第二功能的方式由第9脚(即RST/ VPD)引入,以保护内部RAM中的信息不会丢 失。
2.1 MCS-51单片机基本组成及引脚功能 2.1.1 单片机的基本组成
(1)中央处理器(CPU)
MCS-51的CPU能处理8位二进制数或代码。 CPU是单片机的主要核心部件,在CPU里包含了 运算器、控制器以及若干寄存器等部件。
(2)内部数据存储器(RAM)
MCS-51单片机芯片共有256个RAM单元,其中后 128单元被专用寄存器占用,能作为寄存器供用户 使用的只是前128单元,用于存放可读写的数据, 因此通常所说的内部数据存储器就是指前128单 元,简称内部RAM,地址范围为00H~FFH(256B)。 它是一个多用多功能数据存储器,有数据存储、 通用工作寄存器、堆栈、位地址等空间。
MCS-51单片机的内部数据存储器在物理上和逻 辑上都分为两个地址空间,即数据存储器空间(低 128单元)和特殊功能寄存器空间(高128单元)。
这两个空间是相连的,从用户角度而言,低128单 元才是真正的数据存储器。
低128单元中片内数据存储器为8位地址,所以最
大可寻址的范围为256个单元地址,对片外数据存 储器采用间接寻址方式,R0、R1和DPTR都可以 作为间接寻址寄存器。R0、R1是8位的寄存器, 即R0、R1的寻址范围最大为256个单元,而DPTR 是16位地址指针,寻址范围就可达到64KB。也就 是说在寻址片外数据存储器时,寻址范围超过了2 56B,就不能用R0、R1作为间接寻址寄存器,而必
(7)中断控制系统
MCS-51单片机的中断功能较强,以满足不同控制 应用的需要。51系列有5个中断源(52系列有6个 中断源),即外中断2个,定时中断2个,串行中断1 个。全部中断分为高级和低级共两个优先级别, 优先级别的设置将在后面进行详细的讲解。
(8)定时与控制部件
MCS-51单片机内部有一个高增益的反相放大器, 其输入端为XTAL1,输出端为XTAL2。MCS-51 芯片的内部有时钟电路,但石英晶体和微调电容 需外接。时钟电路为单片机产生时钟脉冲序 列。
(7)PSEN外部程序存储器读选通信号
在读外部ROM时PSEN低电平有效,以实现外部 ROM单元的读操作。
① 内部ROM读取时,PSEN不动作。
② 外部ROM读取时,在每个机器周期会动作两 次。
③ 外部RAM读取时,两个PSEN脉冲被跳过,不会 输出。 ④ 外接ROM时,与ROM的OE脚相接。 (8)EA/VPP访问程序存储器控制信号 ① 接高电平时,CPU读取内部程序存储器(ROM),
码组成的代码串,只是程序代码存放于程序存储 器中。
MCS-51具有64KB程序存储器寻址空间,用于存 放用户程序、数据和表格等信息。对于内部无 ROM的8031单片机,它的程序存储器必须外接, 空间地址为64KB,此时单片
机的
图2-3 存储器结构图
端必须接地,强制CPU从外部程序存储器
读取程序。对于内部有ROM的8051等单片机,正
(5)并行I/O口
MCS-51共有4个8位的I/O口(P0、P1、P2、P3), 用以实现数据的输入输出。具体功能将会在后 面章节中详细论述。
(6)串行口
MCS-51有一个可编程的全双工的串行口,以实现 单片机和其他设备之间的串行数据传送。该串 行口功能较强,既可作为全双工异步通信收发器 使用,也可作为移位器使用。RXD(P3.0)脚为接 收端口,TXD(P3.1)脚为发送端口。
另一组特殊单元是0003H~002AH。这40个单元 各有用途,它们被均匀地分为5段,定义如下。
0003H~000AH外部中断0中断地址区。 000BH~0012H定时/计数器0中断地址区。 0013H~001AH外部中断1中断地址区。 001BH~0022H定时/计数器1中断地址区。 0023H~002AH串行中断地址区。
2.1.3 MCS-51单片机的存储器 (1)片内存储器 片内存储器1.2.1节已有介绍。图2-3为存储器结 构图。 (2)程序存储器
一个微处理器能够聪明地执行某种任务,除了它 们强大的硬件外,还需要运行的软件。其实微处 理器并不聪明,它们只是完全按照人们预先编写 的程序执行任务。设计人员编写的程序就存放 在微处理器的程序存储器中,俗称只读程序存储 器(ROM)。程序相当于给微处理器处理问题的 一系列命令。其实程序和数据一样,都是由机器
在没有访问外部存储器期间,ALE以1/6振荡周期 频率输出(即6分频);当访问外部存储器时,以1/12 振荡周期输出(12分频)。可以看到,当系统没有 进行扩展时,ALE会以1/6振荡周期的固定频率输 出,因此可以作为外部时钟,或者外部定时脉冲使 用。
PORG为编程脉冲的输入端。在8051单片机内部 有一个4KB或8KB的程序存储器(ROM)。ROM 的作用是用来存放用户需要执行的程序的,程序 通过编程脉冲输入才能写进去,这个脉冲的输入 端口就是PROG。
安放一条无条件转移指令,指向程序存储器的其 他真正存放中断服务程序的空间去执行,这样中 断响应后,CPU读到这条转移指令,便转向其他地 方去继续执行中断服务程序。
图2-4是ROM的地址分配图。
图2-4 ROM结构图
从图中可以看到,0000H~0002H只有3个存储单 元,3个存储单元在程序存放时是存放不了实际意 义的程序的。通常在实际编写程序时是在这里 安排一条ORG指令,通过ORG指令跳转到从0033 H开始的用户ROM区域,再来安排程序语言。从0
可见,以上的40个单元是专门用于存放中断处理 程序的地址单元,中断响应后,按中断的类型自动 转到各自的中断区去执行程序。每个中断服务 程序只有8个字节单元,用8个字节来存放一个中 断服务程序显然是不可能的,因此,以上地址单元 不能用于存放程序的其他内容,只能存放中断服 务程序。但通常情况下,是在中断响应的地址区
(3)内部程序存储器(ROM)
MCS-51内部有4KB/8KB字节的ROM(51系列为4 KB,51系列为8KB),用于存放程序、原始数据或 表格,因此称之为程序存储器,简称内部RAM。 地址范围为0000H~FFFFH(64KB)。
(4)定时器/计数器
51系列共有2个16位的定时器/计数器(52系列共 有3个16位的定时器/计数器),以实现定时或计数 功能,并以其定时或计数结果对计算机进行控 制。定时靠内部分频时钟频率计数实现,作计数 器时,对P3.4(T0)或P3.5(T1)端口的低电平脉冲计 数。
常运行时需接高电平,使CPU先从内部的程序存
储中读取程序,当PC值超过内部ROM的容量时,
才会转向外部的程序存储器读取程序。
当 =1时,程序从片内ROM开始执行。当PC值 超过片内ROM容量时,会自动转向外部ROM空 间。
当 =0时,程序从外部存储器开始执行,例如前 面提到的片内无ROM的8031单片机,在实际应用 中就要把8031的 引脚接为低电平。
③ 不扩展时,可作一般的I/O使用,但内部无上拉 电阻,作为输入或输出时,应在外部接上拉电阻。
(2)P1口 只作I/O口使用,其内部有上拉电阻。 (3)P2口 有两个功能: ① 扩展外部存储器时,当作地址总线使用;
② 作一般I/O口使用,其内部有上拉电阻。
(4)P3口
有两个功能:除了作为I/O使用外(其内部有上拉 电阻),还有一些特殊功能,由特殊寄存器来设置, 具体功能参考后面的引脚说明。
8051片内有4KB的程序存储单元,其地址为0000 H~0FFFH。单片机启动复位后,程序计数器的内 容为0000H,所以系统将从0000H单元开始执行程 序。但在程序存储中有些特殊的单元,在使用中 应加以注意。
其中一组特殊单元是0000H~0002H。系统复位
后,PC为0000H,单片机从0000H单元开始执行程 序,如果程序不是从0000H单元开始,则应在这三 个单元中存放一条无条件转移指令,让CPU直接 去执行用户指定的程序。
图2-1为MCS-51单片机的结构框图。
图2-1 MCS-51单片机结构框图
2.1.2 单片机的引脚及其功能
MCS-51是标准的40引脚双列直插式集成电路芯 片,其引脚分布如图2-2所示。
① P0.0~P0.7:P0口8位双向口线(在引脚的39~32
号端子)。
图2-2 MCS-51引脚图
② P1.0~P1.7:P1口8位双向口线(在引脚的1~8号 端子)。
(9)RST复位信号
当输入的信号连续两个机器周期以上高电平时 即为有效,用以完成单片机的复位初始化操作。 复位后,程序计数器PC=0000H,即复位后将从程
序存储器的0000H单元读取第一条指令码。
(10)XTAL1和XTAL2
外接晶振引脚。当使用芯片内部时钟时,此两引 脚用于外接石英晶体和微调电容。当使用外部 时钟时,用于接外部时钟脉冲信号。
须用DPTR寄存器作为间接寻址寄存器。
8051单片机片内RAM共有256个单元(00H~ FFH),这256个单元共分为两部分:地址00H~7FH 单元(共128个字节)为用户数据RAM,80H~FFH 地址单元(也是128个字节)为特殊寄存器(SFR)单 元。从图2-5中可清楚地看出它们的结构分布。
图2-5 RAM结构图
① 通用寄存器区(00H~1FH)。在00H~1FH共32 个单元中被均匀地分为四块,每块包含八个8位寄 存器,均以R0~R7来命名,常称这些寄存器为通用 寄存器。这四块中的寄存器都称为R0~R7,用程 序状态字寄存器(PSW)来管理它们,CPU只要定
义这个寄存的PSW的D3和D4位(RS0和RS1),即 可选中这4组通用寄存器。对应的编码关系如表 2-1所示。若程序中并不需要用4组,那么其余的 可用作一般的数据缓冲器,CPU在复位后选中第0 组工作寄存器。
③ P2.0~P2.7:P2口8位双向口线(在引脚的21~28 号端子)。
④ P3.0~P3.7:P2口8位双向口线(在引脚的10~17 号端子)。 (1)P0口 有三个功能: ① 外部扩展存储器时,当作数据总线(如图2-2中
的D0~D7为数据总线接口);
② 外部扩展存储器时,当作地址总线(如图2-2中 的A0~A7为地址总线接口);
相关文档
最新文档