单片机原理及其应用幻灯片.ppt_第1页
已阅读1页,还剩66页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

1、单片机原理接口及其应用,(Principle and Application of Single Chip Microcomputer),1,第1章 概述 第2章 MCS-51单片机硬件结构 第3章 MCS-51寻址方式和指令系统 第4章 MCS-51汇编程序设计 第5章 中断系统 第6章 定时器/计数器及串行口 第7章 存储器扩展 第8章 接口电路扩展 第9章 应用举例,2,计算机组成,复习,3,微型计算机结构,复习,4,CPU组成,复习,5,微机组成,复习,6,第2章 MCS-51单片机硬件结构,2.1 MCS-51单片机基本结构 2.2 MCS-51的引脚功能 2.3 MCS-51的CP

2、U 2.4 MCS-51的存储器结构 2.5 并行IO口结构 2.6 时钟电路与时序 2.7 复位操作与复位电路,7,2.1 MCS-51单片机基本结构,图2-1 MCS-51单片机基本结构示意图,8,8位CPU; 振荡器和时钟电路; 4K8K字节的程序存储器ROM或EPROM; 128256字节的数据存储器RAM; 可寻址外部程序存储器和数据存储器各64K字节; 二十多个特殊功能寄存器; 4个并行IO口 1个全双工串行IO口; 23个16位定时计数器; 56个中断源,有2个优先级,同级中断则按优先 顺序查询 具有较强功能的位处理(布尔)能力。,MCS-51单片机配置,9,介绍图2-1中的各功

3、能部件: 1.CPU(微处理器):运算器,控制器。含位处理 2.数据存储器(RAM) 片内为128个字节(52子系列的为256个字节) 3.程序存储器(ROM/EPROM) 8031:无此部件; 8051:4K字节ROM; 8751:4K字节EPROM ; 89C51:4K字节闪存。,10,4.中断系统 : 5个中断源,2级优先级 5.定时器/计数器 2个16位定时计数器,有四种工作方式 6.串行口 1个全双工的异步串行口,具有四种工作方式。 7. P1口、P2口、P3口、P0口 为4个并行8位I/O口。 8. 特殊功能寄存器(SFR) 共有21个,是一个具有特殊功能的RAM区。,11,2.2

4、 MCS-51的引脚功能,40只引脚双列直插封装(DIP),12,44只引脚方形封装方式(4只引脚没用),13,40只引脚按功能分为3类: (1)电源及时钟引脚: Vcc、Vss;XTAL1、XTAL2。 (2)控制引脚:/PSEN、/EA 、ALE、RESET(RST)。 (3)I/O口引脚:P0、P1、P2、P3,为4个8位I/O口的 外部引脚。 2.2.1 电源及时钟引脚 1电源引脚 (1)Vcc(40脚):+5V电源; (2)Vss(20脚):接地。,14,2时钟引脚 (1)XTAL1(19脚):接外接晶振引脚。如果采用外接时钟振荡器时,此引脚应接地。 (2)XTAL2(18脚):接外

5、部晶振的另一端。如果采用外接时钟振荡器时,此引脚接收时钟。 2.2.2 控制引脚 提供控制信号,有的引脚还具有复用功能。 (1) RST/VPD(9脚): 复位与备用电源。 (2) ALE/PROG(30脚):第一功能ALE为地址锁存允许。(可驱动8个LS型TTL负载。) /PROG为本引脚的第二功能。为编程脉冲输入端。,15,(3) PSEN(29脚):读外部程序存储器的选通信号。(可以驱动8个LS型TTL负载。) (4) /EA/VPP (31脚) /EA为内外程序存储器选择控制端。 /EA=1,访问片内程序存储器。但在PC(程序计数器)值超过0FFFH(对于8051、8751片内程序存储

6、器的4K字节地址范围)时,将自动转向执行外部程序存储器的程序。 /EA=0,单片机只访问外部程序存储器。 VPP为本引脚的第二功能。用于施加编程电压(例如+21V或+12V)。对89C51,加在VPP脚的编程电压为+12V或+5V。,16,2.2.3 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口,双功能复用口,可驱

