单片机的结构原理与简单应用.ppt

上传人:小飞机 文档编号:6460207 上传时间:2023-11-02 格式:PPT 页数:64 大小:592KB
返回 下载 相关 举报
单片机的结构原理与简单应用.ppt_第1页
第1页 / 共64页
单片机的结构原理与简单应用.ppt_第2页
第2页 / 共64页
单片机的结构原理与简单应用.ppt_第3页
第3页 / 共64页
单片机的结构原理与简单应用.ppt_第4页
第4页 / 共64页
单片机的结构原理与简单应用.ppt_第5页
第5页 / 共64页
点击查看更多>>
资源描述

《单片机的结构原理与简单应用.ppt》由会员分享,可在线阅读,更多相关《单片机的结构原理与简单应用.ppt(64页珍藏版)》请在三一办公上搜索。

1、补充:微机存储系统和结构,存储系统是由几个容量、速度和价格各不相同的存储器构成的系统。设计一个容量大、速度快、成本低的存储系统是计算机发展的一个重要课题。本节重点数据在主存中的存放方法和主存储器容量的各种扩展方法。,1主存储器的组织,主存储器是整个存储系统的核心,它用来存放计算机运行期间所需要的程序和数据,CPU可直接随机地对它进行访问。,1.1主存储器的基本结构,主存通常由存储体、地址译码驱动电路、I/O和读写电路组成。,存储体是主存储器的核心,程序和数据都存放在存储体中。,1.1主存储器的基本结构(续),地址译码驱动电路实际上包含译码器和驱动器两部分。译码器将地址总线输入的地址码转换成与之

2、对应的译码输出线上的有效电平,以表示选中了某一存储单元,然后由驱动器提供驱动电流去驱动相应的读写电路,完成对被选中存储单元的读写操作。I/O和读写电路包括读出放大器、写入电路和读写控制电路,用以完成被选中存储单元中各位的读出和写入操作。,主存储器的存储单元,位是二进制数的最基本单位,也是存储器存储信息的最小单位。一个二进制数由若干位组成,当这个二进制数作为一个整体存入或取出时,这个数称为存储字。存放存储字或存储字节的主存空间称为存储单元或主存单元,大量存储单元的集合构成一个存储体,为了区别存储体中的各个存储单元,必须将它们逐一编号。存储单元的编号称为地址,地址和存储单元之间有一对一的对应关系。

3、PDP-11机是字长为16位的计算机,主存按字节编址,每一个存储字包含2个单独编址的存储字节,它被称为小端方案,即字地址等于最低有效字节地址,且字地址总是等于2的整数倍,正好用地址码的最末1位来区分同一个字的两个字节。,1.3主存储器的主要技术指标,1.存储容量 对于字节编址的计算机,以字节数来表示存储容量;对于字编址的计算机,以字数与其字长的乘积来表示存储容量。如某机的主存容量为64K16,表示它有64K个存储单元,每个存储单元的字长为16位,若改用字节数表示,则可记为128K字节(128KB)。,注意:通常情况下,应认为1MB代表1024KB。但在表述硬盘的存储容量时,目前习惯上1MB指1

4、000KB。,2.存取速度 存取时间Ta 存取时间又称为访问时间或读写时间,它是指从启动一次存储器操作到完成该操作所经历的时间。例如:读出时间是指从CPU向主存发出有效地址和读命令开始,直到将被选单元的内容读出为止所用的时间;写入时间是指从CPU向主存发出有效地址和写命令开始,直到信息写入被选中单元为止所用的时间。显然Ta越小,存取速度越快。,2.存取速度(续)存取周期Tm 存取周期又可称作读写周期、访内周期,是指主存进行一次完整的读写操作所需的全部时间,即连续两次访问存储器操作之间所需要的最短时间。显然,一般情况下,TmTa。这是因为对于任何一种存储器,在读写操作之后,总要有一段恢复内部状态

