《片机结构功能》PPT课件.pptx_第1页
《片机结构功能》PPT课件.pptx_第2页
《片机结构功能》PPT课件.pptx_第3页
《片机结构功能》PPT课件.pptx_第4页
《片机结构功能》PPT课件.pptx_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、8051单片机的结构与功能,8051的基本功能,8位数据总线,16位地址总线的CPU; 具有布尔处理能力和位处理能力; 采用哈佛结构,程序存储器与数据存储器地址空间各自独立,便于程序设计; 相同地址的64KB程序存储器和64KB数据存储器; 0-8KB片内程序存储器(8031无,8051有4KB,8052有8KB,89C55有20KB); 128字节片内数据存储器(8051有256字节); 32根双向并可以按位寻址的I/O线; 两个16位定时/计数器(8052有3个); 一个全双工的串行I/O接口; 多个中断源的中断结构,具有两个中断优先级; 片内时钟振荡器。,第二讲 单片机8051,单片机结

2、构,特点: 以微处理器(CPU)为核心 CPU与其他部件间通过三总线连接,AB: Address Bus DB: Data Bus CB: Control Bus,第二讲 单片机8051,1、地址总线(Address Bus,简写为AB) 地址总线可传送单片机送出的地址信号,用于访问外部存储器单元或I/O端口。 地址总线是单向的,地址信号只是由单片机向外发出; 地址总线的数目决定了可直接访问的存储器单元的数目。 例如N位地址,可以产生2N个连续地址编码,因此可访问2N个存储单元,即通常所说的寻址范围为 2N个地址单元。 MCS51单片机有十六位地址线,因此存储器扩展范围可达216 = 64KB

3、地址单元。 挂在总线上的器件,只有地址被选中的单元才能与CPU交换数据,其余的都暂时不能操作,否则会引起数据冲突。,总线: 指能为多个部件服务的信息传送线。,2、数据总线(Data Bus,简写为DB) 数据总线用于在单片机与存储器之间或单片机与I/O端口之间传送数据。 单片机系统数据总线的位数与单片机处理数据的字长一致。例如MCS51单片机是8位字长,所以数据总线的位数也是8位。 数据总线是双向的,即可以进行两个方向的数据传送。,3、控制总线(Control Bus,简写为CB) 控制总线实际上就是一组控制信号线,包括单片机发出的,以及从其它部件送给单片机的各种控制或联络信号。 对于一条控制

4、信号线来说,其传送方向是单向的,但是由不同方向的控制信号线组合的控制总线则表示为双向的。,总线结构形式大大减少了单片机系统中连接线的数目,提高了系统的可靠性,增加了系统的灵活性。此外,总线结构也使扩展易于实现,各功能部件只要符合总线规范,就可以很方便地接入系统,实现单片机扩展。,地址总线、数据总线和若干控制线把存储器和微处理器连接起来。 存储器从CPU接收控制信号,以确定存储器执行读/写操作。 地址总线将地址信息送入地址译码器,地址译码器的输出可以确定唯一的存储单元。 数据总线用来传送存储器到CPU或CPU到存储器的数据信息 单片机总线的应用: 扩展数据存储器、扩展程序存储器。,MCS-51单

5、片机总线结构,8051 功能框图,8051 CPU,振荡器和时序 OSC,64KB 总线 扩展控制器,数据存储器 256B RAM/SFR,216位 定时器/计数器,可编程I/O,程序存储器 4KBROM,可编程全双工 串行口,外中断,内中断,控制,并行口I/O口:4个8位的I/O口P0、P1、P2、P3。,串行通信,外部时钟源,外部事件计数,中央处理器CPU: 8位,运算和控 制功能,串行口:一个全双工串行口。,时钟电路:可产生时钟脉冲序列,允许晶振频率6MHZ和12MHZ,中断控制系统:5个中断源(外中断2个,定时/计数中断2个,串行中断1个),内部ROM:4KB掩膜ROM,用于存放程序、

6、原始数据和表格。,定时/计数器:两个16位的定时/计数器,实现定时或计数功能。,内部RAM:共256个RAM单元,用户使用前128个单元,用于存放可读写数据,后128个单元被专用寄存器占用。,MCS-51系列单片机内部组成,中央处理器(CPU); 数据存储器(RAM); 程序存储器(ROM); 2个l6位的定时器/计数器; 并行I/O口(32根I/O线,4个P口); 外部存贮器寻址范围ROM、RAM各64K; 全双工串行口; 中断系统( 5个中断源,2个中断优先级) 时钟电路。,用EPROM,为8751,8051单片机 内部结构图,无ROM为8031,EPROM,运算器(ALU、 专用寄存器)

