单片机原理及应用C语言版2.ppt
《单片机原理及应用C语言版2.ppt》由会员分享,可在线阅读,更多相关《单片机原理及应用C语言版2.ppt(123页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机原理及应用C语言版2 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望第第2章章 MCS-51单片机结构与原理单片机结构与原理目目 录录2.1 MCS-51单片机结构及单片机结构及CPU2.2 MCS-51单片机引脚与总线结构单片机引脚与总线结构2.3 MCS-51单片机的存储器结构单片机的存储器结构2.4 MCS-51单片机的输入输出端口单片机的输入输出端口2.5 MCS-51单片机的时钟及单片机的时钟及CPU时序时序2.6 MCS-51单片机的工作方式单片
2、机的工作方式第第2章章 MCS-51单片机结构与原理单片机结构与原理本章讨论本章讨论MCS-51单片机的结构和工作原单片机的结构和工作原理,理,内容主要有内容主要有MCS-51单片机结构、引脚单片机结构、引脚信号、存储器配置、输入信号、存储器配置、输入/输出端口、时钟输出端口、时钟与与CPU时序,以及单片机的工作方式等。时序,以及单片机的工作方式等。本章是单片机的基本内容本章是单片机的基本内容,为学习后面,为学习后面各个章节的基础,也是从事单片机应用开发各个章节的基础,也是从事单片机应用开发的基础。的基础。2.1 MCS-51单片机内部结构及单片机内部结构及CPU 主要内容主要内容2.1.1
3、MCS-51单片机的功能结构及特点单片机的功能结构及特点2.1.2 MCS-51单片机的内部原理结构单片机的内部原理结构2.1.3 MCS-51单片机的单片机的CPU2.1.1 MCS-51单片机的功能结构及特点单片机的功能结构及特点 MCS-51单片机的内部功能结构如下页单片机的内部功能结构如下页图所示,图中是以增强型单片机的结构为图所示,图中是以增强型单片机的结构为对象。对象。从图中可以看到,从图中可以看到,MCS-51单片机单片机在一在一块芯片中集成了微型计算机所具有的所有块芯片中集成了微型计算机所具有的所有部件部件,从功能的角度来看,主要包括,从功能的角度来看,主要包括9个个部分。部分
4、。图图2.1 MCS-51(增强型增强型)单片机功能结构图单片机功能结构图时钟信号源时钟信号源外部事件信号外部事件信号BUS时钟电路时钟电路8KB FlashROM256B RAM128B SFR16位位3个个定时定时/计数器计数器64KB总线总线扩展控制器扩展控制器可编程可编程并行口并行口可编程全可编程全双工串行口双工串行口CPU中断控制器中断控制器外中断外中断8位位4个并行口个并行口串行通信串行通信总线控制总线控制BUS2.1.1 MCS-51单片机的功能结构及特点单片机的功能结构及特点 2.1.1 MCS-51单片机的功能结构及特点单片机的功能结构及特点 MCS-51单片机内部主要包括单
5、片机内部主要包括9个部分:个部分:一个一个8位的微处理器位的微处理器CPU8KB的片内的片内程序存储器程序存储器Flash ROM256B的片内的片内数据存储器数据存储器RAM、128B特殊功特殊功能寄存器能寄存器(SFR)3个个16位的位的定时器定时器/计数器计数器有一个管理有一个管理6个中断源的个中断源的中断控制器中断控制器4个个8位位并行并行I/O端端一个全双工的一个全双工的串行接口串行接口(UART)片内片内振荡电路和时钟发生器振荡电路和时钟发生器 可扩展可扩展64KB程序、程序、64KB数据存储器的数据存储器的三总三总线控制电路线控制电路2.1.2 MCS-51单片机的内部原理结构单
6、片机的内部原理结构MCS-51单片机的内部原理结构如图单片机的内部原理结构如图2-2所示。所示。与图与图2-1比较,比较,主要的区别是画出了主要的区别是画出了CPU的内部结构的内部结构,图中的中间部分除了,图中的中间部分除了“定时器、定时器、串行口串行口”大方框之外都属于大方框之外都属于CPU部件。部件。下面先介绍下面先介绍CPU部分,对于其它部件,部分,对于其它部件,将在本章和后面的章节讲解。将在本章和后面的章节讲解。图图2-2 MCS-51(增强型增强型)单片机原理结构图单片机原理结构图XTAL2 XTAL1P3.0P3.7P1.0P1.7RAM地址地址端口端口0驱动器驱动器端口端口2驱动
7、器驱动器8KB FlashROM端口端口0锁存器锁存器端口端口2锁存器锁存器端口端口1驱动器驱动器端口端口3驱动器驱动器端口端口1锁存器锁存器端口端口3锁存器锁存器暂存器暂存器1SPPSWB寄存器寄存器暂存器暂存器2ACC256BRAM128B SFR缓冲器缓冲器PC加加1PC程序地址寄存器程序地址寄存器DPTR定时器、串行口定时器、串行口中断部件及中断部件及特殊功能寄存器特殊功能寄存器地址总线地址总线数据总线数据总线P2.0P2.7Vcc GND指指令令寄寄存存器器指指令令译译码码器器指指令令控控制制器器P0.0P0.7PSENALEEA RST ALU2.1.3 MCS-51单片机的单片机
8、的CPU MCS-51单片机内部有一个功能强大的单片机内部有一个功能强大的8位位CPU,它包含两个基本部分,运算器和控,它包含两个基本部分,运算器和控制器。制器。一、运算器一、运算器运算器包括:运算器包括:算术和逻辑运算部件算术和逻辑运算部件ALU(Arithmetic Logic Unit)以及以及累加器累加器ACC、寄存器寄存器B、暂存器暂存器1、暂存器暂存器2、程序状态字寄存器、程序状态字寄存器PSW、布尔处布尔处理器理器等。等。2.1.3 MCS-51单片机的单片机的CPU1、算术逻辑运算部件、算术逻辑运算部件ALUALU可以对可以对4位(半字节)、位(半字节)、8位(一字位(一字节)
9、和节)和16位(双字节)数据进行操作。位(双字节)数据进行操作。这些操作可以是:这些操作可以是:算术运算:算术运算:加、减、乘、除、加加、减、乘、除、加1、减、减1、BCD码数的十进制调整及比较等;码数的十进制调整及比较等;逻辑运算:逻辑运算:与、或、异或、求补及循环与、或、异或、求补及循环移位等。移位等。2.1.3 MCS-51单片机的单片机的CPU2、累加器、累加器ACCACC在在CPU结构中占有特殊的位置,所结构中占有特殊的位置,所以以ACC在指令中使用的非常多。在指令中使用的非常多。ACC既做源操作数又做目的操作数既做源操作数又做目的操作数,如,如在加、减、乘、除算术运算指令中,在与、
10、在加、减、乘、除算术运算指令中,在与、或、异或、循环移位逻辑运算指令等。或、异或、循环移位逻辑运算指令等。ACC也作为通用寄存器使用也作为通用寄存器使用,并且可以,并且可以按位操作,所以按位操作,所以ACC是一个用处最多、最忙是一个用处最多、最忙碌的寄存器。碌的寄存器。在指令中用助记符在指令中用助记符A来表示来表示。2.1.3 MCS-51单片机的单片机的CPU3、B寄存器寄存器B做专门应用:做专门应用:在乘、除运算时,用来存在乘、除运算时,用来存放一个操作数,并且存放运算后的部分结果。放一个操作数,并且存放运算后的部分结果。B做一般应用:做一般应用:在非乘、除运算中,在非乘、除运算中,B可可
11、以作为通用寄存器使用以作为通用寄存器使用。B可以按位操作可以按位操作2.1.3 MCS-51单片机的单片机的CPU4、程序状态字、程序状态字PSW功能:功能:用于设定用于设定CPU的状态和指示指令的状态和指示指令执行后的状态执行后的状态。PSW相当于其它微处理器中的相当于其它微处理器中的标志寄标志寄存器存器。格式如下:。格式如下:PSW(D0H)D7D6D5D4D3D2D1D0CYACF0RS1 RS0 OVF1P图图2-3 程序状态字程序状态字PSW格式格式2.1.3 MCS-51单片机的单片机的CPUCY(PSW.7):):进位、借位标志进位、借位标志在做位操作在做位操作(布尔操作)(布尔
12、操作)时时CY作作 为位累加器为位累加器。在指令中用。在指令中用C代替代替CYAC(PSW.6):):半进位、半借位标志半进位、半借位标志,也称为辅助进位标志也称为辅助进位标志F0、F1(PSW.5、PSW.1):):用户标志用户标志位位,留给用户使用,留给用户使用D7D6D5D4D3D2D1D0CYACF0RS1 RS0 OVF1P2.1.3 MCS-51单片机的单片机的CPUOV(PSW.2):):溢出标志位溢出标志位有以下几种情况:有以下几种情况:加减运算:加减运算:OV1表示结果超出了表示结果超出了8位有符号位有符号数的有效范围(数的有效范围(128127),对无符号),对无符号数数O
13、V没有意义。没有意义。无符号数乘法运算:无符号数乘法运算:OV1表明结果超出了表明结果超出了8位数位数 无符号数除法运算:无符号数除法运算:OV1表明除数为表明除数为02.1.3 MCS-51单片机的单片机的CPUP(PSW.0):):累加器累加器A的奇偶标志位的奇偶标志位P表示累加器表示累加器A中中1的个数的奇偶性的个数的奇偶性P1,A中有奇数个中有奇数个1P0,A中有偶数个中有偶数个12.1.3 MCS-51单片机的单片机的CPURS1、RS0(PSW.4 和和PSW.3):):工作工作寄存器组选择控制位。寄存器组选择控制位。工作寄存器工作寄存器:R0、R1、R7表表2-1 RS1、RS0
14、的组合关系的组合关系RS1 RS0工作寄存器组工作寄存器组 片内片内RAM地址地址0 0第第0组组00H07H0 1第第1组组08H0FH1 0第第2组组10H17H1 1第第3组组18H1FH2.1.3 MCS-51单片机的单片机的CPU5、布尔处理器、布尔处理器 布尔处理器以布尔处理器以PSW中的进位标志位中的进位标志位CY作作为位累加器为位累加器(用(用C表示)。表示)。功能:功能:专门用于处理位操作专门用于处理位操作。MCS-51单片机有丰富的位处理指令:单片机有丰富的位处理指令:如如置位、位清置位、位清0、位取反、判断位值(为、位取反、判断位值(为1或为或为0)转移,以及通过)转移,
15、以及通过C(指令中用(指令中用C代替代替CY)做位数据传送、位逻辑与、位逻辑或等位操做位数据传送、位逻辑与、位逻辑或等位操作。作。2.1.3 MCS-51单片机的单片机的CPU二、控制器二、控制器控制器控制器包括包括程序计数器程序计数器PC、指令寄存器、指令寄存器IR、指令译码器、指令译码器ID,以及,以及时钟控制时钟控制逻辑、堆逻辑、堆栈指针栈指针SP、地址指针、地址指针DPTR等。等。1、程序计数器、程序计数器PCPC是一个是一个具有自加具有自加1功能的功能的16位的计数器位的计数器PC的内容是将要执行的的内容是将要执行的下一条指令的地下一条指令的地址址改变改变PC的内容就改变了程序执行的
16、顺序的内容就改变了程序执行的顺序2.1.3 MCS-51单片机的单片机的CPU2、指令寄存器、指令寄存器IR和指令译码器和指令译码器IDIR:存放从存放从Flash ROM中读取的指令中读取的指令ID:进行译码,产生一定序列的控制信进行译码,产生一定序列的控制信号,完成指令所规定的操作。号,完成指令所规定的操作。3、堆栈、堆栈(1)堆栈的概念)堆栈的概念堆栈是在堆栈是在RAM中专门开辟的一个特殊用中专门开辟的一个特殊用途的存储区途的存储区。(2)堆栈的访问原则)堆栈的访问原则:“先进后出先进后出”、“后进先出后进先出”。即先进入堆栈的数据后移出。即先进入堆栈的数据后移出堆栈,即后进入堆栈的数据
17、先移出堆栈。堆栈,即后进入堆栈的数据先移出堆栈。2.1.3 MCS-51单片机的单片机的CPU(3)堆栈的结构)堆栈的结构堆栈的一端的地址是固定的,称为堆栈的一端的地址是固定的,称为栈底栈底;另一端的地址是动态变化的,称为另一端的地址是动态变化的,称为栈顶栈顶。(4)堆栈的操作方式)堆栈的操作方式堆栈有两种操作方式堆栈有两种操作方式:数据:数据进栈进栈和数据和数据出栈出栈。进栈和出栈都是在栈顶进行进栈和出栈都是在栈顶进行,这就必然,这就必然是按照是按照“先进后出先进后出”、“后进先出后进先出”的方的方式存取数据。式存取数据。2.1.3 MCS-51单片机的单片机的CPU(5)堆栈的应用)堆栈的
18、应用主要是用来暂时存放数据,主要是用来暂时存放数据,有两种情况有两种情况使用堆栈:使用堆栈:一是一是CPU自动使用堆栈自动使用堆栈,当调用子程序,当调用子程序或响应中断,处理中断服务程序时,或响应中断,处理中断服务程序时,CPU自动将自动将返回地址存放到堆栈返回地址存放到堆栈中;中;通过堆通过堆栈传递参数栈传递参数。二是程序员使用堆栈二是程序员使用堆栈,用堆栈暂时存放,用堆栈暂时存放数据。数据。2.1.3 MCS-51单片机的单片机的CPU4、堆栈指针、堆栈指针SP堆栈指针堆栈指针SP(Stack Pointer)中为栈顶中为栈顶的地址的地址,即,即SP指向栈顶指向栈顶。SP是访问堆栈的间址寄
19、存器是访问堆栈的间址寄存器SP具有自动加具有自动加1、自动减、自动减1功能功能。当数据。当数据进栈时,进栈时,SP先自动加先自动加1,然后,然后CPU将数据存将数据存入;入;当数据出栈时,当数据出栈时,CPU先将数据送出,先将数据送出,然后然后SP自动减自动减1。2.1.3 MCS-51单片机的单片机的CPU下图是数据进栈的情况下图是数据进栈的情况数据从栈顶进入数据从栈顶进入 开始状态开始状态 58进栈后的状态进栈后的状态A6,7B进栈后的状态进栈后的状态E7E7E7E6E6E6SPE5SPE5SPE5E1E4E2E4E4E4E3E3E3E2E258E236E136E136E121E021E0
20、21E058A67B2.1.3 MCS-51单片机的单片机的CPU由于进栈时由于进栈时SP的值增加,即的值增加,即堆栈向地堆栈向地址大的方向生长址大的方向生长,并且,并且栈顶是有效数据栈顶是有效数据,这种堆栈是这种堆栈是满递增型堆栈满递增型堆栈。7B出栈后的状态出栈后的状态A6、58、36出栈后的状态出栈后的状态E7E7E6E6SPE5SPE5E37BE4E07BE4A6E3A6E358E258E236E136E121E021E07BA658362.1.3 MCS-51单片机的单片机的CPU5、数据指针、数据指针DPTRDPTR是唯一的是唯一的16位寄存器位寄存器。DPTR既可以作为一个既可以
21、作为一个16位寄存器使用,位寄存器使用,也可以作为两个独立的也可以作为两个独立的8位寄存器使用位寄存器使用。其。其高字节寄存器用高字节寄存器用DPH表示,低字节寄存器表示,低字节寄存器用用DPL表示。表示。DPTR的用途:的用途:(1)主要用于存放主要用于存放16位地位地址址,以便对,以便对64KB的片外的片外RAM和和64KB的程的程序存储空间作间接访问。序存储空间作间接访问。(2)其次用于存放其次用于存放数据数据,作为一般寄存器使用。,作为一般寄存器使用。2.2 MCS-51单片机引脚与总线结构单片机引脚与总线结构 主要内容主要内容2.2.1 MCS-51单片机引脚信号及功能单片机引脚信号
22、及功能2.2.2 MCS-51单片机外部总线结构单片机外部总线结构2.2.1 MCS-51单片机引脚信号及功能单片机引脚信号及功能 封装:封装:40DIP,44PLCC。常用常用40DIP40个引脚分个引脚分为为4类:类:l 电源引脚电源引脚l 晶振引脚晶振引脚l 控制信号控制信号l 输入输入/输出引输出引脚脚T2/P1.0T2EX/P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1Vss89C5189C52403938373635
23、34333231302928272625242322211234567891011121314151617181920VccP0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7EA/VPPALE/PROGPSENP2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A82.2.1 MCS-51单片机引脚信号及功能单片机引脚信号及功能 一、电源引脚一、电源引脚 Vcc(40脚):接脚):接5V电源正端电源正端Vss(20脚):接脚):接5V电源地端电源地端
24、二、晶振引脚二、晶振引脚XTAL1(19脚)脚)XTAL2(18脚)脚)晶晶振振 XTAL2XTAL1单片机单片机C1 C2 18 19 2.2.1 MCS-51单片机引脚信号及功能单片机引脚信号及功能 三、控制信号引脚三、控制信号引脚1、RST/VPD(9脚)脚)RST:复位信号输入端复位信号输入端,高电平有效高电平有效。单片机正常工作时:单片机正常工作时:RST保持两个机器保持两个机器周期的高电平就会使单片机复位;周期的高电平就会使单片机复位;上电时:上电时:RST上的高电平必须保持上的高电平必须保持10ms以上才能保证有效复位,由于振荡器需要一以上才能保证有效复位,由于振荡器需要一定的起
25、振时间。定的起振时间。VPD:备用电源输入端备用电源输入端,以保持内部,以保持内部RAM中的数据不丢失。中的数据不丢失。当当Vcc的电压降低到的电压降低到低电平规定的值或掉电时低电平规定的值或掉电时,接入电源。,接入电源。2.2.1 MCS-51单片机引脚信号及功能单片机引脚信号及功能 2、ALE/PROG(30引脚)引脚)ALE:地址锁存信号地址锁存信号,每个机器周期输,每个机器周期输出两个正脉冲,下降沿或低电平用于控制出两个正脉冲,下降沿或低电平用于控制外接的地址锁存器,锁存从外接的地址锁存器,锁存从P0口输出的低口输出的低8位地址。位地址。可以将可以将ALE作为时钟信号使用作为时钟信号使
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 语言版
限制150内