7、动4个LS型TTL负载。,17,要特别注意准双向口与双向三态口的差 别。 准双向I/O口作输入口使用时,要向该口先 写“1”,另外准双向I/O口无高阻的“浮 空”状态。,18,2.3 MCS-51的CPU 由运算器和控制器所构成 2.3.1 运算器 对操作数进行算术、逻辑运算和位操作。 1算术逻辑运算单元ALU 进行加、减;与、或、异或;循环移位,求补等运算。 2累加器 A 使用最频繁的寄存器,有时也可写为Acc。 A的作用: (1)是ALU单元的输入之一,又是运算结果的存放单元。 (2)数据传送大多都通过累加器A。,19,3程序状态字寄存器PSW (1)Cy(PSW.7): A的高位进位标志

8、。 Cy又是位处理机的位累加器。 (2)Ac(PSW.6): A的辅助进位标志位,又称半字节进位标志位。当运算结果从A的D3位产生进位或借位时Ac1,否则Ac0。常用于BCD码运算调整。 (3)F0(PSW.5):标志位 用户软件可使用的一个状态标志位。,20,(4)RS1、RS0(PSW.4、PSW.3):4组工作寄存器 区选择控制位。 RS1 RS0 所选的4组寄存器 0 0 0区(内部RAM地址00H07H) 0 1 1区(内部RAM地址08H0FH) 1 0 2区(内部RAM地址10H17H) 1 1 3区(内部RAM地址18H1FH),21,(5)OV(PSW.2):溢出标志位 指示

9、运算是否产生溢出。OV=C7C6 各种算术运算指令对该位的影响情况较复杂,将在第3章介绍。 (6)PSW.1位: 保留位,未用 (7)P(PSW.0):奇偶标志位 P=1,A中“1”的个数为奇数 P=0,A中“1”的个数为偶数,22,2.3.2 控制器 控制器任务:识别指令,控制各功能部件,协调 工作。 指令执行过程: 从程序存储器取指令 送指令寄存器保存 指令译码器对指令译码 译码结果送控制逻辑电路、定时控制逻辑电路产生各种定时与控制信号,使相应部件执行对应的操作。,23,1程序计数器PC(Program Counter) 存放下一条将要执行的指令在程序存储器中的地址。 PC基本工作方式有以

10、下几种: (1)PC自动加1 (2)执行有条件或无条件转移指令时,PC将置入新地址的数值,从而使程序的流向发生变化。,24,(3)在执行子程序调用或中断调用时,完成下列操作: PC的现行值保护入栈。 将子程序的入口地址或中断向量的地址送 入PC。 (4)在执行子程序返回或中断返回时,存入堆栈的断点地址进入PC。 2指令寄存器IR、指令译码器及控制逻辑电路,25,2.4 MCS-51存储器的结构 存储器的作用:存放程序和数据 存储器按配置方法分:主存(通常称为内存)和外存。单片机系统一般没有使用外存。 存储器分类:RAM 和 ROM RAM存储器按其制造工艺分: 1) 双极型 RAM :速度快、

11、功耗大、集成度低、价格贵。 2) MOS型RAM:集成度高、价格便宜、速度低于双极型 (1) 静态 RAM (6管) RAM。 (2) 动态 RAM (单管) 只读存储器 ROM 1) 掩膜只读存储器ROM 2) 可编程序只读存储器PROM(OTP) 3) 可擦写的只读存储器EPROM和EEPROM 4) 可擦写只读存储器FLASH ROM,26,哈佛(Harvard)结构:程序与数据存储器空间独立。 存储器空间可划分为5类: 1.程序存储器 8031无内部程序存储器。8051有4K ROM,89C51有4k FLASH ROM。 2.内部数据存储器 3.特殊功能寄存器(SFR-Special

12、 Function Register) 4.位地址空间 211个可寻址位。 5.外部数据存储器 片外可扩展64K字节RAM。,27,2.4.1 程序存储器 存放应用程序和表格之类的固定常数。16位地址 可寻址64k字节的存储器。 分为片内和片外两部分,由/EA引脚上所接的电平 确定。 程序存储器中的0000H地址是系统程序的启动地址 5个地址单元具有特殊用途 表2-1 5种中断源的中断入口地址 外中断0 0003H 定时器T0 000BH 外中断1 0013H 定时器T1 001BH 串行口 0023H,28,程序存储器地址空间,29,2.4.2 内部数据存储器 128个字节地址为00H7FH

