《单片机基本原PPT课件》由会员分享,可在线阅读,更多相关《单片机基本原PPT课件(38页珍藏版)》请在金锄头文库上搜索。
1、第2章 单片机基本原理 第2章 单片机基本原理 2.1 MCS-51系列单片机简介MCS-51系列单片机是美国Intel公司在1980年推出的高性能8位单片机,它包含51和52 两个子系列。 对于51子系列,主要有8031、8051、8751 三种机型,它们的指令系统与芯片引脚完全兼容,仅片内程序存储器有所不同,8031芯片不带ROM,8051芯片带4KROM,8751芯片带4KEPROM。51子系列的主要特点为:8位CPU。片内带振荡器,频率范围1212MHZ。片内带128字节的数据存储器。片内带4K的程序存储器。程序存储器的寻址空间为64K字节。片外数据存储器的寻址空间为64K字节。128
2、个用户位寻址空间。 第2章 单片机基本原理 21个字节特殊功能寄存器。4个8位的并行I/O接口:P0、P1、P2、P3。2个16位定时器/计数器2个优先级别的5个中断源。1个全双工的串行I/O接口,可多机通信。111条指令,含乘法指令和除法指令。片内采用单总线结构。有较强的位处理能力。采用单一+5V电源。 对于52子系列,有8032、8052、8752 三种机型。52子系列与51子系列相比大部分相同,不同之处在于:片内数据存储器增至256字节;8032芯片不带ROM,8052芯片带8KROM,8752芯片带8KEPROM;有3个16位定时器/计数器;6个中断源。本书以51子系列的8051介绍M
3、CS-51单片机的基本原理 第2章 单片机基本原理 CPUROM/EPROMRAM定时/计数器并行接口串行接口中断系统P0P1P2P3TXDRXDINT0INT1T0T1XTAL1XTAL2时钟电路2.2 MCS-51系列单片机的结构原理 2.2.1 MCS-51系列单片机的基本组成第2章 单片机基本原理 PSENALERESETXLAT1P0.0P0.7P2.0P2.7RAM地址寄存器RAMP0锁存器P2锁存器EPROM或ROM程序地址寄存器缓冲器B寄存器ACC暂存器2暂存器1ALUPSWSPPC增量器PCDPTRP0驱动器P2驱动器特殊功能寄存器指令寄存器定时及控制P1锁存器P3锁存器P1
4、驱动器P3驱动器振荡器VssP1.0P1.7P3.0P3.7EAXLAT2Vcc2.2.2 MCS-51系列单片机的内部结构第2章 单片机基本原理 2.2.3 MCS-51系列单片机的中央处理器(CPU)一运算部件一运算部件 运算部件以算术逻辑运算单元ALU为核心,包含累加器ACC(简称A)、B寄存器、暂存器、标志寄存器PSW等许多部件,它能实现算术运算、逻辑运算、位运算、数据传输等处理。 标志寄存器PSW是一个8位的寄存器,它用于保存指令执行结果的状态,以供程序查询和判别。 D7D6D5D4D3D2D1D0CACF0RS1RS0OV-PC():进位标志位。 AC():辅助进位标志位。 F0(
5、):用户标志位。 RS1、RS0(、):寄存器组选择位。 第2章 单片机基本原理 RS1RS0工作寄存器组000组(00H-07H)011组(08H-0FH)102组(10H-17H)113组(18H-1FH)OV():溢出标志位。 P():奇偶标志位(偶)。若累加器A中1的个数为奇数,则P置位,若累加器A中1的个数为偶数,则P清零。 【例【例2-1】 试分析下面指令执行后,累加器A,标志位C、AC、OV、P的值?MOV A,#67HADD A,#58H加法运算过程如下: 第2章 单片机基本原理 67H=01100111B 58H=01011000B 0 1 1 0 0 1 1 1 B+ 0
6、1 0 1 1 0 0 0 B 1 0 1 1 1 1 1 1 =0BFH 则执行后累加器A中的值为0BFH,由相加过程得C=0、AC=0、OV=1、P=1。二控制部件二控制部件 控制部件是单片机的控制中心,它包括定时和控制电路、指令寄存器、指令译码器、程序计数器PC、堆栈指针SP、数据指针DPTR以及信息传送控制部件等。它先以振荡信号为基准产生CPU的时序,从ROM中取出指令到指令寄存器,然后在指令译码器中对指令进行译码,产生指令执行所需的各种控制信号,送到单片机内部的各功能部件,指挥各功能部件产生相应的操作,完成对应的功能。 第2章 单片机基本原理 2.2.4 MCS-51系列单片机的存储
7、器结构 MCS-51单片机存储器结构与一般微机的存储器结构不同,分为程序存储器ROM和数据存储器RAM。程序存储器存放程序、固定常数和数据表格。数据存储器用作工作区及存放数据。 一程序存储器一程序存储器1程序存储器的编址与访问程序存储器的编址与访问 MCS-51单片机的程序存储器,从物理结构上分为片内和片外程序存储器,而对于片内程序存储器,在MCS-51系列中,不同的芯片各不相同,8031和8032内部没有ROM,8051内部有4KBROM,8751内部有4KBEPROM,8052内部有8KBROM,8752内部有8KBEPROM。 对于内部没有ROM的8031和8032,工作时只能扩展外部R
8、OM,最多可扩展64K,地址范围为0000HFFFFH第2章 单片机基本原理 对于内部有ROM的芯片,根据情况外部可以扩展ROM,但内部ROM和外部ROM共用64K存储空间,其中,片内程序存储器地址空间和片外程序存储器的低地址空间重叠。51子系列重叠区域为0000H0FFFH,52子系列重叠区域为0000H1FFFH。片 外ROMEA=0片 外ROMEA=0片 内ROMEA=1片 外ROM0000HFFFFH0000H0FFFH1000HFFFFH片 外ROMEA=0片 内ROMEA=1片 外ROM0000H1FFFH2000HFFFFH(a)片内无ROM(b)片内有4K ROM(c)片内有8
9、K ROM第2章 单片机基本原理 2程序存储器的程序存储器的7个特殊地址个特殊地址中断源入口地址外部中断00003H定时/计数器0000BH外部中断10013H定时/计数器1001BH串行口0023H定时/计数器2(仅52子系列有)002BH复位地址0000H,第2章 单片机基本原理 二数据存储器二数据存储器从物理结构上分为片内数据存储器和片外数据存储器。 1片内数据存储器片内数据存储器对于51子系列,片内数据存储器RAM有128字节,编址为00H7FH;对于52子系列,片内数据存储器有256字节,编址为00HFFH;除了RAM块外,还有特殊功能寄存器(SFR)块,编址为80HFFH ,与52
10、系列RAM后128字节编址重叠的。后者也有128字节,编址为80HFFH;后者与前者的的。访问时通过不同的指令相区分。 片内数据存储器按功能分成以下几个部分:工作寄存器组区、位寻址区、一般RAM区,其中还包含堆栈区。 第2章 单片机基本原理 SFR00H1FH20H2FH30H7FH80HFFH80HFFH工作寄存器组区位寻址区一般RAM区一般RAM区仅52子子系列1. 工作寄存器组区工作寄存器组区 00H1FH单元为工作寄存器组区,共32个字节。工作寄存器也称为通用寄存器,用于临时寄存8位信息。工作寄存器共有4组,称为0组、1组、2组和3组,每组8个,分别依次用R0R7表示 第2章 单片机基
11、本原理 20H2FH为位寻址区,共16字节,128位。这128位每位都可以按位方式使用,每一位都有一个位地址,位地址范围为00H7FH 字节单元地址D7D6D5D4D3D2D1D020H070605040302010021H0F0E0D0C0B0A090822H171615141312111023H1F1E1D1C1B1A191824H272625242322212025H2F2E2D2C2B2A292826H373635343332313027H3F3E3D3C3B3A393828H474645444342414029H4F4E4D4C4B4A49482AH57565554535251502
12、BH5F5E5D5C5B5A59582CH67666564636261602DH6F6E6D6C6B6A69682EH77767574737271702FH7F7E7D7C7B7A7978第2章 单片机基本原理 30H7FH是一般RAM区,也称为用户RAM区,共80字节,对于52子系列,一般RAM区从30HFFH单元。另外,对于前两区中未用的单元也可作为用户RAM单元使用。 4. 堆栈区与堆栈指针堆栈区与堆栈指针堆栈是按先入后出、后入先出的原则进行管理的一段存储区域。MCS-51单片机中,堆栈是用片内数据存储器的一段区域,在具体使用时应避开工作寄存器、位寻址区,一般设在2FH以后的单元,如工作
13、寄存器和位寻址区未用,也可开辟为堆栈。第2章 单片机基本原理 5. 特殊功能寄存器特殊功能寄存器CPU专用寄存器:累加器A(E0H),寄存器B(F0H),程序状态寄存器PSW(D0H),堆栈指针SP(81H),数据指针DPTR(82H、83H)。并行接口:P0P3(80H、90H、A0H、B0H)。串行接口:串口控制寄存器SCON(98H),串口数据缓冲器SBUF(99h),电源控制寄存器PCON(87H)。定时/计数器:方式寄存器TMOD(89H),控制寄存器TCON(88H),初值寄存器TH0、TL0(8CH、8AH)/TH1、TL1(8DH、8BH)。中断系统:中断允许寄存器IE(A8H
14、),中断优先级寄存器IP(B8H)。第2章 单片机基本原理 定时/计数器2相关寄存器:定时/计数器2控制寄存器T2CON(CBH),定时/计数器2自动重装寄存器RLDL、RLDH(CAH、CBH),定时/计数器2初值寄存器TH2、TL2(CDH、CCH)。(仅52子系列有)特殊功能寄存器名称符号地址位地址与位名称D7D6D5D4D3D2D1D0P0口P080H8786858483828180堆栈指针SP81H数据指针低字节DPL82H数据指针高字节DPH83H定时/计数器控制TCON88HTF18FTR18ETF08DTR08CIE18BIT18AIE089IT088定时/计数器方式TMOD8
15、9HGATEC/TM1M0GATEC/TM1M0第2章 单片机基本原理 定时/计数器0低字节TL08AH定时/计数器0高字节TH08BH定时/计数器1低字节TL18CH定时/计数器1高字节TH18DHP1口P190H9796959493929190电源控制PCON97HSMODGF1GF0PDIDL串行口控制SCON98HSM09FSM19ESM09DREN9CTB89BRB89ATI99RI98串行口数据SBUF99HP2口P2A0HA7A6A5A4A3A2A1A0中断允许控制IEA8HEAAFET2ADESACET1ABEX1AAET0A9EX0A9第2章 单片机基本原理 P3口P3B0H
16、B7B6B5B4B3B2B1B0中断优先级控制IPB8HPT2BDPSBCPT1BBPX1BAPT0B9PX0B8定时/计数器2控制T2CONC8HTF2CFEXF2CERCLKCDTCLKCCEXEN2CBTR2CAC/T2C9CP/RL2C8定时/计数器2重装低字节RLDLCAH定时/计数器2重装高字节RLDHCBH定时/计数器2低字节TL2CCH定时/计数器2高字节TH2CDH程序状态寄存器PSWD0HCD7ACD6F0D5RS1D4RS0D3OVD2D1PD0累加器AE0HE7E6E5E4E3E2E1E0寄存器BBF0HF7F6F5F4F3F2F1F0在表中,字节地址能被8整除的既能按
17、字节方式处理,也能够按位方式处理。 第2章 单片机基本原理 2片外数据存储器片外数据存储器扩展的外部数据存储器最多64KB,地址范围为0000H0FFFFH,通过DPTR作指针间接方式访问,对于低端的256字节,可用两位十六进制地址编址,地址范围为00H0FFH,可通过R0和R1间接方式访问。说明:第一,64K的程序存储器和64K的片外数据存储器地址空间都为0000H0FFFFH,地址空间是重叠的,它们如何区分呢?第二,片内数据存储器和片外数据存储器的低256字节的地址空间是重叠的,它们如何区分呢?第2章 单片机基本原理 2.2.5 MCS-51系列单片机的输入系列单片机的输入/输出接口输出接
18、口 MCS-51系列单片机有4个8位的并行I/O接口:P0、P1、P2和P3口。它们是特殊功能寄存器中的4个。这4个口,既可以作输入,也可以作输出,既可按8位处理,也可按位方式使用。输出时具有锁存能力,输入时具有缓冲功能。 一一P0口口P0口是一个三态双向口,可作为地址数据分时复用口,也可作为通用的I/O接口。它包括一个输出锁存器、两个三态缓冲器、输出驱动电路和输出控制电路组成 ,它的一位结构如图 :第2章 单片机基本原理 21&DQCLK锁存器读锁存器写锁存器内部总线读引脚地址数据控制VccGNDV2V13MUX10第2章 单片机基本原理 当P0口作通用I/O接口时,应注意以下两点:(1)在
19、输出数据时,由于V2截止,输出级是漏极开路电路,要使“1”信号正常输出,必须外接上拉电阻。(2)P0口作为通用I/O口输入使用时,在输入数据前,应先向P0口写“1”. 另外,P0口的输出级具有驱动8个LSTTL负载的能力,输出电流不大于800A 第2章 单片机基本原理 二二P1口口 P1口是准双向口,它只能作通用I/O接口使用。P1口的结构与P0口不同,它的输出只由一个场效应管V1与内部上拉电阻组成,如图 21DQCLK锁存器读锁存器写锁存器内部总线读引脚VccGNDP1.xV1内部上拉电阻输入输出原理特性与P0口作为通用I/O接口使用时一样,当其输出时,可以提供电流负载,不必像P0口那样需要
20、外接上拉电阻。P1口具有驱动4个LSTTL负载的能力。第2章 单片机基本原理 三三P2口口 P2口也是准双向口,它有两种用途:通用I/O接口和高8位地址线。它的1位的结构如图,与P1口相比,它只在输出驱动电路上比P1口多了一个模拟转换开关MUX和反相器3。 21DQCLK锁存器读锁存器写锁存器内部总线读引脚地址控制VccGNDP2.xV1MUX内部上拉电阻310第2章 单片机基本原理 四四P3口口P3口1位的结构如图。它的输出驱动由与非门3、V1组成,输入比P0、P1、P2口多了一个缓冲器4。21DQCLK锁存器读锁存器写锁存器内部总线读引脚VccGNDP3.xV1内部上拉电阻&34第二功能输
21、入第二功能输出第2章 单片机基本原理 P3口除了作为准双向通用I/O口使用外,它的每一根线还具有第二种功能。P3口第二功能P3.0RXD 串行口输入端P3.1TXD 串行口输出端P3.2INT0 外部中断0请求输入端,低电平有效P3.3INT1 外部中断1请求输入端,低电平有效P3.4T0 定时/计数器0外部计数脉冲输入端P3.5T1 定时/计数器0外部计数脉冲输入端P3.6WR 外部数据存储器写信号,低电平有效P3.7RD 外部数据存储器读信号,低电平有效第2章 单片机基本原理 2.3 MCS-51系列单片机的外部引脚及片外总线系列单片机的外部引脚及片外总线2.3.1 外部引脚外部引脚P1.
22、0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VpdP3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7XTAL2XTAL1VssVccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VppALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.012345678910111213141516171819204039383736353433323130292827262524232221803180518751RXDTXDINT0INT1T0T1WRRDP0.0P0.1P0.2P0.3P0.4P0.5P0.6P
23、0.7P2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7PSENEAALERST用户I/O控制总线(CB)锁存器A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D7D6D5D4D3D2D1D0地址总线数据总线(AB)(DB)VccVssVccVss第2章 单片机基本原理 一输入一输入/输出引脚输出引脚(1)P0口(3932脚):统称为P0口。在不接片外存储器与不扩展I/O口时,作为准双向输入/输出口。在接有片外存储器或扩展I/
24、O口时,P0口分时复用为低8位地址总线和双向数据总线。(2)P1口(18脚):统称为P1口,可作为准双向I/O口使用。对于52子系列,与还有第二功能:可用作定时器/计数器2的计数脉冲输入端T2,可用作定时器/计数器2的外部控制端T2EX。(3)P2口(2128脚):统称为P2口,一般可作为准双向I/O口使用;在接有片外存储器或扩展I/O口且寻址范围超过256字节时,P2口用作高8位地址总线。(4)P3口(1017脚):统称为P3口。除作为准双向I/O口使用外,还可以将每一位用于第二功能,而且P3口的每一条引脚均可独立定义为第一功能的输入输出或第二功能。第2章 单片机基本原理 二控制线二控制线(
25、1)ALE/PROG(30脚):地址锁存信号输出端。ALE在每个机器周期内输出两个脉冲。 (2)PSEN(29脚):片外程序存储器读选通信号输出端,低电平有效。 (3)RST/VPD(9脚):RST即为RESET,VPD为备用电源。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机回复到初始状态。上电时,考虑到振荡器有一定的起振时间,该引脚上高电平必须持续10 ms以上才能保证有效复位。(4) /VPP(31脚):EA为片外程序存储器选用端。该引脚低电平时,选用片外程序存储器,高电平或悬空时选用片内程序存储器。三主电源引脚三主电源引脚VCC(40脚):接+5
26、 V电源正端。VSS(20脚):接+5 V电源地端。第2章 单片机基本原理 四外接晶体引脚四外接晶体引脚XTAL1、XTAL2(19、18脚):当使用单片机内部振荡电路时,这两个引脚用来外接石英晶体和微调电容,如图2-10(a)。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部时钟时,对于HMOS单片机,XTAL1引脚接地,XTAL2接片外振荡脉冲输入(带上拉电阻);对于CHMOS单片机,XTAL2引脚接地,XTAL1接片外振荡脉冲输入(带上拉电阻),如图2-11(b)和(c)。 XTAL1XTAL2外部振荡信号XTAL1XTAL2VccVssR外部振荡信号XT
27、AL2XTAL1VccVssR(a)内部时钟方式 (b)HMOS工艺外接时钟 (c)CHMOS工艺外接时钟第2章 单片机基本原理 2.3.2 片外总线结构片外总线结构一地址总线一地址总线 地址总线宽度为16位,寻址范围都为64KB。由P0口经地址锁存器提供低8位(A7A0),P2口提供高8位(A15A8)而形成。可对片外程序存储器和片外数据存储器寻址。二数据总线二数据总线 数据总线宽度为8位,由P0口直接提供。三三控制总线控制总线 控制总线由第二功能状态下的P3口和4根独立的控制线RST、EA、ALE和PSEN组成。第2章 单片机基本原理 2.4 MCS-51系列单片机的工作方式系列单片机的工
28、作方式2.4.1 复位方式复位方式在时钟电路工作以后,当外部电路使得RST端出现2个机器周期(24个时钟周期)以上的高电平,系统内部复位。复位有两种方式:上电复位和按钮复位。如图所示。 VccRSTVssMCS-51VccRSTVssMCS-511k1k200(a) 上电复位电路 (b) 按钮复位电路第2章 单片机基本原理 特殊功能寄存器初始内容特殊功能寄存器初始内容A00HTCON00HPC0000HTL000HB00HTH000HPSW00HTL100HSP07HTH100HDPTR0000HSCON00HP0P3FFHSBUFXXXXXXXXBIPXX000000BPCON0XXX000
29、0BIE0X000000BTMOD00H第2章 单片机基本原理 2.4.2 程序执行方式程序执行方式2.4.3 单步执行方式单步执行方式所谓单步执行,是指在外部单步脉冲的作用下,使单片机一个单步脉冲执行一条指令后就暂停下来,再一个单步脉冲再执行一条指令后又暂停下来。它通常用于调试程序、跟踪程序执行和了解程序执行过程。 单片机没有单步执行中断,MCS-51单片机的单步执行也要利用中断系统完成。MCS-51的中断系统规定,从中断服务程序中返回之后,至少要再执行一条指令,才能重新进入中断。 将外部脉冲加到INT0引脚,平时让它为低电平,通过编程规定INT0为电平触发。那么,不来脉冲时INT0总处于响
30、应中断的状态。在INT0的中断服务程序中安排下面的指令:PAUSE0:,PAUSE0 ;若INT0=0,不往下执行PAUSE1:,PAUSE1 ;若INT0=1,不往下执行RETI ;返回主程序执行下一条指令第2章 单片机基本原理 2.4.4 节电方式节电方式一一HMOS单片机的掉电方式单片机的掉电方式HMOS芯片本身运行功耗较大,这类芯片没有设置低功耗运行方式。为了减小系统的功耗,设置了掉电方式,RST/Vpd端接有备用电源,即当单片机正常运行时,单片机内部的RAM由主电源Vcc供电,当Vcc掉电,Vcc电压低于RST/Vpd端备用电源电压时,由备用电源向RAM维持供电,保证RAM中数据不丢
31、失。这时系统的其它部件都停止工作,包括片内振荡器。 二二CHMOS的节电运行方式的节电运行方式HMOS的芯片运行时耗电少,有两种节电运行方式:待机方式和掉电保护方式。以进一步降低功耗,它们特别适用于电源功耗要求低的应用场合。 2.4.5 编程和校验方式编程和校验方式第2章 单片机基本原理 2.5 MCS-51系列单片机的时序系列单片机的时序2.5.1 机器周期和指令周期机器周期和指令周期指令周期: 计算机取一条指令至执行完该指令需要的时间称为指令周期,不同的指令,指令周期不同。单片机的指令周期以机器周期为单位。MCS-51系列单片机中,大多数指令的指令周期由一个机器周期或两个机器周期组成,只有
32、乘法、除法指令须要4机器周期指令。机器周期:机器周期是单片机的基本操作周期,每个机器周期包含S1、S2、S66个状态,每个状态包含2拍P1和P2,每一拍为一个时钟周期(振荡周期)。因此,一个机器周期包含12个时钟周期。依次可表示为S1P1、S1P2、S2P1、S2P2、S6P1、S6P2。S1P1P2S2P1P2S3P1P2S4P1P2S5P1P2S6P1P2时钟信号第2章 单片机基本原理 2.5.2 单机器周期指令的时序单机器周期指令的时序S1S2S3S4S5S6读操作码读无效(丢失)单字节单机器周期指令 S1S2S3S4S5S6读操作码读第二个字节双字节单机器周期指令 第2章 单片机基本原理 2.5.3 双机器周期指令的时序双机器周期指令的时序S1S2S3S4S5S6读操作码S1S2S3S4S5S6三次读操作无效(丢失)单字节、双机器周期指令的时序 作业 习 题 3、5、7