1 / 38

第 2 章  MCS--51 系列单片机的结构及原理

第 2 章  MCS--51 系列单片机的结构及原理. ● 教学目标: 介绍 MCS — 51 系列单片机的内部结构与外部引脚功能 介绍 MCS — 51 系列单片机输入输出端口的结构与功能 介绍 MCS — 51 系列单片机的存储器组织 介绍 MCS — 51 系列单片机的CPU时序 ● 学习要求: 掌握 MCS — 51 系列单片机的内部结构与外部引脚功能 掌握 MCS — 51 系列单片机存储器的构成与编址方法 掌握输入输出端口的功能,了解输入输出端口的结构 掌握振荡电路与复位电路的构成,了解单片机的 CPU 时序.

minna
Download Presentation

第 2 章  MCS--51 系列单片机的结构及原理

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第2章 MCS--51系列单片机的结构及原理 ● 教学目标: 介绍MCS—51系列单片机的内部结构与外部引脚功能 介绍MCS—51系列单片机输入输出端口的结构与功能 介绍MCS—51系列单片机的存储器组织 介绍MCS—51系列单片机的CPU时序 ● 学习要求:掌握MCS—51系列单片机的内部结构与外部引脚功能掌握MCS—51系列单片机存储器的构成与编址方法 掌握输入输出端口的功能,了解输入输出端口的结构 掌握振荡电路与复位电路的构成,了解单片机的CPU时序

  2. 2.1 MCS--51系列单片机 的结构与引脚功能 • MCS--51系列单片机是美国Intel公司在1980年推出的8位单片 微型计算机 ,包含51和52两个子系列。 • 51子系列的典型产品有8031,8051和8751三种机型 • 52子系列包括8032,8052二种主要机型 • MCS--51系列单片机的结构框图见图2-1。

  3. MCS--51系列单片机的结构框图见图2-1。 • 51子系列的配置如下: • (1)8位CPU; • (2)振荡频率1.2~12MHZ; • (3)128个字节的片内数据存储器(片内RAM); • (4)21个专用寄存器; • (5)4KB的片内程序存储器(8031无); • (6)8位并行I/O口P0,P1,P2,P3; • (7)一个全双工串行I/O口; • (8)2个16位定时器/计数器; • (9)5个中断源,分为2个优先级; • 2

  4. 图2-1 MCS---51系列单片机的结构框图

  5. 图2-1 MCS—51系列单片机的引脚功能

  6. 主电源引脚Vss、Vcc • 外接晶振引脚XTAL1、XTAL2 • 输入/输出引脚 P0、P1、P2、P3 • P0.0~P0.7:P0口的8个引脚,P0口是8位漏极开路型双向I/0端口,在接有片外存储器或I/0扩展接口时,P0.0~P0.7分时复用,作低8位地址总线与双向8位数据总线 • P1.0~P1.7:P1口的8个引脚,P1口是一个带内部上拉电阻的8位双向I/O口,对于52子系列,P1.0还可用于定时器/计数器2的计数脉冲输入端T2,P1.1还可作定时器/计数器2的外部控制端T2EX。 • P2.0~P2.7:P2口的8个引脚,P2口也是一个带内部上拉电阻的双向I/O口,在访问片外存储器或扩展I/O接口时,还用于提供高8位地址。 • P3.0~P3.7:P3口的8个引脚,P3口也是一个带上拉电阻的I/O口,除可以作双向的输入输出口外,还具有第2功能,见表2.1

  7. 表2-1 P3口第二功能表

  8. 控制线(4条): • ALE/PROG:双功能引脚。由于P0口的8个引脚是低8位地址总线与数据总线分时复用,因此必须将P0口输出的低8位地址进行锁存。在访问片外存储器时,每机器周期该信号出现2次。其下降沿用于控制锁存P0口输出的低8 位地址。即使不访问片外存储器,该引脚上仍出现上述频率的周期性信号,因此也可作为对外输出的时钟脉冲,频率为振荡器频率的1/6,必须注意的是:在访问片内外存储器时,ALE脉冲会跳空1个。对片内含有EPROM的机型,此引脚在编程时可作为编程脉冲PROG的输入端。 • PSEN:片外程序存储器读选通信号输出端,在CPU从片外程序存储器取指期间,此信号每个机器周期两次有效,以通过P0口读入指令,在访问片外数据存储器时,该信号不出现。 (

  9. EA/Vpp:双功能引脚,为片外程序存储器选用端。当该引脚信号有效时,选择片外程序存储器,即EA/Vpp=1时,访问片内程序存储器。 对片内含有EPROM的机型,此引脚在编程期间用于施加+21v的编程电压。RST/VPO:双功能引脚,在单片机工作期间,当此引脚上出现连接2个机器周期的高电平时可实现复位操作,详见2.4节。 在Vcc掉电期间,若该引脚接备用电源(+5v),可向片内RAM供电,以保存片内RAM中的信息。

  10. 2.2 MCS—51系列单片机的微处理器与CPU时序 • 运算器由算逻运算单元ALU、累加器A、B寄存器、暂存器1、暂存器2、及程序状态字PSW构成。程序状态字PSW是1个8位的专用寄存器,用于存放程序运行中的各种状态信息,可进行位寻址, • PSW的各位定义见图2—3。 D7 D6 D5 D4 D3 D2 D1 D0 • 图2-1的虚框部分为微处理器,又分为控制器、运算器。控制器由指令寄存器、指令译码器、定时控制部分组成,可根据不同的指令产生相应的控制信号,使各部分协调工作,完成指令所规定的功能。 图2—3 程序状态字各位的含义

  11. (1)进位标志C(PSW.7);很多算术逻辑运算指令执行 后都会影响进位标志C。例如加减运算,若运算结果有进位或借位,则C=1,若无,则C=0。可用专门的指令或硬件将C置位或清零,在进行位操作时,C又起着位累加器的作用,类似于累加器A。 (2)辅助进位标志AC(PSW.6):做加减运算时,若低半字节有进位(借位),则AC=1,否则AC=0,辅助进位标志主要用于BCD运算调整时。 (3)软件标志FO(PSW.5):这是可由用户定义的一个状态标志,可由用户置位或复位。F1的定义与F0相同。

  12. (4)工作寄存器组选择位RS1、RS0(PSW.4,PSW.3): RS1、RS0与工作寄存器组的对应关系如下: RS1 RS0 工作寄存器组片内RAM地址 0 0 第0组 00H~07H 0 1 第1组 08H~0FH 1 0 第2组 10H~17H 1 1 第3组 18H~1FH单片机上电复位后,RS1RS0=00,此时第0组的8个工作寄存器为当前工作寄存器组。

  13. (5)溢出标志OV(PSW.2):当运算结果超出机器所能表示的范围时称溢出。OV是带符号数运算的溢出标志,如发生溢出,则OV=1;否则OV=0。 (6)奇偶标志P(PSW.0):P反映执行指令后累加器A中1的个数的奇偶,若A中1的个数为奇数,则P=1,若 A中1的个数为偶数,则P=0。 • 程序状态字可反映运算结果的状态,下面以加法指令为例进行说明。 • 例:分析执行下列指令序列后,A、C、AC、OV、P的内容是什么? • MOV A,#79H • ADD A,#58H •  该指令序列的功能是将79H+58H→A。计算过程如下: •    (79H) 01111001 • +(58H) 01011000 • ———————————— •    (D1H) 11010001 • 指令执行后,A=D1H最高位无进位,故C=0;低半字节有进位,AC=1;OV=0 1=1,发生溢出;A中1的个数为偶数,故P=0。

  14. CPU时序 一.振荡器 CPU执行指令的一系列动作是在时序电路的控制下一拍一拍进行的。其节拍信号由振荡器产生,MCS--51系列单片机的内部有一个高增益的反相放大器。外接晶体后可构成自激振荡器产生节拍信号,接法见图2-1,也可使用片外振荡器,采用不同工艺制造的单片机芯片接法不同: 。

  15. 二、时钟周期,机器周期、指令周期 振荡器输出的振荡脉冲经2分频后作为内部节拍信号,作单片机内部各部件协调工作的控制信号,其周期称为时钟周期。 计算机一条指令的执行分几个阶段,每一阶段完成一项规定的操作,完成某一规定操作所需的时间称为一个机器周期。对MCS—51系列单片机,6个时钟周期构成一个机器周期。 CPU执行一条指令所需的时间为指令周期。指令周期以机器周期为单位,MCS—51系列单片机的指令多为单周期、双周期指令,只有乘除指令为4周期指令,若用12MHZ晶振,则单周期指令、双周期指令的执行时间分别为1μs和2μs,而乘除指令则需4μs 三、CPU时序 MCS—51系列单片机的一个机器周期包含6个时钟周期。我们用S1、S2、……、S6表示,每个时钟周期的2个振荡节拍用P1、P2表示,则一个机器周期包括12个振荡周期,不同周期、不同字节数的指令时序不同。

  16. 图2-3 CPU时序图

  17. 2.38051 存储器配置 • MCS—51系列单片机内部一般既有只读存储ROM,又有随机存储器RAM,片内存储器的类型及容量见表2—3. 当片内存储器容量不够时,可在片外扩展,加用片外程序存储器与片外数据存储器。从结构上讲共有四个存储空间:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器,见图2-5。

  18. 图2-4 MCS—51系列单片机存储器配置图

  19. 程序存储器 程序存储器存放程序及各种表格、常数,其寻址范围为64KB,编址范围为0000H至FFFFH。对于片内无程序存储器的机型(8031、8032),其程序存储器均在片外扩展,对于片内有程序存储器的机型(8051、8052、8751),也可在需要时扩展片外程序存储器。在既有片内又有片外程序存储器时,通常编址时先片内,后片外,片内片外连续不重叠。 EA有两种接法: • EA=1,此时复位后先执行片内程序存储器的程序;当PC中的内容超过片内程序存储器最后的一个单元的地址时,将自动转去执行片外程序存储器的程序。 • EA=0,此时将不访问片内程序存储器而直接访问片外程序存储器。

  20. 程序存储器中有特殊用途的7个单元: • 0000H单元:MCS—51系列单片机复位后PC=0000H,即系统复位后从0000H单元开始执行程序, • 0003H 外部中断0 中断服务程序入口地址 • 000BH 定时器/计数器1溢出中断入口地址 • 0013H 外部中断1入口地址 • 001BH 定时器/计数器1溢出中断入口地址 • 0023H 串行口中断入口地址 • 002BH 定时器/计数器2溢出或T2EX端负跳变(仅8032、 8052 用)中断入口地址 注意:以上7个单元相隔很近,通常要执行的程序并不在此,单元内通常是一条绝对转移指令,转到程序真正的起始地址去执行程序.。

  21. 数据存储器 MCS—51系列单片机的片内数据存储器分为片内RAM块与特殊功能寄存器(SFR)块,对于51子系列,片内RAM块的地址从00H~7FH,占128个字节,SFR块从80H~FFH,也为128字节。对于52子系列,前者编址从00H~FFH,占256个字节,后者编址为80H~FFH,占128字节。片内RAM的高128个字节的地址与SFR块重叠,当片内数据存储器容量不够时可扩展片外数据存储器。片外数据存储器用R0、R1间址寻址时,寻址范围为256个字节,用数据指针寄存器DPTR时寻址范围最大为64KB。在编址时,片外数据存储器的地址可与片内数据存储器的地址重叠,事实上,数据存储器与程序存储器的地址也是重叠的。 规定:片内RAM的高128个字节用寄存器间址寻址,而SFR块用直接寻址,访问片内数据存储器用MOV指令,访问片外数据存储器用MOVX指令,而访问程序存储器则用MOVC指令,

  22. 一、片内RAM块 • 51子系列片内RAM块可分工作寄存器存器区、位寻址区、数据缓冲区等三个区域,这三个区域统一编址,从00H~7FH,各区域有自己的特殊功能,也可统一调度使用。 注意:单片机上电复位后,SP=07H,即堆栈处于工作寄存器存器区,应给SP重新赋值。

  23. 二、特殊功能寄存器块SFR • 特殊功能寄存器又称专用寄存器,与片内RAM统一编址(PC除外)用直接寻址方式寻址,其地址从80H~FFH,离散分布.

  24. 注:表中带*的寄存器都与定时器/计数器2有关,只在52子系列芯片中存在注:表中带*的寄存器都与定时器/计数器2有关,只在52子系列芯片中存在

  25. 2.4 输入输出端口结构 • MCS—51系列单片机芯片有4个8位的准双向输入输出端口,称为P0、P1、P2、P3口,见表2—5,我们可以看出P0-P3口均有位地址,因此4个口的32根输入/输出线每一条可作为独立的输入/输出线使用。51系列单片机的输入输出端口与片内RAM统一编址,采用相同的指令进行访问,P0~P3口采用直接寻址方式,其口地址依次为80H、90H、A0H、B0H。 • 各端口的结构见图2-5至图2-8

  26. 图2-5 P0口的1位结构

  27. 图2-6 P1口的1位结构 Vcc 读锁存器 2 内部上拉电阻 D P1.i Q 锁存器 CL Q 内部总线 P1.i 引脚 写锁存器 V1 1 读引脚

  28. 图2-7 P2口的1位结构

  29. 图2-8 P3口的1位结构

  30. P0口有两种功能:在扩展片外存储器时作地址/数据分时复用总线,在不进行扩展时作一般准双向输入/输出口使用P0口有两种功能:在扩展片外存储器时作地址/数据分时复用总线,在不进行扩展时作一般准双向输入/输出口使用 注意:由于V2截止,如果输入电路由集电极开路或漏极开路电路驱动,应外加提升电路。 P1口只有一种功能---通用准双向的输入/输出接口 P2口有2种用途:通用准双向I/O接口或当单片机扩展了片外存储器时作高8位地址总线 P3口除了作为通用准双向I/O使用外,还具有第2功能 (表2-1) 各端口的功能

  31. 2.5复位及复位电路 • MCS--51系列单片列的RST引脚为复位引脚,只要在RST引脚上出现宽度在10ms以上的高电平,即可实现复位,复位通常有上电复位和操作复位两种方法。 • 复位是靠外部电路实现的。常用的一种上电与按钮复位电路见图。 • 复位后各专用存储器和程序计数器的状态见表2—2。 +5V R C1 C2 C3 RST MCS-51 · · · · ·

  32. 表2-2 复位后各专用存储器和程序计数器的状态

  33. 注意:单片机的各个功能模块由特殊寄存器控制,因此上述复位状态决定了单片机的初始状态:注意:单片机的各个功能模块由特殊寄存器控制,因此上述复位状态决定了单片机的初始状态: • 、 1、PC=0000H,复位后从0000H单元开始执行程序。 • 2、PSW=00H,所以RS1RS0=00,复位后单片机当前工作寄存器组为第0组。 • 3、SP=07,复位后堆栈区从片内RAM08H单元开始。 • 4、复位后各定时器/计数器初值为0。 • 5、复位后中断禁止工作。 • 6、复位后全部中断设置在低优先级中断状态。 • 7、P0~P3口全1。

  34. 小 结 本章介绍MCS—51系列单片机的内部结构与外部引脚功能,主要讲述了MCS—51系列单片机的存储器系统与输入输出端口的结构。其中,中断系统和内部定时器/计数器将在第5 章和第6章中介绍,本章是全书的基础。 1、MCS—51系列单片机的存储器组织:MCS—51系列单片机的存储器分为四个物理空间:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。片内数据存储器又分为RAM区(工作寄存器区、位寻址区、用户RAM区)和专用寄存器区(SFR区)两个区域。不同的存储器与不同的存储器区域,在访问时的指令、寻址方式、控制信号上均有所不同,必须熟练掌握各区域的地址范围、控制与访问方法。 2、输入输出端口的结构与功能:输入输出端口归入SFR区进行编址,注意P0~P3端口在结构与功能上的区别,这在进行数据传送与片外存储器(接口)的扩展时尤其重要。 3、CPU时序:MCS—51系列单片机执行指令的指令周期是用时钟周期来描述的,分为单周期指令、双周期指令、四周期指令四种,在实时控制中,单片机的运行速度是一个重要的指标,决定系统是否能正确的发挥控制作用,要注意恰当的使用指令以节约时间与空间。

  35. 思考题与习题二 1 简述MCS—51系列单片机的内部结构并说明主要部分的功能。 2 简述MCS—51系列单片机控制引脚的功能。 3 如何配置MCS—51系列单片机的存储器?各存储器如何编址?怎样避免引起混乱? 4 MCS—51系列单片机在访问片外数据存储器与片外程序存储器时的控制信号相同吗? 5 MCS—51系列单片机片内数据存储器分为几个区域?地址范围是多少?简述各区域的用途。 6 什么是位地址?什么是字节地址?位地址30H在片内数据存储器的哪一个单元? 7 片内存储器中的7个特殊单元有何作用? 8 说明程序状态字PSW中常用状态位的定义。 9 什么叫当前工作寄存器组?MCS—51系列单片机如何选择当前寄存器组? 10 MCS—51系列单片机P0~P3的四个端口在结构有何异同?说明各端口的功能。 11 为什么P0~P3口称为“准双向”I/O口? 12MCS—51系列单片机外接晶振是如何使用XTAL1、XTAL2引脚? 13 何谓时钟周期、机器周期、指令周期?MCS—51系列单片机的机器周期与振荡周期有什么关系?如采用12MHz晶振,机器周期与指令周期各为多少 ? 14 结合复位后专用寄存器的值分析MCS—51系列单片机的初始状态。

More Related