单片机原理及应用第2章.ppt_第1页
单片机原理及应用第2章.ppt_第2页
单片机原理及应用第2章.ppt_第3页
单片机原理及应用第2章.ppt_第4页
单片机原理及应用第2章.ppt_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

第2章 mcs-51单片机的硬件结构 片内结构如图2-1所示: 介绍图2-1中的各功能部件: 1.cpu(微处理器) 2.数据存储器(ram) 片内为128个字节(52子系列的为256个字节) 3.程序存储器(rom/eprom) 8031:无此部件; 8051:4k字节rom; 8751:4k字节eprom ; 89c51/89c52/89c55:4k/8k/20k 字节闪存。 4.中断系统 5.定时器/计数器 6. 串行口 1个全双工的异步串行口,具有四种工作方式 。 7. p1口、p2口、p3口、p0口 为4个并行8位i/o口。 8. 特殊功能寄存器(sfr) 共有21个,是一个具有特殊功能的ram区。 2.2 mcs-51的引脚 40只引脚双列直插封装(dip)。 44只引脚方形封装方式(4只无用) 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脚):接地。 2时钟引脚 (1)xtal1(19脚):接外部晶体,如果采用外接振 荡器时,振荡器的输出应接到此引脚上。 (2)xtal2(18脚):接外部晶体的另一端或悬空。 2.2.2 控制引脚 提供控制信号,有的引脚还具有复用功能。 (1) rst/vpd(9脚):复位与备用电源。 (2) ale/prog*(30脚): 第一功能:ale为地址锁存允许,可驱动8个ls型 ttl负载。 第二功能:prog*为编程脉冲输入端。 (3) psen* (29脚):外部程序存储器的读选通信 号。可驱动8个ls型ttl负载。 (4) ea*/vpp (enable address/voltage pulse of programing,31脚) ea*为内外程序存储器选择控制端。 ea*=1,访问片内程序存储器,但在pc(程序计数 器)值超过0fffh(对于8051、8751)时,即超出 片内程序存储器的4k字节地址范围时,将自动转 向执行外部程序存储器内的程序。 ea*=0,单片机则只访问外部程序存储器。 vpp为本引脚的第二功能。用于施加编程电压(例 如+21v或+12v)。对89c51,加在vpp脚的编程电 压为+12v或+5v。 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口,双功能复用口,可驱 动4个ls型ttl负载。 注意:准双向口与双向三态口的差别。 当3个准双向i/o口作输入口使用时,要向该口先 写“1”。 准双向i/o口无高阻 “浮空”状态。 2.3 mcs-51的cpu 由运算器和控制器所构成 2.3.1 运算器 对操作数进行算术、逻辑运算和位操作。 1算术逻辑运算单元alu 2累加器a 使用最频繁的寄存器,可写为acc。 a的作用: (1)是alu的输入之一,又是运算结果的存放单元。 (2)数据传送大多都通过累加器a。mcs-51增加了一 部分可以不经过累加器的传送指令,即可加快数据 的传送速度,又减少a的“瓶颈堵塞”现象。 a的进位标志cy同时又是位处理机的位累加器。 3程序状态字寄存器psw (1)cy(psw.7)进位标志位 (2)ac(psw.6) 辅助进位标志位,用于bcd码的十 进制调整运算。 (3)f0(psw.5)用户使用的状态标志位。 (4)rs1、rs0(psw.4、psw.3):4组工作寄存器 区选择控制位1和位0。 rs1 rs0 所选的4组寄存器 0 0 0区(内部ram地址00h07h) 0 1 1区(内部ram地址08h0fh) 1 0 2区(内部ram地址10h17h) 1 1 3区(内部ram地址18h1fh) (5)ov(psw.2)溢出标志位 指示运算是否产生溢出。各种算术运算指令 对该位的影响情况较复杂,将在第3章介绍。 (6)psw.1位: 保留位,未用 (7)p(psw.0)奇偶标志位 p=1,a中“1”的个数为奇数 p=0,a中“1”的个数为偶数 2.3.2 控制器 1程序计数器pc(program counter) 存放下一条要执行的指令在程序存储器中的地址。 基本工作方式有以下几种: (1)程序计数器自动加1 (2)执行有条件转移或无条件转移指令时, pc 将被置入新的数值,从而使程序的流向发生变化 。 (3)执行子程序调用或中断调用,完成下列操作 : pc的现行值保护 将子程序入口地址或中断向量的地址送入pc。 2指令寄存器ir、指令译码器及控制逻辑电路 2.4 mcs-51存储器的结构 哈佛结构 存储器空间可划分为5类: 1.程序存储器空间 8031无内部程序存储器。 2.片内数据存储器空间 3.特殊功能寄存器sfr-special function register 4.位地址空间: 211个可寻址位。 5.外部数据寄存器空间:片外可扩展64k字节ram。 2.4.1 程序存储器 存放应用程序和表格之类的固定常数。 分为片内和片外两部分,由ea*引脚上所接的电平确 定。 程序存储器中的0000h地址是系统程序的启动地址 5个单元具有特殊用途 表2-1 5种中断源的中断入口地址 外中断0 0003h 定时器t0 000bh 外中断1 0013h 定时器t1 001bh 串行口 0023h 2.4.2 内部数据存储器 128个,字节地址为00h7fh。 00h1fh:32个单元,是4组通用工作寄存器区 20h2fh:16个单元,可进行128位的位寻址 30h7fh:用户ram区,只能字节寻址,用作数据缓 冲区以及堆栈区。 2.4.3 特殊功能寄存器(sfr) cpu对各种功能部件的控制采用特殊功能寄存器集中 控 制方式,共21个。有的sfr可进行位寻址。 表2-2(p21)是sfr的名称及其分布。 其字节地址的末位是0h或8h可位寻址。 下面介绍sfr块中的某些寄存器。 表2-2 sfr的名称及其分布 1堆栈指针sp 指示堆栈顶部在内部ram块中的位置 复位后,sp中的内容为07h。 (1)保护断点 (2)现场保护 堆栈向上生长 2. 数据指针dptr 高位字节寄存器用dph表示,低位字节寄存器用 dpl表示。 3. i/o端口p0p3 p0p3分别为i/o端口p0p3的锁存器。 4.寄存器b 为执行乘法和除法操作设置的。 在不执行乘、除的情况下,可当作一个普通寄存 器来使用。 5.串行数据缓冲器sbuf 由两个独立的寄存器组成:发送缓冲器,接收缓冲 器。 存放欲发送或已接收的数据,一个字节地址,物理 上是两个独立寄存器。 6.定时器/计数器 两个16位定时器/计数器t1和t0,各由两个独立 的8位寄存器组成: th1、tl1、th0、tl0,只能 字节寻址,但不能把t1或t0当作一个16位寄存器 来寻址访问。 2.4.4 位地址空间 211个(128个+83个)寻址位。位地址范围为:00h ffh。 内部ram的可寻址位128个(字节地址20h2fh)见表 2-3(p24)。 特殊功能寄存器sfr为83个可寻址位,见表2-4( p24)。 表2-3 内部ram的可寻址位及位地址 表2-4 sfr中的位地址分布 2.4.5 外部数据存储器 最多可外扩64k字节的ram或i/o 。 使用各类存储器,注意几点: (1) 地址的重叠性 程序存储器(rom)与数据存储器(ram)全部64k 字节地址空间重叠)。 (2)程序存储器(rom)与数据存储器(ram)在使用 上是严格区分的 。 (3)位地址空间共有两个区域。 (4)片外数据存储区中,ram与i/o端口统一编址。 所有外围i/o端口的地址均占用ram单元地址,使 用与访问外部数据存储器相同的传送指令。 图2-6为各类存储器在存储器空间的位置的总结。 2.5 并行i/o端口 4个双向的8位并行i/o端口(port) ,记作p0p3 属于特殊功能寄存器,还可位寻址。 2.5.1 p0端口 p0口某一位的电路包括: (1) 一个数据输出锁存器,用于数据位的锁存 (2) 两个三态的数据输入缓冲器。 (3) 一个多路转接开关mux,使p0口可作通用i/o口 ,或地址/数据线口。 (4) 数据输出的驱动和控制电路,由两只场效应管 (fet)组成,上面的场效应管构成上拉电路。 一、p0口作为地址或数据总线使用 cpu发出控制信号为高电平,打开上面的与门,使 mux打向上边,使内部地址/数据线与下面的场效 应管反 相接通。此时由于上下两个fet处于反相,形成推拉 式电路结构,大大提高负载能力。 二、p0口作通用的i/o口使用 cpu发来的“控制”信号为低电平,上拉场效应管截 止,mux打向下边,与d锁存器的q*端接通。 (1) p0作输出口使用 来自cpu的“写入”脉冲加在d锁存器的cp端,内部总 线上的数据写入d锁存器,并向端口引脚p0.x输出 。 注意:由于输出电路是漏极开路(因为这时上拉场效 应管截止),必须外接上拉电阻才能有高电平输出 。 (2) p0作输入口使用 区分“读引脚”和“读锁存器”。 “读引脚”信号把下方缓冲器打开,引脚上的状态 经缓冲器读入内部总线; “读锁存器”信号打开上面的缓冲器把锁存器q端 的状态读入内部总线。 2.5.2 p1端口 字节地址90h,位地址90h97h。 p1口只作通用的i/o口使用,电路结构与p0口两点区 别: (1)因为只传送数据,不再需要多路转接开关mux 。 (2)由于p1口用来传送数据,因此输出电路中有上 拉电阻,这样电路的输出不是三态的,所以p1口 是准双向口。 因此: (1)p1口作为输出口使用时,外电路无需再接上拉 电 阻。 (2)p1口作为输入口使用时,应先向其锁存器先写 入 “1”,使输出驱动电路的fet截止。 2.5.3 p2端口 字节地址为a0h,位地址a0ha7h。 在实际应用中,因为p2口大多作为地址线使用,提 供高8位地址,多路转接开关mux的一个输入端不 再是“地址/数据”,而是单一的“地址”,多 路转接开关接向“地址”端。正因为只作为地址 线使用, p2口的输出用不着是三态的,所以是 准双向口。 p2口也可作为通用i/o口使用,这时,多路转接开 关mux接向锁存器q端。 2.5.4 p3端口 p3口的字节地址为b0h,位地址为b0hb7h 。 p3口的第二功能定义,应熟记。 表2-5 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* (外部数据存储器读选通)-输出 一、p3的引脚作第二功能使用 第二功能信号输出:锁存器预先置“1”,使与非门 对“第二输出功能”信号的输出是畅通的。 第二功能信号输入:在口线引脚的内部增加了一个 缓冲器,输入的信号就从这个缓冲器的输出端取 得。 二、p3的引脚作通用i/o使用 通用i/o输出:“第二输出功能”线应保持高电平, 与非门开通,使锁存器q端输出畅通。 通用i/o输入:取自三态缓冲器的输出端。 p3口无论作哪种输入,锁存器输出和“第二输出功 能”线都应保持高电平。 2.5.5 p0p3端口功能总结 使用中应注意的问题: (1)p0p3口都是并行i/o口,但p0口和p2口,还 可用来构建系统的数据总线和地址总线,所以在 电路中有一个mux,以进行转换。 而p1口和p3口无构建系统的数据总线和地址总线的 功能,因此,无mux。 p0口的mux的一个输入端为“地址/数据”信号。 p2口的mux的一个输入信号为“地址”信号。 (2)在4个口中只有p0口是一个真正的双向口,p1 p3口都是准双向口。 原因:p0口作数据总线使用时,需解决芯片内外的隔 离问题,即只有在数据传送时芯片内外才接通; 不进行数据传送时,芯片内外应处于隔离状态。 为此,p0口的输出缓冲器应为三态门。 p0口中输出三态门是由两只场效应管(fet)组成 ,所以是一个真正的双向口。 p1p3口,上拉电阻代替p0口中的场效应管,输出 缓冲器不是三态的准双向口。 (3)p3口的口线具有第二功能,为系统提供一些 控制信号。 因此p3口增加了第二功能控制逻辑。这是p3口与其 它各口的不同之处。 2.6 时钟电路与时序 时钟电路用于产生mcs-51单片机工作所必需的时钟 控制信号。 2.6.1 时钟电路 时钟频率直接影响单片机的速度,电路的质量直接 影响系统的稳定性。 常用的时钟电路有两种方式:内部时钟方式和外部 时钟方式。 一、内部时钟方式 片内一个用于构成振荡器的高增益反相放大器,反 相放大器的输入端为芯片引脚xtal1,输出端为引 脚xtal2。 图2-11 c1和c2典型值通常选择为30pf左右。 晶体的振荡频率在1.2mhz12mhz之间。某些高速单 片机芯片的时钟频率已达40mhz。 二、外部时钟方式 常用于多片mcs-51单片机同时工作。 图2-12 三、时钟信号的输出 为应用系统中的其它芯片提供时钟,但需增加驱动 能力。 2.6.2 机器周期、指令周期与指令时序 单片机执行的指令的各种时序均与时钟周期有关 一、时钟周期 单片机的基本时间单位。若时钟的晶体的振荡频率 为fosc,则时钟周期tosc=1/fosc。; 例如:fosc=6mhz,tosc=166.7ns。 二、机器周期 cpu完成一个基本操作所需的时间称为机器周期。 执行一条指令分为几个机器周期。每个机器周期完 成一个基本操作。mcs-51单片机每12个时钟周期 为1个机器周期, 一个机器周期又分为6个状态:s1s6。每个状态 又分为两拍:p1和p2。 因此,一个机器周期中的12个时钟周期

温馨提示

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

评论

0/150

提交评论