本帖最后由 zl2168 于 2017-6-4 16:37 编辑
我猜测你提的问题是:如何确定单片机并行扩展时的扩展芯片单元地址。
6.1.2 并行扩展寻址方式
80C51系列单片机能寻址的存储空间,包括ROM和外RAM,各有64kB。并行扩展时,可用其一部或全部,或者将其中一部分用作扩展I/O口。这些存储器的芯片地址和存储器内存储单元的子地址如何确定、如何寻址呢?存储器内存储单元的子地址,由低位地址线,即与存储器地址线直接连接的地址线确定;存储器的芯片地址由高位地址线产生的片选信号确定。当存储器芯片多于一片时,为了避免误操作,必须利用片选信号来分别确定各芯片的地址分配。产生片选信号的方法有线选法和译码法二种。
⒈ 线选法
线选法是将高位地址线直接连到存储器芯片的片选端,如图6-2所示。图中芯片I、II、III都是2k×8位存储器芯片,由低位地址线A0~A10实现片内寻址。高位地址线A11~A13分别实现片选,均为低电平有效。为了不出现寻址错误,要求A11~A13中只允许有一根为低电平,另二根必须为高电平,否则出错。3片存储器芯片地址分配如表6-1所示。
⒉ 译码法
译码法是通过译码器将高位地址线译码转换为片选信号,2条地址线能译成4种片选信号,3条地址线能译成8种片选信号,4条地址线能译成16种片选信号。所对应的TTL译码芯片有74139(双2-4译码器)、74138(3-8译码器)和74154(4-16译码器),下面以74138为例说明译码法。
以上摘自张志良编著《80C51单片机实用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于学习51单片机原理,程序(双解c和汇编)语句条条有注解,便于阅读理解,便于自学。
|