7、,控制器(由定时 和控制部件构成),1. CPU,中央处理器CPU是单片机的核心,是单片机的大脑和心脏。它由运算器和控制器等部件组成。,作用:主要完成运算和控制功能。,第二讲 单片机8051,运算器 (ALU、专用寄存器),(1) 运算器,运算部件以算术逻辑单元ALU为核心,加上累加器ACC、寄存器B、暂存器、程序状态字PSW以及十进制调整电路和布尔处理器等许多部件组成的。,运算器的作用,是把传送到微处理器的数据进行算术运算或逻辑运算。 (1)执行各种算术运算。 (2)执行各种逻辑运算,并进行逻辑测试。 如零值测试或两个值的比较。,ALU可对两个操作数进行加、减、与、或、比较大小等操作,最后将

8、结果存入累加器。,数据寄存器,累加器,ALU的两个主要的输入来源,ALU执行不同的运算操作是由不同控制线上的信息所确定的。 两个数(7和9)相加,在相加之前,操作数9放在累加器中,7放在数据寄存器中,执行两数相加运算的控制线发出“加”操作信号,ALU即把两个数相加并把结果(16)存入累加器,取代累加器前面存放的数9。,1)算术逻辑单元( ALUArithmetic Logic Unit),可以对4位(半字节)8位(一字节)和16位(双字节)数据进行操作。 作用:完成算术四则运算和逻辑运算、位操作及循环移位等逻辑操作,操作结果的状态信息送至状态寄存器(PSW)。 2)累加器ACC,在指令中用助记

9、符A来表示 A是一个8位寄存器,是CPU中工作最繁忙的寄存器。MCS-51指令系统中多数指令的执行都通过它进行。 作用:在算数逻辑运算中,它经常作为一个运算数经暂存器2进入ALU的输入端,与另一个来自暂存器1的运算数进行运算,运算结果又送回ACC。在与外部存储器和I/O接口打交道时,完成数据传送。,3)寄存器 B( 8位寄存器),4) 2个8位暂存器: (暂存器1 和 暂存器2),ALU的两个入口处。,作用:在乘法和除法运算中用作ALU的输入之一。乘法运算时,ALU的两个输入分别为A、B,运算结果存放在A、B寄存器中,其中A存放积的低8位,B则存放积的高8位。除法运算时,被除数取自A,除数取自

10、B;运算结果商数存于A,而余数存于B。不作乘、除运算时,寄存器B可作通用寄存器使用。,5)程序状态字寄存器PSW(程序状态标志寄存器),8位寄存器。 作用:存放当前指令执行后操作结果的某些特征,为下一条指令的执行提供依据。,程序状态字PSW各位标志的含义,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,PSW.7 CY 进位标志位 PSW.6 AC 辅助进位(或称半进位)标志 PSW.5 F0 用户标志位 PSW.4,PSW.3 RS1和RS0工作寄存器组选择位 PSW.2 OV 溢出标志位 PSW.1 未定义位 PSW.0 P 奇偶标志位,CY

11、是PSW中最常用的标志位。 由硬件或软件置位和清零。 在字节运算时:它表示运算结果是否有进位(或借位)。 加法时:有进位 Cy由硬件置“1” 即Cy=1; 无进位 CY被硬件清“0” 即Cy=0。 减法时:有借位 Cy由硬件置“1” 即Cy=1; 无借位 CY被硬件清“0” 即Cy=0。 在位操作(布尔操作)时: CY作为累加器使用,其作用相当于字节操作的累加器ACC。位传送、位与位等位操作,进位标志位是固定的操作位之一。,Cy,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,AC(PSW.6) 辅助进位(或称半进位)标志。 当执行加减运算时,其

12、运算结果产生低四位向高四位进位或借位时, AC由硬件置“1”;否则AC位被自动清“0”。 一般在BCD码运算时,系统用于进行十进制调整。,Ac,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,F0,F0(PSW.5) 用户标志位。 用户可根据自己的需要对F0位赋予一定的含义,由用户置位或复位,作为软件标志。 SETB F0 ; 置位 CLR F0 ; 复位,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,RS1 PSW4 =0 ; PSW4 =1; PSW3=0; PSW3=1 PSW=1 ;,选定

