基于接口芯片8255的扩展方法解析

接口/总线/驱动

1139人已加入

描述

一般说来,可编程接口芯片都有存储器及地址线,所谓可编程就是指CPU用指令将某数据写入接口芯片的某个存储器,接口芯片在接到CPU送来的数据后,自动翻译该数据,然后执行该数据所代表的动作。

不同的CPU对接口芯片的处理方式不同,某些CPU将接口芯片的存储器和CPU本身使用的存储器区别对待,将对接口芯片存储器的操作称为I/O操作,而对CPU本身使用存储器的操作称为存储器操作,并且I/O操作和存储器操作使用不同的指令,这种方式叫I/O端口的独立编址方式。

这种方式的优点是I/O端口不占用存储器的地址空间,存储器空间和I/O空间独立 ,缺点是CPU中要单独设置I/O端口访问指令,增加CPU的复杂度,INTEL公司的8086系列就是采用的这种结构。

另一种处理方式为将接口芯片的存储器当外部数据存储器对待,而不需要单独设置I/O端口的访问指令,这种方式称为统一编址,8051就是采用的这种方式。

下面我们介绍一下接口芯片8255。

8255是一个并行接口扩展芯片。它有一个8位的待扩展并行接口D0-D7,三个扩展后的8位并行接口PA,PB,PC。四个存储器,PA口存储器,PB口存储器,PC口存储器和控制口存储器,这四个存储器由它的两条地址线AO,A1来选择。

当A1A0为00的时候,8255将D0-D7与PA接通

当A1A0为01的时候,8255将D0-D7与PB接通

当A1A0为10的时候,8255将D0-D7与PC接通

当A1A0为11的时候8255将D0-D7与内部控制寄存器接通

假设将两片8K的数据存储器和一片8255混合扩展成CPU的外部数据据存储器,它们的片选信号的接法采用译码方式 。

译码器74139的输入端接CPU的P2.5和P2.6。

当P2.6和P2.5为00时,译码器输出端YO有效,选中第一片数据存储器,可知第一片存储器的逻辑地址为0000H-1FFFH以及8000H-9FFFFH,每个物理单元有两个逻辑地址

当P2.6和P2.5为01时,译码器输出端Y1有效,选中第二片存储器,第二片存储器的地址为2000H-3FFFH以及0AOOOH-OBFFFH。

当P2.6和P2.5为10时,译码器输出端Y2有效,选中8255,,则8255的逻辑地址4000H-5FFFH,以及0C000H-0DFFFH。

当P2.6和P2.5为11时,译码器输出端Y3有效,没有存储器被选中,即这种情况下的地址为无效地址,包括6000H-7FFFH,和0E000H-OFFFFH。

usb

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分