5、的复原时间。对于破坏性读出的RAM,存取周期往往比存取时间要大得多,甚至可以达到Tm=2Ta,这是因为存储器中的信息读出后需要马上进行重写(再生)。,2.存取速度(续)主存带宽Bm 主存的带宽又称为数据传输率,表示每秒从主存进出信息的最大数量,单位为字每秒或字节每秒或位每秒。目前,主存提供信息的速度还跟不上CPU处理指令和数据的速度,所以,主存的带宽是改善计算机系统瓶颈的一个关键因素。为了提高主存的带宽,可以采取的措施有:缩短存取周期;增加存储字长;增加存储体。,3.可靠性 可靠性是指在规定的时间内,存储器无故障读写的概率。通常,用平均无故障时间MTBF来衡量可靠性。4.功耗 功耗是一个不可忽

6、视的问题,它反映了存储器件耗电的多少,同时也反映了其发热的程度。通常希望功耗要小,这对存储器件的工作稳定性有好处。大多数半导体存储器的工作功耗与维持功耗是不同的,后者大大地小于前者。,2 主存储器的连接与控制,由于存储芯片的容量有限的,主存储器往往要由一定数量的芯片构成的。而由若干芯片构成的主存还需要与CPU连接,才能在CPU的正确控制下完成读写操作。,2.1主存容量的扩展,要组成一个主存,首先要考虑选片的问题,然后就是如何把芯片连接起来的问题。根据存储器所要求的容量和选定的存储芯片的容量,就可以计算出总的芯片数,即总片数 将多片组合起来常采用位扩展法、字扩展法、字和位同时扩展法。,1.位扩展

7、 位扩展是指只在位数方向扩展(加大字长),而芯片的字数和存储器的字数是一致的。位扩展的连接方式是将各存储芯片的地址线、片选线和读写线相应地并联起来,而将各芯片的数据线单独列出。如用64K1的SRAM芯片组成64K8的存储器,所需芯片数为:64K8/64K1=8片CPU将提供16根地址线、8根数据线与存储器相连;而存储芯片仅有16根地址线、1根数据线。具体的连接方法是:8个芯片的地址线A15A0分别连在一起,各芯片的片选信号/CS以及读写控制信号/WE也都分别连到一起,只有数据线D7D0各自独立,每片代表一位。当CPU访问该存储器时,其发出的地址和控制信号同时传给8个芯片,选中每个芯片的同一单元

8、,相应单元的内容被同时读至数据总线的各位,或将数据总线上的内容分别同时写入相应单元。,位扩展连接举例,扩展条件:设目标容量为M字N位,存储器芯片容量为 m字n位,Mm,Nn,则需要的存储器芯片数N/n。,2.字扩展 字扩展是指仅在字数方向扩展,而位数不变。字扩展将芯片的地址线、数据线、读写线并联,由片选信号来区分各个芯片。如用16K8的SRAM组成64K8的存储器,所需芯片数为:64K8/16K8=4片,2.字扩展(续),例如:CPU将提供16根地址线、8根数据线与存储器相连;而存储芯片仅有14根地址线、8根数据线。四个芯片的地址线A13A0、数据线D7D0及读写控制信号/WE都是同名信号并联

9、在一起;高位地址线A15、A14经过一个地址译码器产生四个片选信号/CS,分别选中四个芯片中的一个。,字扩展连接举例,在同一时间内4个芯片中最多只有一个芯片被选中。,2.字扩展(续),3.字和位同时扩展当构成一个容量较大的存储器时,往往需要在字数方向和位数方向上同时扩展,这将是前两种扩展的组合,实现起来也是很容易的。,例:用8K4芯片组成16K8存储器,扩展条件:目标容量为M字N位,存储器芯片容量为m字n位,Mm,Nn,则需要的存储器芯片数(M/m)(N/n),字和位同时扩展连接举例,字和位同时扩展连接举例,译码器定义,译码是编码的逆过程,在编码时,每一种二进制代码,都赋予了特定的含义,即都表

