单片机__8051单片机基本结构

上传人:ji****n 文档编号:54246349 上传时间:2018-09-10 格式:PPT 页数:54 大小:7.77MB
返回 下载 相关 举报
单片机__8051单片机基本结构_第1页
第1页 / 共54页
单片机__8051单片机基本结构_第2页
第2页 / 共54页
单片机__8051单片机基本结构_第3页
第3页 / 共54页
单片机__8051单片机基本结构_第4页
第4页 / 共54页
单片机__8051单片机基本结构_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《单片机__8051单片机基本结构》由会员分享,可在线阅读,更多相关《单片机__8051单片机基本结构(54页珍藏版)》请在金锄头文库上搜索。

1、第1章 8051单片机基本结构,2011年8月王化建,8051单片机的特点,8051单片机可分为无ROM型和ROM型两种 无ROM型的芯片,必须外接EPROM才能应用(典型芯片为8031) ROM型芯片又分为EPROM型(典型芯片为8751)、FLASH型(典型芯片为89C51)、掩膜ROM型(典型芯片为8051 )、一次性可编程ROM(One Time Programming,简称OTP)的芯片(典型芯片为97C51)。,8051单片机的基本组成,(1)一个8位微处理器CPU。(2)片内数据存储器RAM和特殊功能寄存器SFR。(3)片内程序存储器ROM。(4)两个定时/计数器T0、T1,可用

2、作定时器,也可用以 对外部脉冲进行计数。(5)四个8位可编程的并行I/O端口,每个端口既可作输 入,也可作输出。(6)一个串行端口,用于数据的串行通信。(7)中断控制系统。(8)内部时钟电路。,一个8051单片机包含下列部件,40只引脚双列直插封装(DIP),8051单片机引脚描述,44只引脚方形封装方式(4只无用),引脚逻辑图 8051单片机为40条引脚双列直插式封装 引脚可分为三个部分,控制引脚,并行I/O口引脚,电源及时钟引脚,(1)电源及时钟引脚: Vcc、Vss;XTAL1、XTAL2。(2)控制引脚: PSEN*、EA* 、ALE、RESET (3)I/O口引脚:P0、P1、P2、

3、P3,4个8位I/O口 一、电源及时钟引脚 1电源引脚(1)Vcc(40脚):+5V电源;(2)Vss(20脚):接地。2时钟引脚 (1)XTAL1(19脚):采用外接晶体振荡器时,此引脚应接地。 (2)XTAL2(18脚):接外部晶体的另一端。,二、控制引脚 (1) RST/VPD(9脚):复位与备用电源 (2) ALE/PROG*(30脚):第一功能ALE :地址锁存允许第二功能PROG*:编程脉冲输入端。 (3) PSEN* (29脚):读外部程序存储器的选通信号。可以驱动8个LS型TTL负载。 (4) EA*/VPP (31脚): EA*为内外程序存储器选择控制EA*=1,访问片内程序

4、存储器,EA*=0,单片机则只访问外部程序存储器。第二功能VPP,用于施加编程电压。,三、 I/O口引脚 (1) P0口:双向8位三态I/O口,地址总线(低8位)及数据总线分时复用口,可驱动8个LS型TTL负载。 (2) P1口:8位准双向I/O口,可驱动4个LS型TTL负载。 (3) P2口:8位准双向I/O口,与地址总线(高8位)复用,可驱动4个LS型TTL负载。 (4) P3口:8位准双向I/O口,双功能复用口,可驱动4个LS型TTL负载。 注意:准双向口与双向三态口的差别。 当3个准双向I/O口作输入口使用时,要向该口先写“1”,另外准双向I/O口无高阻的“浮空”状态。,8051单片机

