自动控制网—学习自动控制技术电气自动化技术从这里开始!
当前位置: 自动控制网 > 自动化 > 单片机 >

单片机的片选和地址分配

时间:2014-11-18 08:37来源:www.eadianqi.com 编辑:自动控制网
一片外围芯片具有一定的地址空间。例如11根地址线的芯片,其地址空间为2KB(2048)。这2KB地址空间在微处理器的内存空间(如8位微处理器有16根地址线,能寻址64KB)中被分配在什么位置,由高位地址线A11~A15产生的片选信号来分别确定。当外围芯片多于一片时

一片外围芯片具有一定的地址空间。例如11根地址线的芯片,其地址空间为2KB(2048)。这2KB地址空间在微处理器的内存空间(如8位微处理器有16根地址线,能寻址64KB)中被分配在什么位置,由高位地址线A11~A15产生的片选信号来分别确定。当外围芯片多于一片时,为了避免误操作,必须利用片选信号来分别确定各芯片的地址分配。产生片选信号的方式不同,存储器的地址分配也就不同。片选方式有线选、全译码和局部译码。

自动控制网www.eadianqi.com版权所有

线选方式 本文来自www.eadianqi.com

线选方式,就是把一根高位地址线直接连外围芯片的片选端,如图1。图中Ⅰ、Ⅱ、Ⅲ都是2KB×8位存储器芯片,地址线 A10~A0 实现片内寻址B。现用3根高位地址线A11、A12、A13实现片选,均为低电平有效。为了不出现寻址错误,当All、A12、A13之中有一根地址线为低电平时,其余两根必须为高电平,即每次操作只能选中其中一个芯片,假设剩下的两根高位地址线 Al4、A15都为低电平,这样可得到3个芯片的地址分配,见表1。

本文来自www.eadianqi.com

自动控制网www.eadianqi.com版权所有

图1 用线选方式实现片选

自动控制网www.eadianqi.com版权所有

芯片

自动控制网www.eadianqi.com版权所有

二进制表示 本文来自www.eadianqi.com

十六进制

自动控制网www.eadianqi.com版权所有

A15  A14  A13  A12  A11

自动控制网www.eadianqi.com版权所有

A10     …      A0

自动控制网www.eadianqi.com版权所有

芯片Ⅰ 自动控制网www.eadianqi.com版权所有

0    0    1    1    0 本文来自www.eadianqi.com

0      …       0 本文来自www.eadianqi.com

1      …       1

本文来自www.eadianqi.com

3000H~37FFH 本文来自www.eadianqi.com

芯片Ⅱ 本文来自www.eadianqi.com

0    0    1    0    1 自动控制网www.eadianqi.com版权所有

0      …       0 本文来自www.eadianqi.com

1      …       1

本文来自www.eadianqi.com

2800H~2FFFH

自动控制网www.eadianqi.com版权所有

芯片Ⅲ 自动控制网www.eadianqi.com版权所有

0    0    0    1    1 本文来自www.eadianqi.com

0      …       0

本文来自www.eadianqi.com

1      …       1

自动控制网www.eadianqi.com版权所有

1800H~1FFFH

自动控制网www.eadianqi.com版权所有

表1 线选方式地址分配表 本文来自www.eadianqi.com

可以看出 3 个芯片的内部寻址 A10~A0与都是从0~0(共11位),为2KB空间,而依靠不同的片选信号---高位地址线A11、A12、A13之中某一根为0,来区分这3个芯片的地址空间。

本文来自www.eadianqi.com

也可以用一根高位地址线加一“非门”,对两片存储器实现片选,如图2所示。图中当A11为低电平时选通芯片Ⅰ,当A11为高电平时选通芯片Ⅱ。类似上例方法,可得到两芯片的地址空间为:

本文来自www.eadianqi.com

芯片Ⅰ 0000H 一 07FFH 本文来自www.eadianqi.com

芯片Ⅱ 0800H 一 0FFFH 自动控制网www.eadianqi.com版权所有

线选方式的接口电路简单,其缺点是芯片的地址空间相互之间可能不连续,不能充分利用微处理器的内存空间或者存在着地址重叠现象。不能充分利用内存空间的原因是:用作片选信号的高位地址线的信号状态得不到充分利用。在图1中,All、A12、A13这3根地址线的信号状态从000到111应有8种,若采用译码方式能选通8个2KB 芯片,存储空间共计16KB。但在线选方式下,只能使用其中3种状态(即 3 位数码中只允许1位为“0”) ,选通3个2KB芯片,存储空间减为6KB。

本文来自www.eadianqi.com

自动控制网www.eadianqi.com版权所有

图2 用一根高位地址线对两片储器实现片选 本文来自www.eadianqi.com

所谓“地址重叠”是指一个存储器芯片占用 自动控制网www.eadianqi.com版权所有

一个以上的地址空间,或者说不同的地址会选通同一存储单元。这是因为作为片选信号的某根高位地址线有效而选通该芯片时,其它的高位地址线可能闲置未用,它们的电平可以为高也可以为低,这并不影响这个芯片的选通,但这样该芯片就会有不同的地址空间。以图1为例,当 Al1为低电平选通芯片I 时,此时 A12 、 A13 必须为高电平,然而表1中的 A14、A15的电平可高可低,这样对于芯片I ,实现上存在 4 个地址空间,它们是 3000H 一 37FFH 、 7000H 一 77FFH 、 B000H 一 B7FFH 和 F000H 一 F7FFH 。同理,芯片Ⅱ和Ⅲ也有4个地址空间。对于地址重叠现象,使用者要清楚,并认定其中一个地址空间进行编程使用。

由于线选方式不能充分利用内存空间,因此这种方式一般适用于存储容量较小的系统。 自动控制网www.eadianqi.com版权所有

本文已影响