10、示了一个确定的信号或者对象。把代码状态的特定含义“翻译”出来的过程叫做译码,实现译码操作的电路称为译码器。或者说,译码器是可以将输入二进制代码的状态翻译成输出信号,以表示其原来含义的电路。,译码和译码器,译码:将某个特定的“编码输入”翻译为唯一一个“有效输出”的过程。译码器件:采用门电路组合逻辑进行译码采用集成译码器进行译码,常用的器件有:2-4(4 选 1)译码器74LS1393-8(8 选 1)译码器74LS1384-16(16 选 1)译码器74LS154对芯片的寻址方法:全译码 所有系统高位地址线参与对芯片的寻址部分译码部分系统高位地址线参与对芯片的寻址线选译码用 1 根系统的高位地址

11、线选中芯片片选端常有效无系统的高位地址线据参与对芯片的寻址,译码的概念,N 位编码输入,2N 位译码输出,唯一有效的输出其余均无效,译码器,1.门电路译码,A1,A0,Y0 Y1 Y2 Y3,A19A18A17A16A15,(b),(a),A0,低电平有效,高电平有效,(c),2.译码器74LS138,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,A,B,C,E1,E2,E3,Y7,GND,Y6,Y5,Y4,Y3,Y2,Y1,Y0,Vcc,74LS138引脚图,Y0,Y1,Y2,Y3,Y4,Y5,Y6,Y7,E3,E2,E1,C,B,A,74LS138原理图,用

12、与非门组成的3线-8线译码器74LS138,译码器74LS138的功能表,1.全译码,所有的系统地址线均参与对存储单元的译码寻址包括低位地址线对芯片内各存储单元的译码寻址(片内译码),高位地址线对存储芯片的译码寻址(片选译码)采用全译码,每个存储单元的地址都是唯一的,不存在地址重复译码电路可能比较复杂、连线也较多,全译码示例,A19A18A17,A15 A14A13,A16,CBA,E3,138,A12A0,CE,IO/-M,2764,全译码示例地址分析,2.部分译码,只有部分(高位)地址线参与对存储芯片的译码每个存储单元将对应多个地址(地址重复),需要选取一个可用地址可简化译码电路的设计但系

13、统的部分地址空间将被浪费,部分译码示例,138,A17 A16,A11A0,A14 A13A12,(4),(3),(2),(1),2732,2732,2732,2732,CBA,E3,-E2,-E1,IO/-M,-Y0,-Y1,-Y2,-Y3,请看地址分析,部分译码示例地址分析,3.线选译码,只用少数几根高位地址线进行芯片的译码,且每根负责选中一个芯片(组)虽构成简单,但地址空间严重浪费必然会出现地址重复一个存储地址会对应多个存储单元多个存储单元共用的存储地址不应使用,线选译码示例,A14,A12A0,A13,(1),2764,(2),2764,CE,CE,请看地址分析,线选译码示例地址分析,

14、切记:A14 A13“00”的情况不能出现,此时 00000H01FFFH 的地址将不能使用,4.片选端常有效,A19A15 A14A0 全0全1,D7D0,27256EPROM,A14A0,片选端常有效与A19A15 无关,片选端译码小结,存储芯片的片选控制端可以被看作是一根最高位地址线。在系统中,主要与地址发生联系:包括地址空间的选择(接系统的IO/-M信号)和高位地址的译码选择(与系统的高位地址线相关联)对一些存储芯片通过片选无效可关闭内部的输出驱动机制,起到降低功耗的作用。,芯片的地址线通常应全部与系统的低位地址总线相连。寻址时,这部分地址的译码是在存储芯片内完成的,我们称为“片内译码

15、”。,1.存储芯片内地址译码,片内译码,片内译码,000H001H002H3FDH3FEH3FFH,000000010010110111101111,(16进制表示),A9A0,片内10 位地址译码10 位地址的变化:全0全1,2.存储芯片片选端译码,存储系统常需要利用多个存储芯片进行容量的扩充,也就是扩充存储器的地址范围这种扩充简称为“地址扩充”或“字扩充”进行“地址扩充”时,需要利用存储芯片的片选端来对存储芯片(芯片组)进行寻址通过存储芯片的片选端与系统的高位地址线相关联来实现对存储芯片(芯片组)的寻址,常用的方法有:全译码全部高位地址线与片选端关联(参与芯片译码)部分译码部分高位地址线与

