微机原理及应用第二章MCS 51单片机结构和工作课件.ppt
《微机原理及应用第二章MCS 51单片机结构和工作课件.ppt》由会员分享,可在线阅读,更多相关《微机原理及应用第二章MCS 51单片机结构和工作课件.ppt(97页珍藏版)》请在三一办公上搜索。
1、第二章MCS-51单片机的结构和工作原理,复习提问,1、真值与机器数有何区别?2、原码、反码、补码三者之间如何换算?3、补码的作用?作业: P12 一、二题;下周二上课之前交作业,2.1单片机内部组成及引脚功能,2.4 并行I/O口电路结构及应用特征,2.6MCS-51单片机的工作方式,第二章MCS-51单片机的结构和工作原理,2.5 时钟电路与CPU时序,2.3 存储器组织,MCS-51 系列单片机分类,2.1MCS-51单片机引脚功能及内部组成,2.1.1 MCS-51单片机的引脚功能2.1.2 MCS-51单片机的内部结构,HMOS工艺制造的芯片为40个引脚,均采用双列直插式封装(DIP
2、),2.1.1 MCS-51的引脚功能,CHMOS工艺制造的芯片有采用如下封装:双列直插(DIP),方形:(PLCC),扁平封装:(QFP),2.1.1 MCS-51的引脚功能,2.3,1、电源和时钟晶振引脚:Vcc、Vss、XTAL2、XTAL12、控制信号引脚(1)、 RST/VPD(3)、 EA/VPP(2)、 ALE/PROG(4) 、 PSEN3、输入/输出端口引脚-32P0、P1、P2、P3,2.1.1 MCS-51的引脚功能,2.3,1、电源和时钟晶振引脚:Vcc、Vss、XTAL2、XTAL1,Vcc:电源端,接5V。 Vss:接地端。 通常在Vcc和Vss引脚之间接0.1高频
3、滤波电容。 XTAL1:接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入;若使用外部时钟时,对于HMOS单片机,该引脚必须接地,但对于CMOS单片机而言,该引脚为外部时钟的输入端。 XTAL2:接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出;若使用外部时钟时,对于HMOS单片机,该引脚为外部时钟的输入端,但对于CMOS单片机而言,该引脚应悬空。,2.1.1 MCS-51的引脚功能,2.3,(1). 复位信号RST 该信号高电平有效,在输入端保持两个机器周期的高电平后,就可以完成复位操作。该引脚还有掉电保护功能,若在该端接备用电源,在使用中若Vcc掉电,可保护片内RA
4、M中信息不丢失。,(2) 外部程序存储器地址允许使能端 /EA当为高电平时,CPU执行片内程序存储器指令,但当PC中的值超过内部ROM的最高地址(8051为0FFFH)时,将自动转向执行片外程序存储器指令; /EA当为低电平时,CPU只执行片外程序存储器指令。对于8031,由于其无片内ROM,故/EA必须接低电平。,2.1.1 MCS-51的引脚功能,2.3,(3)、地址锁存允许ALE 在系统扩展时,ALE用于控制地址锁存器锁存P0口输出的低8位地址,从而实现数据与低位地址的分时复用。当单片机上电正常工作后,ALE端就周期性地以时钟频率的1/6的固定频率向外输出正脉冲信号,但当访问外部数据存储
5、器是会丢失一个脉冲。ALE的负载能力为8个LSTTL器件。,(4)外部程序存储器读选通信号 低电平有效。CPU从外部程序存储器取指令时,它在每个机器周期中两次有效。负载能力为8个LSTTL器件。,2.1.1 MCS-51的引脚功能,3、输入/输出端口引脚-32P0、P1、P2、P3,P0口(P0.0P0.7):该端口为漏极开路的8位准双向口,负载能力位8高LSTTL负载,它为8位地址线和8位数据线的复用端口。P1口(P1.0P1.7):它是一个内部带上拉电阻的8位准双向I/O口,P1口的驱动能力为4个LSTTL负载。 P2口(P2.0P2.7):它为一个内部带上拉电阻的8位准双向I/O口,P2
6、口的驱动能力也为4个LSTTL负载。在访问外部程序存储器时,它作存储器的高8位地址线。 P3口(P3.0P3.7):P3口同样是内部带上拉电阻的8位准双向I/O口,P3口除了作为一般的I/O口使用之外,其还具有特殊功能。,P3.0RxD串行数据接受P3.1TxD串行数据发送P3.2INT0外部中断0申请P3.3INT1外部中断1申请P3.4T0定时器/计数器0计数输入P3.5T1定时器/计数器1计数输入P3.6WR外部RAM写选通P3.7RD外部RAM读选通,P3口引脚信号的第二功能,程序存储器ROM,数据存储器RAM,SFR,T/C,微处理器,运算器,控制器,CPU (80C51),存储器,
7、中断系统,串行接口UART,基本功能单元,XTAL2,XTAL1,RST,ALE,并行I/O接口,P0,P1,P2,P3,51基本组成框图,2.3,2.1.2单片机的内部结构,2.1.2单片机的内部结构,1、中央处理单元CPU (1)运算器电路: 用于数据处理、位操作(位测试、置位、复位) (2)控制器电路:指挥控制工作,协调单片机各部分正常工作。2、存储器 只读存储器ROM(4KB或8KB) 用于永久性存储应用程序、原始数据或表格常数 随机存取存取器RAM(256B) 用于程序运行中存储工作变量和数据3、并行输入/输出口 用作系统总线、I / O接口芯片。MCS51单片机共有4个8位的I/O
8、口(P0、P1、P2和P3),每一条I/O线都能独立地用作输入或输出。,MCS51系列单片机的存储器包括数据存储器和程序存储器,其主要特点是寻址空间是相互独立的,物理结构也不相同。,2.1.2单片机的内部结构,4. 定时器/计数器 T(16位增量可编程)MCS51单片机片内有两个16位的定时/计数器,即定时器0和定时器1。它与CPU之间各自独立工作,当它计数满时向CPU中断。它们可以用于定时控制、延时以及对外部事件的计数和检测等5. 串行I/O口 UART (二线)MCS51单片机具有一个采用通用异步工作方式的全双工串行通信接口,可以同时发送和接收数据。它具有两个相互独立的接收、发送数据缓冲器
9、,两个缓冲器共用一个地址(99H),发送缓冲器只能写入,不能读出,接收缓冲器只能读出,不能写入。它可以用于串行通信、扩展I / O接口芯片。6、中断系统 五源中断、两级优先,可编程进行控制,2.1.2单片机的内部结构,7. 时钟电路 MCS51芯片内部有时钟电路,但晶体振荡器和微调电容必须外接。时钟电路为单片机产生时钟脉冲序列,振荡器的频率范围为1.2MHz12MHz,典型取值为6MHz。 80C51可高达40MHz8. 总线 以上所有组成部分都是通过总线连接起来,从而构成一个完整的单片机。系统的地址信号、数据信号和控制信号都是通过总线传送的,总线结构减少了单片机的连线和引脚,提高了集成度和可
10、靠性。 内部采用单总线;外部采用三总线。,2.3 存储器组织,冯诺依曼结构:程序和数据共用一个存储器逻辑空间,统一编址;公用相同的寻址方式、寻址空间和控制系统。哈佛结构:程序与数据分为两个独立存储器逻辑空间,分开编址;各有自己的寻址方式、寻址空间和控制系统。,2.3,2.3.1、80C51 存储器特点,物理结构上4个存储器地址空间:片内程序存储器空间片外程序存储器空间片内数据存储器空间片外数据存储器空间从用户使用的角度,即逻辑上3个存储器地址空间:256B 片内数据存储器00HFFH64KB 片外数据存储器0000HFFFFH64KB 片内、片外统一程序存储器0000HFFFFH,2.3.1、
11、80C51 存储器特点,数据存储器的总体结构数据存储器用来存放运算的中间结果、标志位,及数据的暂存和缓冲等。,数据存储器也分为片内RAM和片外RAM两部分:相对独立,分别编址;,片内RAM(256B)地址总线宽度为8位地址范围为00HFFH地址指针用R0 R1访问时用“MOV”指令可分为数据RAM区和SFR区,片外RAM(64K )地址总线宽度为16位地址范围为0000HFFFFH地址指针用DPTR R0 R1访问时只能用“MOVX”指令与扩展I/O接口共用RAM,2.3,2.3.2、片内数据存储器,2.3.2、片内数据存储器,1、片内RAM(256B),片内RAM在物理上又分为两个独立的功能
12、不同的区域:,(1)片内数据RAM区51子系列地址空间为低128B 地址范围为00H7FH52子系列地址空间为256B 地址范围为00HFFH00H7FH可直接、间接寻址80HFFH只能可用间接寻址(2)特殊功能寄存器区(SFR)地址空间为高128B 地址范围为80HFFH只能用直接寻址访问,(1)、片内数据RAM区,工作寄存器区:分四个R组字节地址:00H1FH每组由R0 R1 R2 R3 R4 R5 R6 R7组成R0、R1可作间接寻址的地址指针由PWS的RS1 RS0决定当前工作R组位寻址区:片内数据RAM区字节地址:20H2FH位地址为:00H7FHSFR区字节地址能被8整除的12个S
13、FR位地址为:80HFFH数据缓冲区/堆栈区:字节地址:00HFFH一般使用30HFFH,FFH,255,2.3,30H,48,组,组,组,组,表22 工作寄存器和RAM地址对照表,(2)、特殊功能寄存器SFR,80C51的功能模块:I/O锁存器: P0、P1、P2、P3定时/计数器: TCON、TMOD 、T0、 T1、T2串行通讯: PCON、SCON、SBUF中断系统: IE、IP专用寄存器:A、B、PSW、DPTR、SP,SFR:是一个具有特殊功能的RAM区,占用字节地址:80HFFH 是用来对80C51片内各功能模块进行集中管理、控制、监视的控制寄存器和状态寄存器。除PC和4组工作R
14、组外,其余所有的R均在此地址范围内。,2.3,SFR的组成,占用字节地址:离散分布于80HFFH位寻址寄存器:其字节地址可被8整除。占用位地址:离散分布于80HFFH,在对SFR编程操作时:a、必须清楚SFR的字节地址、位地址、位定义;b、严格区分控制位和标志位控制位:是编程人员按要求写入的控制操作位标志位:是系统运行时自动形成的标志c、了解标志位的清除特性有的标志位可由硬件自动清除,集中在T0 T1 INT0 INT1有的标志位则必须通过软件指令清除,集中在 串行 T2,返回,(1)累加器A (Accumulator),A是CPU中使用最频繁的一个8位寄存器A是专门存放操作数或运算结果。即是
15、ALU的一个输入端,也是ALU的一个输出端A相当于一个数据中转站CPU中的大多数数据传送都要通过A这就造成计算机的瓶颈效应,产生堵塞现象在80C51中,增加一部分可以不经过A的操作指令既加快运算速度,有减少A的堵塞现象MOV R2,30HMOV R0,30HMOV R2,#3,返回,(2)寄存器B,寄存器B(8位):专门为乘除法而设置的寄存器;与A累加器配合执行乘、除运算;在乘除法指令中作为ALU的一个输入端和一个输出端。1、乘法 MUL AB;积的高八位B,积的低八位A若(A)= 0A0H(160) (B)=50H(80), 则执行MUL AB;结果乘积3200H(12800)(B)=32H
16、 , (A)=00H2、除法 DIV AB;被除数A,除数B,余数B,商A(B)=00H , (A)=02H3、也可用作通用寄存器。注意:其寻址方式为直接寻址MOV B,#30,(3)、堆栈指针(Stack Pointer),堆栈区:是片内RAM区中,数据按“先进后出”或“后进先出”方式组织的特殊区域,堆栈指针SP:是存放当前堆栈栈顶的地址的一个8位SFR,堆栈操作:进栈 PUSH A;SP自动加1,将数据压人SP所指向的单元出栈 POP A; 将SP所指向单元的内容弹出,然后SP自动减1;故SP始终指向栈顶。,堆栈建立:复位后(SP=07H) ,堆栈栈底为07H程序运行时,可以通过SP任意设
17、定堆栈栈底MOV SP, #30H,2.3,堆栈,定义:是数据存储器RAM中的一个特殊的区域;是一组按照“先进后出”的方式工作的;是用来暂存信息的存储单元。,堆栈指针(SP):是一个8位地址寄存器,用来专门存放栈顶的地址;是专门用来管理和控制堆栈的操作的指针。,堆栈的操作:压栈;将数据压入栈顶的操作 PUSH Acc弹栈:把栈顶中的数据弹出来的操作 POP B,堆栈的作用,保留断点地址、恢复断点地址进入子程序时,将PC的当前值压入堆栈; PUSH PCL(执行CALL sub或响应中断子程序) PUSH PCH子程序返回时,将断点地址弹出到PC中; POP PCH (执行RET或IRET) P
18、OP PCL均由硬件自动完成,无需软件参与。保护现场、恢复现场进入子程序后,首先将 A、B、R、SFR、PSW等压入堆栈子程序返回之前,先弹出PSW 、SFR 、R 、B 、 A全靠软件实现 PUSH AccPOP PSW PUSH BPOP Ri PUSH RiPOP B PUSH PSWPOP Acc,(4)程序状态字PSW(Program Status Word),PSW:是一个8位SFR,存放指令执行后的有关状态。供查询和判断之用,用户可按字节访问,也可按位访问。,Cy进(借)位标志位,执行加减运算-由硬件置位或复位。保存算术运算产生的进位或借位 (1进位 0无进位)位操作的累加器C。
19、AC辅助进位标志位,执行加减运算-由硬件置位或复位。运算结果从D3产生进位或借位时AC=1。主要用于BCD码调整。F0 F1用户标志位,开机时为0可以使用的位变量,该位可以随PSW被保存。,OV溢出标志位,当执行运算指令时,由硬件置位或复位。运算结果超出A允许范围时,OV=1,否则OV=0 。带符号数加(减)运算:ADD A,#55H当结果超出目的寄存器A所表示的带符号数的范围(-128+127)时,OV=1,否则OV=0。判断方法如下:最高位和次高位不同时产生进(借)位时,OV=1,否则OV=0。无符号数乘法时:MUL AB若乘积超过A所表示的无符号数的范围255时,OV=1,否则OV=0。
20、因此:若OV=0,则只需从A中取积即可。 若OV=1,则需从BA中取积。无符号数除法时: DIV AB若除数B为零时,OV=1,否则OV=0。,2.3,RS1,RS0寄存器组选择位,只有软件置位或复位 0 0 组0R0R7对应的地址为00H07H 0 1 组1R0R7对应的地址为08H0FH 1 0 组2R0R7对应的地址为10H17H 1 1 组3R0R7对应的地址为18H1FHP奇偶标志位每个指令周期根据累加器A中的内容的奇偶性由硬件置位或复位。A中的1的个数为奇数 P=1;A中的1的个数为偶数 P=0;用于串行通信中的奇偶校验位,提高数据的可靠性,2.3,(5)、数据指针DPTR(Dat
21、a PoinTeR),DPTR :在80C51中是一个功能特殊的16位寄存器;主要功能是作为片外RAM寻址用的地址R(间接寻址)也叫RAM地址指针,当执行访问片外RAM的指令时作为外RAM的地址R,如: MOV DPTR,#1234H;MOVX A,DPTR; 读片外RAM到A中MOVX DPTR,A; 将A中的内容写入外RAM中,作为ROM的基地址R,如: MOVC A,A+DPTR;JMP A+DPTR;,作为一个16位R来使用,作为两个8位R来使用 DPH高8位,DPL 低8位,如: MOV DPTR,#1234H; INC DPTR;,如: MOV DPH,#12H; MOV DPL,
22、#34H;,2.3,(6)、程序计数器PC (Program Counter),PC=0000H,PC=0001H,PC=0002H,指令寄存器,是控制器最基本的寄存器;是一个独立的16位计数器;存放着下一条将要从程序存储器中取出的指令的地址PC当前值,PC 工作过程:读指令时,PC将其中的数据作为所取指令的地址输出给ROM;然后ROM按此地址输出指令字节到指令寄存器;同时PC本身自动加1,指向下一条指令的地址。,程序计数器PC工作方式,2、PC 自动加1: 每取一字节由CPU自动完成,是最基本工作方式,3、在执行转移指令时,PC被置入新的数值,程序的流程发生变化,变化方式:相对短转移 SJM
23、P rel ;(PC) PC当前值+rel 相对长转移 JMP A+DPTR ;(PC) (A+DPTR) 绝对转移 AJMP addr11 ;(PC) PC当前值1511Addr11 长转移 LJMP addr16 ;(PC) addr16,4、在执行LCALL调用指令或响应中断时: a、PC当前值(即下一条将要执行的指令的地址)压入堆栈,加以保护; b、将子程序的入口地址或中断矢量地址送入PC,程序流向发生变化, 执行子程序或中断服务程序 c、当子程序或中断服务程序执行完毕,遇到返回指令(RET 、RETI)时, 将栈顶的内容送入PC中,程序流程又返回到原来的地方,继续执行.,1、复位清零
24、: 单片机复位时PC=0000H 。,2.3,PC同DPTR的比较,PC和DPTR :都是与地址有关的16位寄存器 16为地址均通过P2、P0口输出,PC DPTR, 存放的是ROM中的地址 存放的是RAM中的地址 (也可是ROM中的地址 ), 不可直接访问(读、写) 可直接访问(读、写), 由硬件自动加1 可用软件加1,只能做16位R 不仅能作为16位R, 也可分成两个8位R, PC的变化一定影响程序的流程 DPTR的变化不一定影响程序的流程,1、ROM结构:整个ROM(64KB)可分为片内和片外两部分。CPU访问的是片内还是片外低位存储单元, 由引脚EA接不同电平确定。,2.3.3 程序存
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机原理及应用第二章MCS 51单片机结构和工作课件 微机 原理 应用 第二 MCS 51 单片机 结构 工作 课件
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-1525368.html