5、内部结构,8051单片机的CPU,由运算器和控制器所构成 一、 运算器对操作数进行算术、逻辑运算和位操作。1算术逻辑运算单元ALU2累加器A 使用最频繁的寄存器,可写为Acc。 A的作用: (1)是ALU单元的输入之一,又是运算结果存放单元。 (2)数据传送大多都通过累加器A。 (3)A的进位标志Cy同时又是位处理机的位累加器。,3程序状态字寄存器PSW (1)Cy(PSW.7)进位标志位 (2)Ac(PSW.6)辅助进位标志位 (3)F0(PSW.5)标志位由用户使用的一个状态标志位。 (4)RS1、RS0(PSW.4、PSW.3):4组工作寄存器区选择控制位1和位0。,(5)OV(PSW.

6、2)溢出标志位 指示运算是否产生溢出。当两个带符号的单字节数进行运算,结果超出-128+127的范围时,OV=1,表示有溢出,否则OV=0表示无溢出 (6)PSW.1位: 保留位,未用 (7)P(PSW.0)奇偶标志位 P=1,A中“1”的个数为奇数P=0,A中“1”的个数为偶数,二、控制器1程序计数器PC(Program Counter)存放下一条要执行的指令在程序存储器中的地址。基本工作方式: (1)程序计数器自动加1 (2)执行有条件或无条件转移指令时,程序计数器将被置入新的数值,从而使程序的流向发生变化。(3)执行子程序调用或中断调用时完成下列操作: PC的当前值保护 将子程序入口地址

7、或中断向量的地址送入PC。2指令寄存器IR、指令译码器及控制逻辑电路,8051存储器的结构哈佛(Har-vard)结构 存储器空间可划分为5类:1.程序存储器空间8031无内部程序存储器。 2.内部数据存储器空间3.特殊功能寄存器4.位地址空间 211个可寻址位。5.外部数据寄存器空间片外可扩展64K字节RAM。,内部数据存储器 (a),外部数据存储器 (b),MCS-51单片机存储器空间分配,返回,一、 程序存储器 存放应用程序和表格之类的固定常数。分为片内和片外两部分,由EA*引脚上所接电平确定程序存储器中的0000H地址是系统程序的启动地址5个单元具有特殊用途 表2-1 5种中断源的中断

8、入口地址外中断0 0003H定时器T0 000BH外中断1 0013H 定时器T1 001BH 串行口 0023H,二、 内部数据存储器 共128个字节, 字节地址为00H7FH。00H1FH:32个单元,是4组通用工作寄存器区20H2FH:16个单元,可进行128位的位寻址30H7FH:用户RAM区,只能进行字节寻址,用作数据缓冲区以及堆栈区。,三、 特殊功能寄存器(SFR)CPU对各种功能部件的控制采用特殊功能寄存器集中控制方式,共21个。 有的SFR可进行位寻址,其字节地址的末位是0H或8H。,SFR的名称及其分布,SFR中的某些寄存器1堆栈指针SP 指示出堆栈顶部在内部RAM块中的位置

9、 复位后 ,SP中的内容为07H。(1)保护断点(2)现场保护堆栈向上生长2. 数据指针DPTR 16位特殊功能寄存器,高位字节寄存器用DPH表示,低位字节寄存器用DPL表示。3. I/O端口P0P3P0P3分别为I/O端口P0P3的锁存器。,4.寄存器B为执行乘法和除法操作设置的。在不执行乘、除的情况下,可当作一个普通寄存器来使用。 5.串行数据缓冲器SBUF 存放欲发送或已接收的数据,一个字节地址,物理上是由两个独立的寄存器组成,一个是发送缓冲器,另一个是接收缓冲器。 6.定时器/计数器 两个16位定时器/计数器T1和T0,各由两个独立的8位寄存器组成: TH1、TL1、TH0、TL0,只

10、能字节寻址,但不能把T1或T0当作一个16位寄存器来寻址访问。,四、位地址空间211个(128个+83个)寻址位。位地址范围为:00HFFH。 内部RAM的可寻址位128个(字节地址20H2FH)见表2-3(P24)。特殊功能寄存器SFR为83个可寻址位,见表2-4(P24)。,表 内部的可寻址位及位地址,表 SFR中的位地址分布,五、 外部数据存储器最多可外扩64K字节的RAM或I/O。几点注意: (1) 地址的重叠性程序存储器与数据存储器全部64K字节地址空间重叠 程序存储器与数据存储器在使用上是严格区分的 (3) 位地址空间共有两个区域 (4) 片外与片内数据存储器由指令来区分 (5)