16、片选端关联(参与芯片译码)线选法某根高位地址线与片选端关联(参与芯片译码)片选端常有效无高位地址线与片选端关联(不参与芯片译码),地址扩充(字扩充),片选端,D7D0,A19A10,A9A0,(2),A9A0,D7D0,(1),A9A0,D7D0,译码器,0000000001,0000000000,低位地址线,高位地址线,地址重复,1个存储单元具有多个存储地址的现象原因:有些高位地址线没有用、可任意使用地址:出现地址重复时,常选取其中既好用、又不冲突的一个“可用地址”例如:00000H07FFFH选取的原则:高位地址全为0的地址,高位地址译码才更好,2.2 单片机的存储器,2.2.1 程序存储

17、器ROM 2.2.2 数据存储器RAM 2.2.3 数据存储器数据读写应用实例,8051的存储器结构,8051的存储器结构与常见的微型计算机的配置方式不同,它把程序存储器和数据存储器分开,有各自的寻址系统、控制信号和功能。8051的存储器在物理结构上分为片内数据存储器、片内程序存储器、片外数据存储器和片外程序存储器4个存储空间。但从用户使用的角度看,8051的存储器分为3个逻辑空间。,存储空间分布图,片内外统一寻址的64KB程序存储器空间,地址范围为0000HFFFFH。64KB的片外数据存储器空间,地址范围也为0000HFFFFH。256B的片内数据存储器空间,地址范围为00HFFH。,80

18、51在逻辑上,即从用户角度上8051有三个存储空间:片内外统一编址的程序存储器 片内外不统一编址的数据存储器 特殊功能寄存器(片内),访问这几个不同的逻辑空间时,采用的指令:片内外程序存储器空间-MOVC 片内数据存储器空间和SFR-MOV 片外数据存储器地址空间-MOVX,2.2.1 程序存储器ROM,程序存储器ROM用来存放程序、常数或表格等。在8051中,其存储空间分布如下:片内4KB的ROM存储单元,地址为0000H0FFFH。片外最多扩至64KB的ROM,地址为1000HFFFFH。片内外ROM统一编址。如果EA端保持高电平,8051执行片内前4KB ROM地址(0000H0FFFH

19、)中的程序。当寻址范围超过4KB(1000HFFFFH)时,则从片外存储器取指令。如果EA端保持低电平,8051的所有取指令操作均在片外程序存储器中进行,这时片外存储器可以从 0000H开始编址。对于8031,由于其片内无ROM,所以使用时必须使EA接低电平,以便能够从片外扩展的EPROM中取指令。,程序存储器主要用来存放程序,同时也常常用来存放数据表格(通过DB指令建立数码管字型表等),在具体存放程序和建立数据表格时应该注意,程序存储器的部分空间的使用是有规定的,主要如下。,0000H0002H:系统的上电复位程序入口地址0003H000AH:外部中断0中断地址区000BH0012H:定时器

20、/计数器0中断地址区0013H001AH:外部中断1中断地址区001BH0022H:定时器/计数器1中断地址区0023H002AH:串行中断地址区,2.2.1 程序存储器ROM,在程序存储器中,以下6个单元具有特殊含义。0000H:8051复位后,PC0000H,即程序从0000H开始执行指令。0003H:外部中断0的中断服务程序入口地址。000BH:定时器0的中断服务程序入口地址。0013H:外部中断1的中断服务程序入口地址。001BH:定时器1的中断服务程序入口地址。0023H:串行口的中断服务程序入口地址。,在上述入口地址区域不能放置用户的程序和建立数据表格,原因是:由于两个中断入口地址

21、间仅有8个单元(如0003H到000BH),用来存放中断发生后的用户程序(一般称中断服务程序)显然是不够的,我们将中断服务程序放在程序存储器的其他“自由”空间,在这些入口地址放一条跳转指令(如:LJMP XXXX,其中“XXXX”就是实际中断服务程序的起始地址或标号),由这条跳转指令去“找到”实际的中断服务程序。,2.2.2 数据存储器RAM,数据存储器RAM主要用来存放运算的中间结果和数据等。在8051中,其存储空间分布如下:片外RAM最多可扩至64KB存储单元,地址范围为0000HFFFFH。使用时只能用MOVX指令访问。片内RAM为256B存储单元,地址范围为00HFFH。使用MOV指令