13、。,00H1FH:32个单元是4组通用工作寄存器区。 20H2FH:16个单元可进行共128位的位寻址。 30H7FH:用户RAM区,只能进行字节寻址,用作数据缓冲区以及堆栈区。,30,2.4.3 特殊功能寄存器(SFR) CPU对各种功能部件的控制采用特殊功能寄存器 集中控制方式,共21个,占用空间80HFFH。 表2-2(P21)是SFR的名称及其分布。,31,有的SFR可进行位寻址,其字节地址的末位是0H或8H。,32,1堆栈指针SP 指示出堆栈顶部在内部RAM块中的位置。 复位后,SP中的内容为07H。 (1)保护断点 (2)现场保护 (3)其它 堆栈向上生长。 2. 数据指针DPTR

14、 高位字节寄存器用DPH表示,低位字节寄存器 用DPL表示。 3. I/O端口P0P3 P0P3分别为I/O端口P0P3的锁存器。,33,4.寄存器B 为执行乘法和除法操作设置的。 在不执行乘、除的情况下,可当作一个普通寄存 器来使用。 5.串行数据缓冲器SBUF 存放欲发送或已接收的数据,一个字节地址,物 理上是由两个独立的寄存器组成,一个是发送缓冲 器,另一个是接收缓冲器。 6.定时器/计数器 两个16位定时器/计数器T1和T0,各由两个独立 的8位寄存器组成: TH1、TL1、TH0、TL0,只能字 节寻址,不能把T1或T0当作一个16位寄存器来寻 址访问。,34,2.4.4 位地址空间

15、 51单片机内含布尔处理器,即位处理器。 它包含位累加器(Cy),位寻址寄存器,位寻 址I/O口, 位寻址内部RAM, 位寻址指令系统。 211个(128个+ 83个)寻址位。 内部RAM的可寻址位是128个(字节地址20H 2FH)见表2-3(P24)。 特殊功能寄存器SFR为83个可寻址位,见表2-4 (P24)。,35,表2-3,36,表2-4,37,2.4.5 外部数据存储器 最多可外扩64K字节的RAM或I/O 。 使用各类存储器,注意几点: (1) 地址的重叠性 程序存储器(ROM)与数据存储器(RAM)全部64K 字节地址空间重叠)。但使用中不会产生地址冲突。 (2)程序存储器(

16、ROM)与数据存储器(RAM)在使用上是严格区分的 。使用不同的指令。 (3) 位地址空间共有两个区域。,38,(4)片外数据存储区中,RAM与I/O端口统一编址。 所有外围I/O端口的地址均占用RAM地址单元,使用与访问外部数据存储器相同的传送指令。 图2-6为各类存储器在存储器空间的位置的总结。,39,40,2.5 并行I/O端口 4个双向的8位并行I/O端口(Port) ,记作P0P3。端口寄 存器位于特殊功能寄存器之列,可位寻址。 2.5.1 P0端口 P0口某一位的电路包括: 一个数据输出锁存器; 两个三态数据输入缓冲器; 一个多路转接开关MUX: P0口既作通用I/O口,又可 作为

17、系统的地址/数据线口。 数据输出的驱动和控制 电路,由两只场效应管(FET)组成,T1构成上拉电路。,41,数据/地址: 控制线高电平打开与门,MUX接上端,/Q与T2栅极脱开。T1,T2以推拉式驱动负载。 输入时,从读引脚缓冲器进入内部总线。,高阻态:CPU自动向P0输出0FFH,使T1,T2均截止。,I/O: 控制线低电平封锁与门,T1截止。MUX接下端,/Q与T2 栅极相连。 输出:漏极开路, 外接上拉电阻才能输出高电平(准双向口)。 输入:读引脚,读锁存器,42,2.5.2 P1端口 字节地址90H,位地址90H97H。,与P0口有两点区别: (1)只传送数据,不再需要MUX。 (2)