11、片外数据存储区中,RAM与I/O端口统一编址。所有外围I/O端口的地址均占用RAM地址单元,使用与访问外部数据存储器相同的传送指令。,内部数据存储器 (a),外部数据存储器 (b),MCS-51单片机存储器空间分配,返回,关于存储器的问题: 1、若地址相同,如何区分访问的是哪一个空间?靠指令区分。 2、内部数据存储器和外部数据存储器的区别联系?共同点:二者均用于存放数据 不同点: 内部数据存储器在单片机内部,一般用于暂存数据运算中间结果,访问比较频繁,速度较快,容量小(128B),不影响引脚状态;外部数据存储器一般指接在单片机外部的存储器芯片,用于存放大量用户数据,其访问将影响地址、数据、控制

12、等总线引脚,容量大(64KB)。,五、并行I/O端口,共有4个8位双向I/O口,共32口线。每位均有自己的锁存器(SFR),输出驱动器和输入缓冲器。 特点: 1.可按字节输入/输出,每条口线也可单独的作为输入/输出线 2.4个口都可以作为通用的I/O来用,输入输出开关信号(0,1)。P0口可作为地址/数据线,构成系统的低8位地址(输出)和数据总线(双向,三态);P3口有第二功能(分别对应着读写信号、中断引脚、定时器引脚等) 3.P1,P2,P3口是3个8位准双向口,当这3个口做输入使用时,首先要向该口写“1”,这三个口无高阻“浮空”状态 4.每个口的8个锁存器组成一个具有地址的存储单元,隶属于

13、特殊功能寄存器,并可按位寻址: 80H(P0), 位80H-87H(P0.0P0.7)90H(P1), 位90H-97H(P1.0P1.7)A0H(P2), 位A0H-A7H(P2.0P2.7)B0H(P3), 位B0H-B7H(P3.0P3.7),多路开关 功能:用于控制选通I/O方式还是地址/数据输出方式 方式控制:由内部控制信号产生,输入锁存器,两个输入缓冲器(BUF1和BUF2),推拉式I/O驱动器(两个FET反相),五、 并行I/O端口,1、 P0口位图内部结构,1,0,P0口可以用作地址/数据总线,P0口也可用作通用I/O口,1、 P0口位图内部结构,BUF2,BUF1,Q,Q,D

14、,C,Vcc,控制,AD0,P0R1,P0R2,D0,P0W,图1、P0口内部结构,读锁存器,读引脚,锁存器,内部总线,写锁存器,地址/数据,P0.0,多路开关,P0口用作地址/数据总线,控制端为1,硬件自动的使MUX转向上方此时,可以分成两种情况,1,CPU执行输出时:低8位地址或数据分时出现在ADn上,引脚输出状态正好和ADn上相同,0,0,1,1,CPU执行输入时:首先出现低8位的地址(输出)。然后硬件自动的使MUX打向下面(此时控制端为0,上方的FET截止) 并自动的向P0口写入 ”0FFH”读引脚信号有效,数据经缓冲器进入内部数据总线,0,1,1、 P0口位图内部结构,BUF2,BU

15、F1,Q,Q,D,C,Vcc,控制,AD0,P0R1,P0R2,D0,P0W,图1、P0口内部结构,读锁存器,读引脚,锁存器,内部总线,写锁存器,地址/数据,P00,多路开关,0,P0口 用作通用I/O口,控制端为0,硬件自动的使MUX转向下方,上面的FET截止,此时可以分成两种情况, P0口作为输出口使用:POW来自CPU内部写脉冲出现内部总线上的数据写入D锁存器,并向端口引脚P0.X输出输出电路属于漏极开路,需要加上拉电阻才有高电平输出, 当P0口作为输入口使用时,应区分执行的是“读引脚”还是读锁存器 读引脚是直接读取P0.X的状态:例如执行:MOV A,P0 P0口作为输入口使用时,还要注意在执行输入指令前,先向锁存器写入“1”,目的是使下面的FET截止,否则没有高电平输入 读锁存器是 是把锁存器的状态读入内部总线:例如:ANL P0,#OFH 等执行过程是 “读”“改”“写”,1,0,0,1,2 、P1口内部结构,P1口内部结构如图2所示 输出部分有内部上拉电阻R*约为20K。 其他部分与P0端口使用相类似(读引脚时先写入1)。,写数据,读端口,P1口与P0口的区别: 1.P1口只做I/O口所以没有MUX 2.P1口用上拉电阻代替了FET,这样的电路的输出不是三态的,所以P1口是准双向口 3.P1口做输出口时无需外加上拉电阻,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号