单片机课件2-MCS-51单片机结构及原理ppt.ppt
《单片机课件2-MCS-51单片机结构及原理ppt.ppt》由会员分享,可在线阅读,更多相关《单片机课件2-MCS-51单片机结构及原理ppt.ppt(83页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第2章 MCS-51单片机结构及原理 本章内容: (1)MCS-51系列的8051的基本结构; (2)存储器结构及其配置; (3)P0、P1、P2、P3四个I/O口的基本工作原理 和操作特点; (4)单片机的时序 (5)复位22.1.1 MCS-51的基本组成 MCS-51单片机(以8051为例,Intel产品)l1个8位CPU;l1个片内振荡器及时钟电路;l128字节RAM(数据存储器);l4K字节ROM(程序存储器);l2个16位定时器/计数器;l32条可编程的I/O线(四个8位并行I/O端口);l1个全双工串行口;l5个中断源;3振荡电路外部中断CPU中断控制4K字节ROM128字节R
2、AM定时/计数器1定时/计数器0总线控制4个 I/0口串行口计数器输入P0P2P1P3RXDTXDEARESETXTAL1XTAL2OSCC1C2PSENALE 地址/数据总线4逻辑符号引脚分配5(1)电源线 5V供电VCC (40)5V GND (20) 地引脚分配P0(2)晶体振荡器信号输入输出XTAL1(18)晶体振荡器信号输入XTAL1(19)晶体振荡器信号输出(3)输入/输出线 P0.0P0.7 P0口P1.0P1.7 P1口P2.0P2.7 P2口P3.0P3.7 P3口P1P2P36(4)控制信号线l ALE(30)地址锁存控制信号 (Address Latch Enable),
3、 ALE用于将地址总线的低八位锁存。该信号频率为晶振频率 的1/6,可作为外部定时或时钟使用。引脚分配PSEN (29)外部程序存储器读选通信号( Program Store Enable)该信号为低电平时,CPU从外部程序存储器单元读取指令。7l (31)内外程序存储器选择控制 (External Access Enable) 0,CPU对程序存储器的操作仅限于单片机外部程序存储器。 1, CPU对程序存储器的操作从单片机内部程序存储器开始,并可延伸到单片机的外部程序存储器。EAEAEA(4)控制信号线(续)引脚分配 RESET(9) 复位信号。 RESET持续2个机器周期以上的高电平,单片
4、机复位。8(5)部分引脚的第二功能(复用,同一个引脚被双重定义)第二功能RXD 串行输入T1 定时器1外部计数信号输入T0 定时器0外部计数信号输入INT1 外部中断1,输入TXD 串行输出INT0 外部中断0,输入WR 外部数据存储器写选通信号,输出端口引脚P3.0P3.2P3.1P3.3P3.4P3.5P3.6P3.7RD 外部数据存储器读选通信号,输出9(5)部分引脚的第二功能l程序存储器固化所需的信号 编程脉冲 ALE/PROG 编程电压 /VPPl 备用电源引入 RESET/VPD: 当电源电压下降到某个给定下限时,备用电源由该引脚向单片机芯片内部RAM供电,以保护内部RAM的内容不
5、丢失。2.1.2 MCS-51单片机的引脚与功能EA10TMP1TMP2ALUPSW4K字节ROMACCSPB寄存器RAM地址寄存器地址译码器与128字节RAMP2口锁存器P2口驱动器P3口锁存器P3口驱动器P1口锁存器P1口驱动器P0口锁存器P0口驱动器程序地址寄存器PCPC加1寄存器缓冲器DPTRPCONSCON TMOD TCONTH0TL0TH1TL1SBUFIEIP中断模块 串行口模块定时器/计数器模块指令寄存器定时与控制电路PSENALERESETEAXTAL1XTAL2OSCC1C2P2.0P2.7P0.0P0.7P3.0P3.7P1.0P1.7VccGND振荡器总线 数据存储器
6、 程序存储器 特殊功能 寄存器 I/O口 I/O口 运算器 控制器2.1.3 MCS-51单片机的内部结构11(一) 中央处理器(CPU) CPU由运算器和控制器组成,它是单片机的核心,完成运算和控制操作。 2.1.3 MCS-51单片机的内部结构1. 运算器组成: 算术逻辑运算器ALU,算术累加器ACC,寄存器B,暂存器TMP1,暂存器TMP2,布尔累加器Cy等功能:进行移位、算术运算和逻辑运算;MCS-51运算器还包含有一个布尔(位)处理器,用来处理位操作。12 (1)累加器A(8位) 功能:暂存操作数及保存运算结果; A是MCS-51单片机中最繁忙的寄存器; (2)寄存器B(8位) 功能
7、:用于乘法、除法运算,对于其它指令可作为一个寄存器使用; (3 )程序状态字寄存器PSW(8位) 功能:存放累加器A在运算过程标志位(P,OV,AC,Cy)的状态;指出CPU所使用的当前工作寄存器组。2.1.3 MCS-51单片机的内部结构13CYACF0RS0OVPRS1PSW.7PSW.0 CY (PSW.7) 进位/借位标志位。 若ACC在运算过程中发生了进位或借位,则CY=1;否则=0。它也是布尔处理器的位累加器,可用于布尔操作。 AC(PSW.6)半进位/借位标志位。 若ACC在运算过程中,D3位向D4位发生了进位或借位,则CY=1,否则=0。机器在执行“DA A”指令时自动要判断这
8、一位,我们可以暂时不关心它。 F0 (PSW.5) 用户标志位。PSW.6 PSW.52.1.3 MCS-51单片机内部结构PSW142.1.3 MCS-51单片机的内部结构PSW.7PSW.0 RS1(PSW.4)、RS0(PSW.3)工作寄存器组选择位。RS1,RS0 = 0 1 则选择了工作寄存器组 1 区R0R7分别代表08H 0FH单元。RS1,RS0 = 1 0 则选择了工作寄存器组 2 区 R0R7分别代表10H 17H单元。RS1,RS0 = 1 1 则选择了工作寄存器组 3 区R0R7分别代表18H 1FH单元。CYACF0RS0OVPRS1PSW.4 PSW.3RS1,RS
9、0 = 0 0 则选择了工作寄存器组 0 区R0R7分别代表08H 0FH单元。PSW15CYACF0RS0OVPRS1PSW.7PSW.0OV (PSW.2)溢出标志位。 OV=1时特指累加器在进行带符号数(-128+127)运算时出错(超出范围);OV=0时未出错。PSW.1 未定义。P (PSW.0)奇偶标志位。 P=1表示累加器中“1”的个数为奇数 P=0表示累加器中“1”的个数为偶数 CPU随时监视着ACC中的“1”的个数,并反映在PSW中PSW.2 PSW.12.1.3 MCS-51单片机的内部结构PSW16(4)布尔处理器Cy 实现各种位逻辑运算和传送;MCS-51具有一个位寻址
10、空间。 (5) TMP1和TMP2为8位暂存寄存器 存放参与预算的操作数。2.1.3 MCS-51单片机的内部结构MCS-51仅能实现两个8位二进制数的算术逻辑运算! 17 2. 控制器l组成: 定时与控制部件,复位电路,程序计数器(PC),指令寄存器、指令译码器,数据指针(DPTR),堆栈指针(SP)等l作用:产生计算机所需的时序,控制程序自动执行。CPU程序存储器指令寄存器外外RAM,EPROM,外外I/O指令译码器控制单片机各部分的运行,产生ALE,PSEN, RD/WR2.1.3 MCS-51单片机的内部结构18l程序计数器PC(16位)程序计数器PC用来存放即要执行的指令地址,共16
11、位,低8位经P0 口输出,高8位经P2口输出。CPU每取一次机器码,PC内容自动加一, CPU执行一条指令,PC内容自动增加该指令的长度。CPU复位后,PC内容为0000H,它标志着程序从头开始执行。 PC的内容变化决定程序的流向。l指令寄存器(8位) 指令寄存器中存放将要执行的指令代码,通过指令译码器,将指令代码转化为电信号控制信号ALE等。 2.1.3 MCS-51单片机的内部结构192.1.3 MCS-51单片机的内部结构l数据指针DPTR(16位) 用于访问外部RAM或外部I/O口,提供十六位地址。用于程序存储器的查表和程序散转指令,作为基地址寄存器,提供十六位基地址。堆栈指针寄存器S
12、P(8位) 用于管理对栈,指出栈顶位置。 MCS-51单片机复位后, (SP)=07H 202.1.3 MCS-51单片机的内部结构(二)存储器 1.内部数据存储器单片机的内部数据存储器由RAM地址寄存器、地址译码器以及128个单元的RAM构成,用于存放可读写的数据。2. 内部程序存储器 MCS-51系列单片机(8031除外)的内部程序存储器由程序地址寄存器、地址译码器以及4K(4096)个单元的ROM构成,用于存放程序的机器代码和常数。 2 . 特殊功能寄存器(Special Function Register,SFR) MCS-51系列单片机有21个可以寻址的特殊功能寄存器,包括单片机内的
13、I/O口、串行口、定时/计数器、中断系统等相关的数据寄存器(或缓冲器)以及控制寄存器和状态寄存器,用于存放相应功能部件的控制命令、状态和数据。21 2.1.3 MCS-51单片机的内部结构(三)并行口(Parallel Port) 有4个并行的I/O口:P0、P1、P2、P3,每根口线都可独立地用作输入或输出。(四)串行口(Serial Port) 有1个全双工的串行口,用于串行通信。串行口由发送缓冲器SBUF、接收缓冲器SBUF、移位寄存器和串行口控制逻辑等部分组成。(五) 定时/计数器(Timer/Counter) 有2个16位的定时/计数器T0和T1,T0由TH0和TL0构成,T1由TH
14、1和TL1构成,定时/计数器方式寄存器TMOD选择定时/计数器的工作模式和方式,定时/计数器控制寄存器TCON控制T0和T1的启动和停止,同时反映T0和T1的溢出状态。(六)中断系统(Interrupt System) 有5个中断源,分别为2个外部中断、2个定时/计数器溢出产生的中断、1个串行口接收/发送产生的中断,提供2个中断优先级。222.2 MCS51单片机的存储器 MCS-51单片机的程序存储器和数据存储器分开设置,地址空间相互独立。MCS51存储器地址空间可分为以下5类:(1)程序存储器,最大空间64K;(2)片内数据存储器,128个单元;(3)特殊功能寄存器,共21个;(4)位寻址
15、空间,211位;(5)外部数据寄存器,最大空间64K。这些资源与单片机应用的关系密切,下面我们介绍上述5类存储空间的功能。 232.2.1 程序存储器程序存储器用来存放程序和常数,最大寻址空间64K单元。MCS51系列产品按程序存储器配置类型分为3类:8051芯片含有4k个单元的ROM;8751芯片含有4k个单元的EPROM;8031中无程序存储器,需要扩展程序存储器。在实际应用中,用户既可使用芯片内部的程序存储器,也可以使用芯片外部的程序存储器,但最大空间为64k,程序存储器的地址空间构成与引脚的 接法有关。EA242.2.1 程序存储器(1)芯片内部含有程序存储器的单片机( 8051/87
16、51 )当 =1(接高电平)时,8051/8751的程序存储器结构如图: EA00000FFF1000FFFF00010FFEFFFE 1001芯片内部的4K 芯片外部的60K程序存储器结构锁存器P0P2ALEPSENEAVccR片外ROMDBOE AB8751/8051程序存储器连接电路252.2.1 程序存储器(1)芯片内部含有程序存储器的单片机(8051/8751)当 =0(接低电平)时,8051/8751的程序存储器结构如图: EA0000FFFFFFFE0001 芯片外部的64K程序存储器结构锁存器P0P2ALEPSENEAROMDBOE AB8751/8051程序存储器连接电路26
17、2.2.1 程序存储器(1)芯片内部不含有程序存储器的单片机( 8031 ) 必须接地,8031的程序存储器结构如图: 0000FFFFFFFE0001 芯片外部的64K程序存储器结构 不论哪一种MCS-51单片机,如果 接地,其内部的程序存储器将被CPU忽略。EAEA锁存器P0P2ALEPSENEAROMDBOE AB8751/8051程序存储器连接电路8031272.2.1 程序存储器在单片机的程序存储器中,有5个特殊的单元地址被定义为中断入口地址,分别为:外部中断入口地址0003H,外部中断入口地址0013H,定时/计数器T0入口地址000BH,定时/计数器T1入口地址001BH,串行口
18、中断入口地址0023H。0000000100020003000B0013001B0023复位INT0中断入口INT1中断入口T0中断入口T1中断入口串行口中断入口中断入口地址映射 282.2.2 片内数据存储器MCS-51单片机的片内RAM按照功能可分为3个区域:001FH:32个单元为工作寄存器区202FH:16个单元为位寻址区307FH:80个单元为数据缓冲区000102031F202F7F数据缓冲区(80个单元)位寻址区工作寄存器区30 (16个单元)(32个单元)片内RAM分区示意图29(一)工作寄存器区(Register Bank)(00-1FH) 0001020304050607R
19、0R1R2R3R4R5R6R7080F1017181FR0R7R0R7R0R7BANK0BANK1BANK2BANK3工作寄存器组分区 工作寄存器区也称为通用寄存器区。工作寄存器区包含4个工作寄存器组,每个工作寄存器组中包含8个工作寄存器R0R7: BANK0(0007H) BANK1(080FH) BANK2(1017H) BANK3(181FH)2.2.2 片内数据存储器30 表工作寄存器组的工作寄存器R0R7与内RAM单元的对应关系PSW.4(RS1)PSW.3(RS0)寄存器区R0R1R2R3R4R5R6R700BANK000H01H02H03H04H05H06H07H01BANK10
20、8H09H0AH0BH0CH0DH0EH0FH10BANK210H11H12H13H14H15H16H17H11BANK318H19H1AH1BH1CH1DH1EH1FH2.2.2 片内数据存储器312.2.2 片内数据存储器(二)位寻址区(Bit Addressable Area)(202FH) MCS-51单片机的片内RAM中, 202FH单元被开辟为位寻址区;这些单元的每一位都具有一个自己的位地址,共168128位。位寻址区位地址范围为007FH,CPU可以对每一位直接操作。 322.2.2 片内数据存储器单元地址 D7 D6 D5 D4 D3 D2 D1 D02C67666564636
21、261602B5F5E5D5C5B5A59582A5756555453525150294F4E4D4C4B4A4948284746454443424140273F3E3D3C3B3A3938263736353433323130252F2E2D2C2B2A2928242726252423222120231F1E1D1C1B1A1918221716151413121110210F0E0D0C0B0A09082D6F6E6D6C6B6A69682007060504030201002E77767574737271702F7F7E7D7C7B7A7978内部RAM中202FH的位地址映射33l202F单
22、元的位地址区的使用: (I)在片内RAM中只有202FH单元的位能够进行位操作,我们经常表示为20H.0,它与位地址00H是等价的。 (II)位寻址区16个单元也可以按单元访问,所以,当位寻址区16个单元的128位未完全使用时,其剩余单元也可作为RAM单元使用。2.2.2 片内数据存储器34(三) 数据缓冲区(Data Buffer Area)(307FH)(1)数据缓冲区的作用作为数据缓冲、数据暂存、作为堆栈区使用;这些单元只能按单元访问。(2)堆栈堆栈是为了保护CPU执行程序的现场,在存储器中开辟了一个“先进后出”(后进先出)的区域;堆栈的操作:入栈,出栈;操作规则:先进后出;堆栈由堆栈指
23、针SP管理,它始终指向栈顶位置,一般情况下,将堆栈设在30H单元之后。程序设计时,最好设在片内RAM的末端,如 MOV SP, #60H, 以避免堆栈向上生成时覆盖所存储的数据。2.2.2 片内数据存储器352.2.3 特殊功能寄存器(SFR) MCS-51芯片内部有21个可寻址的SFR(具有地址),它们离散的分布在片内RAM 80HFFH范围内,并与内RAM统一编址。 MCS-51芯片内部还有1个不可寻址的SFR程序计数器PC。 对可寻址的SFR只能采用直接寻址方式,即按单元地址访问的模式; 可寻址的SFR中部分SFR (单元地址能够被8整除)具有位寻址功能。362.2.3 特殊功能寄存器S
24、FR符号符号SFR名称名称SFR对应单元对应单元ACC累加器E0HBB寄存器F0HPSW程序状态字寄存器D0HDPTR数据指针83H /82HSP堆栈指针81HP0P0口80HP1P1口90HP2P2口A0HP3P3口B0HIP中断优先级B8HIE中断允许控制A8HSFR符号符号SFR名称名称SFR对应单元对应单元TMODTimer工作方式89HTCONTimer控制寄存器88HTH0T0计数寄存器(H)8CHTL0T0计数寄存器(L)8AHTH1T1计数寄存器(H)8DHTL1T0计数寄存器(L)8BHSCON串行口控制寄存器98HSBUF串行口缓冲器99HPCON电源控制寄存器87H 37
25、2.2.3 特殊功能寄存器特殊功能寄存器(SFR)的位地址空间凡是SFR的地址能被8整除的SFR(单元地址的末位是0或8)都具有位寻址功能,MCS-51单片机共有11个SFR具有位寻址功能,这些寄存器(单元)的每一位都有一个位地址。位地址空间:80FFH。特殊功能寄存器(SFR)的位地址空间的特点:(1)SFR对应的单元地址为该SFR最低位的位地址。(2)SFR的位寻址区地址是不连续的。382.2.3 特殊功能寄存器 SFR位寻址空间地址映射SFR D7 D6 D5 D4 D3 D2 D1 D0ACCE7E6E5E4E3E2E1E0BF7F6F5F4F3F2F1F0单元地址PSWD7D6D5D
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 课件 MCS 51 结构 原理 ppt
限制150内