18、输出电路中有上拉电阻,电路的输出不是三态的,所以P1口是准双向口。 因此: (1)P1口作为输出口使用时,外电路无需再接上拉电 阻。 (2)P1口作为输入口使用时,应向其锁存器先写入 “1”,使输出驱动电路的FET截止。,43,2.5.3 P2端口 字节地址为A0H,位地址A0HA7H。,实际应用中,P2口用于提供高位地址,有一个多路转接开关MUX。多路转接开关应接向“地址”端。,P2也是准双向口。 I/O: MUX接至Q情况与P1相似。 作输入时,应向对 应的锁存器写“1”。,44,2.5.4 P3端口 P3口的字节地址为B0H,位地址为B0HB7H,P3是双功能口, 第一功能:I/O 第二

19、功能:特殊变异功能,第一功能(I/O):第二输出功能端为“1”。 第二功能:该位锁存器置“1”。 复位后锁存器与第二输出功能端都是“1”,自动满足第二功能。,45,P3口的第二功能定义,应熟记。 表2-2 P3口的第二功能定义 口引脚 第二功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0 (外部中断0) P3.3 /INT1 (外部中断1) P3.4 T0(定时器0外部计数输入) P3.5 T1(定时器1外部计数输入) P3.6 /WR (外部数据存储器写选通) P3.7 /RD (外部数据存储器读选通),46,读-修改-写操作,ANL (逻辑与指令)

20、 例如:ANL P1,AORL (逻辑或指令) 例如:ORL P2,A XRL (逻辑异或指令) 例如:XRL P3,ACPL (位取反指令) 例如:CPL P3.0INC (增量指令) 例如:INC P2DEC (减量指令) 例如:DEC P2 DJNZ (循环判跳指令) 例如:DJNZ P3,LABEL MOV (传送指令) 例如:MOV PX.Y,C CLR (清“0”指令) 例如:CLR PX.YSETB (置位指令) 例如:SETB PX.Y (其中:X 某口;Y某位),47,2.6 时钟电路与时序 时钟电路用于产生MCS-51单片机工作时所必需的时 钟控制信号。时序是指令执行过程中

21、相关信号在时间 上的关系。时序信号分两类:片内及片外。 2.6.1 时钟电路 时钟频率直接影响单片机的速度,电路的质量直接 影响系统的稳定性。常用的时钟电路有两种方式:内 部时钟方式和外部时钟方式。,48,一、内部时钟方式 内部有一个用于构成振荡器的高增益反相放大 器,反相放大器的输入端为芯片引脚XTAL1,输出端 为引脚XTAL2。,C1和C2典型值通常选择为30pF左右。晶体的振荡频率在1.2MHz12MHz之间。常用6, 12, 11.0592 MHz。某些高速单片机芯片的时钟频率已达40MHz。,49,二、外部时钟方式 常用于多片MCS-51单片机同时工作。,50,三、时钟信号的输出

22、为应用系统中的其它芯片提供时钟,但需增加驱动 能力。,51,2.6.2 机器周期、指令周期与指令时序 单片机执行指令的各种时序均与时钟周期有关。 一、时钟(振荡)周期 时钟周期是单片机的基本时间单位。若时钟的晶体 振荡频率为fosc,则时钟周期 Tosc=1/fosc。如 fosc=6MHz,Tosc=166.7ns。 二、机器周期 CPU完成一个基本操作所需要的时间称为机器周 期。执行一条指令分为几个机器周期。每个机器周期 完成一个基本操作。,52,MCS-51单片机每12个时钟周期为一个机器周期。 一个机器周期又分为6个状态:S1S6。每个状态 又分为两拍:P1和P2。因此,一个机器周期中的12 个时钟周期表示为: S1P1、S1P2、S2P1、S2P2、S6P2。 三、状态周期 时钟信号经二分频后形成的基本状态。,53,四、指令周期 执行一条指令所需的时间称为指令周期

温馨提示

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

评论

0/150

提交评论