22、访问,可以进行堆栈操作。片内RAM地址空间共有256B,又分为两个部分:低128B(00H7FH)为真正的RAM区,分为工作寄存器区、位寻址区和用户RAM区,如下图所示。高128B(80HFFH)为特殊功能寄存器(SFR)区,如下表所示。,片内数据存储器空间分布图,通用RAM区(80B),位地址区(16B),寄存器区4组(32B),7FH,寄存器3组寄存器2组寄存器1组寄存器0组,寄存器区4组(32B),.,由PSW中的2位RS1、RS0来决定选哪一组为当前工作寄存器:RS1、RS0=00 选0组 RS1、RS0=01 选1组 RS1、RS0=10 选2组 RS1、RS0=11 选3组,在位地

23、址区,每一个BIT都有一个地址,共168=128位。,00H,30H2FH20H1FH,.,片内数据存储器空间分布图,通用RAM区(80B),位地址区(16B),7FH,寄存器3组寄存器2组寄存器1组寄存器0组,寄存器0组,寄存器区4组(32B),.,RS1、RS0=00,00H,30H2FH20H1FH,.,片内数据存储器空间分布图,通用RAM区(80B),位地址区(16B),7FH,寄存器3组寄存器2组寄存器1组寄存器0组,寄存器1组,寄存器区4组(32B),.,RS1、RS0=01,00H,30H2FH20H1FH,.,片内数据存储器空间分布图,通用RAM区(80B),位地址区(16B)

24、,7FH,寄存器3组寄存器2组寄存器1组寄存器0组,寄存器2组,寄存器区4组(32B),.,RS1、RS0=10,00H,30H2FH20H1FH,.,片内数据存储器空间分布图,通用RAM区(80B),位地址区(16B),7FH,寄存器3组寄存器2组寄存器1组寄存器0组,寄存器3组,寄存器区4组(32B),.,RS1、RS0=11,00H,30H2FH20H1FH,.,片内低128字节,2位寻址区,什么是位寻址区呢?可以这么来理解,这些区除了每个单元都有确定的单元地址外,单元内的8位数的每个位置也有地址。位寻址区的地址如表2-2所示。,表2-2 位寻址区的地址,位寻址区比普通用户RAM相比具有

25、的优点是,它具有位寻址功能,常常用来做标记,同时利用位操作功能可以使程序更加简单,除了位寻址区有位地址之外,特殊功能寄存(SFR)中地址末位是0H或8H的12个单元也有位地址。在使用位地址时,容易与单元地址混淆,如地址“20H”,既可以理解成单元的地址,也可以理解成24H单元中的一个位地址(见表2-2倒数第5行),具体是指单元地址还是位地址,除了看文字表述外,在指令中看指令的类型和含义就可知道了。,片内数据存储器空间分布图,通用RAM区(80B),位地址区(16B),00H,30H2FH20H1FH,7FH,寄存器3组寄存器2组寄存器1组寄存器0组,通用RAM区(堆栈、数据缓冲区),.,.,共80个字节,作为一般的数据缓冲区并可设置堆栈区,高128RAM特殊功能寄存器(SFR),8051片内有21个SFR,它们离散的分布在80HFFH的RAM空间中。21个特殊功能寄存器地址不连续,空闲地址不连续,对用户来说,这些单元是不存在的。特殊功能寄存器在书写时,可以使用寄存器符号,也可以使用寄存器单元地址。11个SFR具有位寻址。带“*”号的即是,它们的字节地址可以被8整除。P30页,8051单片机特殊功能寄存器表,SFR中位地址分布表,2.2.3 数据存储器数据读写应用实例【程序1】工作寄存器的读写,【程序2】位寻址区的读写,【程序3】一般RAM区和特殊功能寄存器区的读和写,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号