实验五IO口地址扩展实验.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验五IO口地址扩展实验

实验五 I/O口地址扩展实验 一、实验目的 1.了解80X86微型计算机I/O口地址的分配。 2.掌握I/O口地址扩展的基本方法及检查I/O端口的方法。 二、实验任务 在80X86微机系统的I/O地址空间内扩展3个8位I/O端口:A口、B口和C口。要求: A口为输入端口;B口为输出端口;C口为输入/输出端口。 从A口输入的数据(由实验台上的逻辑电平开关提供)由B口输出,驱动发光二极管;对C口先后写入0AAH、55H后再读出,并与写入字数据比较,如比较结果全部相等,显示“OK”信息,否则显示出错信息。 三、 实验设备器材 1.80X86微型计算机一台 2.微机硬件实验平台 单向8位数据锁存器2个、双向8位数据锁存器1个 基本TTL电路芯片若干 四、 实验准备 1.复习I/O端口寻址方式的工原理及特点,了解80X86微机I/O口地址的分配。 2.设计I/O口地址扩展电路,画出连线图。 3.编写I/O口地址扩展电路测试程序。 4.预习所用的芯片的使用方法。 五、实验原理提示 I/O端口编址、寻址方式有两种:一种是存储器映射方式,也就是把端口地址与存储器地址统一编址;另一种是I/O隔离方式,也就是把I/O端口地址与存储器地址隔离开来。80X86微机对这两种编/寻址方式都支持。它支持的专用I/O端口数目是1024个,其端口地址空间是000H~3FFH,详细I/O口地址分配情况可参见《计算机硬件计数基础实验教程》中附录2之附2.2。从I/O口地址分配表中可看出,PC系列微机被设计成I/O通道上只允许使用100H~3FFH这512个口地址,而且其中很多地址已被占用。因此,当设计的接口板只需要少量I/O口地址时,可直接从用户可用的端口地址中选用;而当设计的外围电路需要大量I/O口地址、用户可用的口地址不够用时,则可想办法将用户可用的端口地址数目扩充到1K~64K范围内。 如果从PC系列机I/O地址分配表的用户可用端口地址中,选用I/O口地址作为扩展板端口地址,扩展方法很简单,只需对选定的I/O地址码译码,产生一片选信号去选通相应的I/O端口地址锁存器或I/O接口芯片即可。不过译码电路设计时。除了以地址码作为译码器输入信号外,还必须将它与/信号组合,以控制端口数据的读出或写入(这点与存储器单元扩展时是相似的);不仅如此,而且还要用DMA允许信号AEN信号来控制端口地址译码(只有当AEN=0时才能译码)。例如,为了按实验任务要求扩展三个8位I/O端口,可从512个I/O通道地址中选用三个系统未用的地址,设A口、B口、C口的地址分别选为300H、301H、302H,则其口地址扩展实验电路的参考框图可如图1所示。 如果要在A0~A9的寻址范围之外扩充I/O口地址,通常可有三种方法:一是使用高阶I/O地址位A10~A15扩充寻址;二是采用间接式端口寻址;三是采用存储器映像式I/O寻址。 使用高阶地址位扩充寻址的基本方法是,在512个I/O通道地址区段内找出未用的地址,然后让这个地址成为地址位A10~A15的地址译码的组选信号,这样便可扩充出64个地址。用这种方法可以将系统未用的每一个I/O地址扩充为附加的64个地址,而且在对这些扩充的地址访问时绝不会重复访问系统中原有的任何接口电路。 采用间接式端口寻址方法扩充I/O端口与采用多存储器模块扩充寻址法扩充存储器容量的原理很相似,它们都是用一个端口的内容去寻址一个存储器模块中的单元或别的端口。间接式端口寻址实际上需要用2个口地址去完成对一个端口的寻址:第一个口地址是一个数字输出口,其中包含有被寻址端口的间接口地址;第二个口地址是I/O数据口,读/写这个数据口时,实际就是读/写上述数字输出口寄存器所指定的口地址。可见,为了实现间接式端口寻址。需要多用一条向数字输出口写数据口地址码的OUT指令,在速度上略有损失。 采用存储器映像式I/O寻址来扩充I/O端口的方法很简单。就是用存储器的地址来作为I/O端口地址。这种方法的I/O口扩充余地很大,且不易与原有I/O口地址发生冲突。 六、注意事项 1.原则上讲,系统没有占用的I/O通道端口地址用户都可以使用。但对厂家申明保留的地址,也不要使用,以免发生I/O端口地址重叠和冲突。 对I/O端口地址译码时,一定要用AEN信号加以限定。 七、思考题目 1.什么是I/O端口的隔离I/O编址方式和存储器映像编址方式?它们各有什么特点? 2.I/O端口地址译码电路中为什么要用AEN信号控制? 3. 若采用高阶地址位扩充寻址和间接式端口寻址的方法在A0~A9的寻址范围之外扩充实验任务所要求的A、B、C三个I/O端口,试设计出相应的扩充电路,并说明读写A、B、C口的流程。 八、报告要求 画出完整的I/O口地址扩展实验电路图。 画出实验程序流程图,附上I/O端口测试程序清单,并

文档评论(0)

chenchena + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档