《单片机原理及基于单片机的嵌入式系统设计》第2章.ppt_第1页
《单片机原理及基于单片机的嵌入式系统设计》第2章.ppt_第2页
《单片机原理及基于单片机的嵌入式系统设计》第2章.ppt_第3页
《单片机原理及基于单片机的嵌入式系统设计》第2章.ppt_第4页
《单片机原理及基于单片机的嵌入式系统设计》第2章.ppt_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

第2章 MCS-51单片机结构和原理 2.1MCS-51系列单片机特性 2.2从外部引脚初看51单片机 2.3从引脚使用二看单片机 2.4从内部结构三看51单片机 2.5并行输入/输出端口 MCS-51系列单片机特性 MCS-51系列单片机虽已有10多种 产品,但可分为两大系列:MCS-51子 系列与MCS-52子系列。MCS-51子系 列中主要有8031、8051、8751 三种类 型。而MCS-52子系列也有3种类型 8032、8052、8752。各子系列配置见 下表所示。 图2-1 MCS-51系列单片机特性 v从图2-1所示可以看出,MCS-51系列单片机的两个 子系列在性能上略有差异。8031、 80C31芯片仅 在制造工艺上有所不同,其他完全相同,对于 8051、80C51、8751、87C51、MCS-52系列单片 机的制造工艺也是如此,即C系列芯片采用 CHMOS工艺。 v对于制造工艺为CHMOS的单片机,由于采用 CMOS技术制造,因此具有低功耗的特点。如 8051功耗约为630 mW,而80C51的功耗只有120 mW。 v8031没有片内ROM,即8031芯片外部必须外扩程 序程序器。8051芯片片内集成4K容量的ROM, 8751芯片片内集成4K容量的EPROM,与MCS-51 相比,MCS-52子系列片内程序存储器ROM从4 KB 增至8 KB。片内数据存储器由128个字节增至256 个字节。定时器/计数器增加了一个,中断源增加 了12个。 MCS51系列单片机芯片均为40个引 脚, HMOS工艺制造的芯片采用双列直插 (DIP)方式封装, 其引脚示意及功能分 类如图23所示。 CMOS工艺制造的低 功耗芯片也有采用方型封装(PLCC)的, 但为44个引脚, 其中4个引脚是不使用的 2.2 从外部引脚一看51单片机 vVCC(40脚): 接+5 V电源正端; v VSS(20脚): 接+5 V电源地端 1. 主电源引脚Vcc和Vss XTAL1:接外部晶振和微调电容的一端,在片内它是 振荡器倒相放大器的输入,若使用外部TTL时钟时, 该引脚必须接地。 XTAL2:接外部晶振和微调电容的另一端,在片内它 是振荡器倒相放大器的输出,若使用外部TTL时钟时 ,该引脚为外部时钟的输入端。 2. 外接晶体引脚XTAL1和XTAL2 :地址锁存允许信号 当8051上电正常工作后,ALE引脚不断向外输出脉冲信号, 此频率为振荡器频率的1/6,当CPU访问外部存储器时(振荡频 率的1/12),ALE输出信号作为锁存低8位地址的控制信号,不 访问片外存储器时,ALE端以振荡频率的1/6固定输出脉冲,因 此ALE信号可用作对外输出时钟或定时信号。所以利用ALE引 脚可以很方便的判断单片机是否正常工作。当单片机上电复位 后,用示波器测ALE引脚,若有脉冲输出,则说明单片机最小 系统外围电路连接正确,单片机正常工作。 该引脚的第二功能 在对片内带有4K容量EPROM的8751编程时作为编程脉冲输入 端。但是目前市面上很难买到8751芯片,通常都是89C51或 89S51,所以该引脚的第二功能可以不必了解 RST(9脚):复位引脚对于微机系统都是必不可少的 ,该引脚可以保证程序跑飞后重新开始执行程序。对51单 片机复位而言,高电平有效,只要在该引脚上输入两个机 器周期以上的高电平,就可完成复位操作。 (29脚):访问外部程序存储器选通信号, 低电平有效。(不必了解) 引脚为高电平时,CPU访问内部ROM,但当PC指针 超过0FFFH时(4K),自动转向执行外部ROM, 引脚为低电平,则访问外部ROM。 :访问内部或外部ROM选择信号 四个8位双向I/O端口(P0、P1、P2、P3); 每一条I/O线都能独立地作输入或输出。 P0口(3239)低8位地址/数据线复用或I/O口 。 P1口(18) 常用的I/O口。 P2口(2128)常用I/O口或高8位地址线。 P3口(1017)常用I/O口,每个引脚还具有第 二功能 I/O口引脚(32个引脚) P3口第二功能 2.3 从引脚使用二看单片 机 单片机最小系统的必备条件 1、电源 2、EA引脚 3、晶体振荡电路 4、复位电路 2.3.1 单片机最小系统的实现 单片机的定时控制功能是由片内的时钟电路和定时 电路来完成的, 而片内的时钟产生有两种方式: 一种 是内部时钟方式; 一种是外部时钟方式 片内振荡器及时钟信号的产生 v 采用内部时钟方式时, 片内的高增 益反相放大器通过XTAL1、 XTAL2外接 作为反馈元件的片外晶体振荡器(呈感 性)与电容组成的并联谐振回路构成一 个自激振荡器, 向内部时钟电路提供振 荡时钟。 振荡器的频率主要取决于晶体 的振荡频率, 一般晶体可在1.212 MHz 之间任选, 电容C1、 C2可在530 pF之 间选择, 电容的大小对振荡频率有微小 的影响, 可起频率微调作用。 复位电路 通过某种方式, 使单片机内各寄存器的值 变为初始状态的操作称为复位。 复位是单 片机的初始化操作,其主要功能是把PC指 针初始化为0000H,使单片机从0000H单元 开始执行程序。 如何进行复位呢?只要在单片机的RST引 脚上给出2个机器周期的高电平就可以完成 复位操作(一般复位正脉冲宽度大于10 ms )。复位分为上电复位和外部复位两种方式 。 (a) 上电复位电路; (b) 上电/外部复位电路 单片机最小系统 计算机在执行指令时, 通常将一条指令分解为若 干基本的微操作, 这些微操作所对应的脉冲信号在时 间上的先后次序称为计算机的时序。 为便于理解时序 , 先介绍几个常用名词 振荡周期:振荡周期指为单片机提供定时信号的振荡 源的周期或外部输入时钟的周期。 时钟周期(状态周期): 2个振荡周期为1个状态 周期,用S表示。它分为P1节拍和P2节拍,通常在 P1节拍完成算术逻辑操作,在P2节拍完成内部寄存器 之间的传送操作。 2.3.2 时钟信号 机器周期:一个机器周期是指CPU访问存储器一次 所需要的时间。MCS51的一个机器周期包括12个 振荡周期,分成6个状态:S1S6,每个状态又分为 两拍,称为P1和P2,因此一个机器周期中的12个振荡 周期表示为S1P1、S1P2S6P1、S6P2 指令周期:指令周期即执行一条指令所占用的全部 时间,通常为14个机器周期 例如: 外接晶振为12 MHz时, MCS51单片机的4个 时间周期的具体值为: 振荡周期=1/12 s; 状态周期=1/6 s; 机器周期=1 s; 指令周期=14 s 2.3.3 复位状态 MCS51单片机复位后, 程序计数器PC和特殊 功能寄存器复位的状态如下表。 复位不影响片 内RAM存放的内容, 而ALE、 在复位期 间将输出高电平 vPC=0000H 表示复位后程序的入口地址为 0000H; vPSW=00H, 其中RS1(PSW.4)=0, RS0(PSW.3)=0, 表示复位后单片机选择工作 寄存器0组; vSP=07H 表示复位后堆栈在片内RAM的08H单 元处建立; vP0口P3口端口电平为全1状态; v定时器/计数器、 串行口、 中断系统等特殊功 能寄存器复位后的状态对各功能部件工作状态 的影响, 将在后续有关章节介绍 2.4 从内部结构三看51单片机 8051内部集成了一台微型计算机的各个部分。其中 主要有CPU、存储器(4KB ROM、128B RAM)、四个 8位可编程I/O、定时/计数器、串行口等。很多工 作寄存器及特殊功能寄存器(SFR),各部分通过 内部总线相连。 单片机结构框图 频率基准源 计数器 内部总线 中断 中断 控制 并行 I/O 口 串行输入 /输出 8051 振荡器及定 时电路 4 K /8K 字节程序 存储器 ROM 128 /256 字 节数据存储 器 RAM 2个16 位定 时器 /计数器 8051 CPU 64K 字节总 线扩展控制 可编程 I/O 口 48位 可编程 串行口 2.4.1 中央处理器CPU 中央处理器是单片机内部的核心部件, 它决定了单片机的主要功能特性。 它由 运算部件和控制部件两大部分组成 运算部件以一个可进行8位算术运算 和逻辑运算的单元ALU为核心, 加上8位累 加器A、 寄存器B、 暂存器TMP1和TMP2 、 程序状态寄存器PSW及专门用于位操作 的布尔处理机组成的,它能实现数据的算 术逻辑运算, 位变量处理和数据传送操作。 1 运算部件 ALU:可对4位、8位和16位数据进行操作。 不仅能完成加(带进位加)、 减(带借位减 )、 乘、 除、 加1、 减1及BCD加法的十进 制调整等算术运算,还能进行逻辑“与”、 “或” 、 “异或”、 求补、 清零等逻辑运算, 并具有 数据传送, 程序转移等功能 算术逻辑单元ALU ACC简称累加器A, 为一个8位寄存器, 它是 CPU中使用最频繁的寄存器。 进入ALU作算 术和逻辑运算的操作数多来自于A, 运算结果 也常送回A保存。 累加器ACC 程序状态字寄存器PSW(8位)是一个标志寄 存器, 它保存指令执行结果的特征信息, 以供程 序查询和判别。 寄存器B 8位寄存器,寄存器B是为ALU进行乘除法 设置的,在进行乘除运算时,B寄存器用 来存放一个操作数,也用来存放运算后的 一部分结果,若不作乘除运算,则作为通 用寄存器使用 程序状态字 CY(PSW.7)进位标志位。 AC(PSW.6)辅助进位(或称半进位)标志。 F0(PSW.5)由用户定义的标志位。 RS1(PSW.4)、 RS0(PSW.3)工作寄存器 组选择位。 OV(PSW.2)溢出标志位。 由硬件置位或清 零 PSW.1未定义位。 P(PSW.0)奇偶标志位。 POVRS0RS1F0ACCY PSW.7PSW.0 程序状态字格式及含义 布尔处理(即位处理)是MCS51单片机 ALU所具有的一种功能。 单片机指令系统 中的布尔指令集(17条位操作指令), 存储 器中的位地址空间, 以及借用程序状态标志 寄存器PSW中的进位标志CY作为位操作“ 累加器”, 构成了单片机内的布尔处理机。 布尔处理机 2 控制部件 控制部件是单片机的神经中枢,它包括程序计数器 PC、指令寄存器IR、指令译码器ID、振荡和定时 电路等部件。 程序计数器PC:由两个8位的计数器PCH和PCL组 成,共16位,PC实际上是程序的字节地址计数器 ,PC中的内容可对64KB的ROM(程序存储器)直 接寻址,也可对片外RAM寻址。 指令寄存器IR、指令译码器ID仅限于CPU对其操作 ,用户没有办法编程改变这些寄存器的值。 2.4.2 51单片机存储器及存储空 间 MCS51单片机存储器从物理结构上可分为: 片内、 片外程序存储器(8031和8032没有片 内程序存储器)与片内、 片外数据存储器4 个部分; 从寻址空间分布可分为: 程序存储器 、 内部数据存储器和外部数据存储器3大部 分; 从功能上可分为: 程序存储器、 内部数据 存储器、 特殊功能寄存器、 位地址空间和 外部数据存储器5大部分 MCS51系列单片机存储器包括片内ROM(或EPROM )和RAM外, 另外还有128个字节的RAM区作为特殊功 能寄存器(SFR)区。 片内、 片外程序存储器和数据 存储器各自总容量为64 KB。 2.4.3 程序存储器 1、程序存储器的编址 计算机的工作是按照事先编制好的程序一条条顺 序执行的, 程序存储器就是用来存放这些已编好的程 序和表格常数, 它由只读存储器ROM或EPROM组成 。 2. 程序运行的入口地址 实际应用时, 程序存储器的容量由用户根据需要 扩展, 而程序地址空间原则上也可由用户任意安排 。 但程序最初运行的入口地址, MCS51单片机是 固定的, 用户不能更改。 程序存储器中有复位和中断 源共7个固定的入口地址见下表 MCS51单片机复位和 中断入口地址 2.4.4 内部数据存储器 MCS51系列单片机的内部数据存储器由读写存储 器RAM组成, 用于存储数据。 它由RAM块和特殊功 能寄存器(SFR)块组成, 其结构如图所示。 内部RAM块的00H1FH区, 共分4个组, 每组有8 个工作寄存器R0R7, 共32个内部RAM单元。由PSW 中的2位RS1、RS0来决定选哪一组为当前工作寄存器 : 1 工作寄存器区(00H1FH) 注:工作寄存器共有4组,通过程序状态字PSW中的 PSW.3(RS0)和PSW.4(RS1)两位来选择哪1组寄存 器工作。单片机上电复位后,RS1=RS0=0,CPU自动 选择第0组为当前工作寄存器组。根据需要,可利用传 送类指令对PSW字节操作或用位操作指令改变RS1和 RS0的状态,以切换当前工作寄存器组。用户通过软件 编程修改PSW中RS0和RS1两位的状态,就可任选一个 工作寄存器工作,这个特点使MCS-51单片机具有快速 现场保护功能,对于提高程序的效率和响应中断的速 度是很有利的。若程序中并不需要4个工作寄存器组, 那么剩下的工作寄存器组所对应的单元也可以作为一 般的数据缓冲区使用 2 位寻址区(20H2FH) 20H2FH单元为位寻址区, 这16个单元(共 计128位)的每1位都有一个8位表示的位地址, 位地址范围为00H7FH 3 数据缓冲区 30H7FH 30H7FH是数据缓冲区,也即用户RAM区 ,共80个单元。用户变量的定义都是在该缓 冲区内。数据缓冲区主要为用户进行字节操 作指令时提供字节变量定义。 在程序实际运行中, 往往需要一个后进先 出的RAM区, 在子程序调用、 中断服务处理 等场合用以保护CPU的现场, 这种后进先出的 缓冲区称为堆栈。 MCS51单片机堆栈区不 是固定的, 原则上可设在内部RAM的任意区 域内, 但为了避开工作寄存器区和位寻址区, 一般设在60H以后的范围内, 栈顶的位置由专 门设置的堆栈指针寄存器SP(8位)指出。 4 堆栈与堆栈指针 MCS51单片机在使用堆栈之前,先给SP赋值,以规 定堆栈的起始地址,称为栈底。当数据压入堆栈后, SP自动加1,即RAM地址单元加1,以指出当前堆栈位 置,8051的这种堆栈结构属向上生长型, 如下图 注:用户编程只需 要规定栈底地址后 ,不对堆栈操作, 堆栈操作由编译器 完成。 2.4.5 特殊功能寄存器(SFR) 特殊功能寄存器SFR, 又称为专用寄

温馨提示

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

评论

0/150

提交评论