13、第区,选定第2区,选定第区,OV,OV(PSW.2) 溢出标志位 它反映运算结果是否溢出,溢出时则由硬件将OV 位置“1”;否则置“0”。,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,在带符号的加减运算中,若运算超出了累加器A所能表示的符号数的有效范围(-128127),则自动置1,表示产生了溢出,说明运算结果是错误的。否则为0。 乘法运算中,Ov=1表示乘积超过255,即乘积分别在A和B中;否则为0,表示乘积只在A中。 除法运算中,Ov=1表示除数为0。,P(PSW.0) 奇偶标志位 P标志表明累加器ACC中1的个数的奇偶性。在每条指令执行

14、完后,单片机根据ACC的内容对P 位自动置位或复位。 若累加器ACC中有奇数个“1”,则P=1; 若累加器ACC中有偶数个“1”,则P=0。,P,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,溢出和进位是两种不同性质的概念。 溢出是指有正负号的两个数运算时,运算结果超出了累加器以补码所能表示一个有符号数的范围。 而进位则表示两数运算最高位(D7)相加(或相减)有无进位(或借位)。,OV 与 Cy,PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0,组成:程序计数器(PC)、指令寄存器(IR)、指令译码

15、器(ID) 、数据指针(DPTR)、堆栈指针(SP)以及定时控制电路等。 功能:对来自存储器中的指令进行译码,通过定时控制电路在规定的时刻发出各种操作所需的控制信号,使各部分协调工作,完成指令所规定的功能,控制器是CPU的大脑中枢,是计算机的指挥控制部件。,(2)控制器,1)程序计数器(PC)16位计数器(重要) PC是程序的字节地址计数器, 16位专用寄存器,寻址范围为64KB。 作用:存放CPU执行的下一条待执行指令的地址,具有自动加1的功能。 工作原理:当一条指令按照PC所指的地址从程序存储器中取出后,PC会自动加1,指向下一条指令。 基本工作过程可以描述为:PC中的数作为指令地址输出给

16、程序存储器,程序存储器按此地址输出指令字节,同时PC本身自动加1,指向下一条指令。,2) 指令寄存器IR和指令译码器ID 指令寄存器IR:8位寄存器 作用:用于暂存待执行的指令,等待译码。 指令译码器ID: 作用:对指令寄存器中的指令进行译码,即将指令转变为所需的电平信号。 根据译码器输出的电平信号,再经定时控制电路定时产生执行该指令所需要的各种控制信号。,程序 存储器,PC,取出 指令码,指令 寄存器IR,指令 译码器ID,把指令转变 成所需要得 电平信号,CPU 产生执行该指令所需的各种控制信号,取指令,执行指令,分析指令,3) 数据指针(DPTR)16bit 16位专用寄存器。它可以对6

17、4K的外部数据存储器和I/O口进行寻址。也可作为两个8位寄存器。 DPL (地址82H): DPTR的低字节, DPH(地址为83H):DPTR的高字节。 作用:用作外部数据存储器的地址指针, DPTR 主要用来存放 16 位地址,可通过它访问 64 KB外部数据存储器或外部程序存储器空间。,(1)堆栈的概念 堆栈是在RAM中专门开辟的一个特殊用途的存储区。只能从一端存取数据的一个存储区。 (2)堆栈的访问原则: “先进后出”、“后进先出” 。即先进入堆栈的数据后移出堆栈,即后进入堆栈的数据先移出堆栈。 (3)堆栈的结构 堆栈的一端的地址是固定的,称为栈底;另一端的地址是动态变化的,称为栈顶。,4) 堆栈指针(SP)8 bit,(4)堆栈的操作方式 两种操作方式:数据进栈(push)和数据出栈(pop)。 进栈和出栈都是在栈顶进行,这就必然是按照“先进后出”、“后进先出”的方式存取数据。 (5)堆栈的应用 主要是用来暂时存放数据,有两种情况使用堆栈: 一是CPU自动使用堆栈,当调用子程序或响应中断,处理中断服务程序时,CPU自动将返回地址存放到堆栈中;通过堆栈传递参数。 二是程序员使用堆栈,用堆栈暂时存放数据。,4) 堆栈指针(SP)8 bit,(6) 堆栈指针SP

温馨提示

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

评论

0/150

提交评论