- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
端口C的PC3~PC5用作端口A的应答联络线,PC0~PC2则用作端口B的应答联络线,PC6和PC7则用于方式0(基本I/O)。 对于图5-11中所示的控制信号作如下说明。 STB:为选通输入信号,低电平有效。它是由外设送给8255A的输入信号,当该信号有效时,8255A接收外设送来的一个8位数据。 IBF:输入缓冲器满信号,高电平有效。它是一个8255A送给外设的联络信号。当该信号为高电平时,表示外设的数据已送进输入缓冲器中,但尚未被CPU取走,通知外设不能送新数据;只有当它变为低电平时,即CPU已读取数据,输入缓冲器变空时,才允许外设送新数据。 INTR:中断请求信号,高电平有效。它是8255A的一个输出信号,用于向CPU发出中断请求。它是当选通信号结束(STB=1),已将一个数据送进输入缓冲器(IBF=1),并且端口处于中断允许状态(INTE=1)时,8255A的INTR端被置为高电平,向CPU发出中断请求信号,当CPU响应中断读取输入缓冲器中的数据时,由读信号RD的下降沿将INTR置为低电平。 INTEA:端口A中断允许信号。INTEA-没有外部引出端,它实际上就是端口A内部的中断允许触发器的状态信号。它由PC4的置位/复位来控制,PC4=1时,使端口A处于中断允许状态。 INTEB:端口B中断允许信号。与INTEA-类似,INTEB也没有外部引出端,它是端口B内部的中断允许触发器的状态信号。它由PC2的置位/复位来控制,PC2=1时,使端口B处于中断允许状态。 (2)方式1输出 当端口A和端口B工作于方式1输出时,方式选择控制字与端口C控制信号的定义如图5-12所示。 图5-12 方式1输出有关信号的规定 对于图5-12中所示的控制信号作如下说明。 OBF:输出缓冲器满信号,低电平有效,它是8255A输出给外设的一个控制信号。当该信号有效时,表示CPU已经把数据输出给指定端口,通知外设把数据取走。 ACK:外设响应信号,低电平有效。当该信号有效时,表明CPU通过8255A输出的数据已经由外设接收,它是对OBF的回答信号。 INTR:中断请求信号,高电平有效。它是8255A的一个输出信号,用于向CPU发出中断请求。INTR是当ACK、OBF和INTE都为“1”时才被置成高电平(向CPU发出中断请求信号);写信号WR的上升沿使其变为低电平(清除中断请求信号)。 INTE4:端口A中断允许信号,由PC6的置位/复位来控制,当PC6=1时,端口A处于中断允许状态。 INTEB:端口B中断允许信号,由PC2的置位/复位来控制,当PC2=1时,端口B处于中断允许状态。 另外,在方式1输出时,PC4、PC5两位还未用,如果要利用它们可通过方式选择控制字的D3位来设定。 3.方式2 方式2又称双向传输方式,只有端口A才能工作于方式2。在方式2,外设既可以在8位数据线上往CPU发送数据,又可以从CPU接收数据。当端口A工作于方式2时,端口C的PC-7~PC3用来提供相应的控制和状态信号,配合端口A的工作。此时端口B以及端口C的PC2-~PC--0---则可工作于方式0或方式1,如果端口B工作于方式0时,端口C的PC2~PC0-可用作数据输入/输出;如果端口B工作于方式1时,端口C的PC2~PC0-用来为端口B提供控制和状态信号。 当端口A工作于方式2时,方式选择控制字与端口C控制信号的定义如图5-13所示。 图5-13 8255A方式2 (1) 方式2输出 对于图5-13中所示的控制信号作如下说明。 OBFA:端口A“输出缓冲器满”信号,输出,低电平有效。当OBFA有效时,表示CPU已经将一个数据写入8255A的端口A,通知外设数据可以取走了。 ACKA:外设对OBFA的回答信号,输入,低电平有效。当它有效时,表明外设已收到端口A输出的数据。 INTE1:输出中断允许信号。当INTE1=1时,允许8255A由INTRA向CPU发中断请求信号;当INTE1=0时,则屏蔽该中断请求。INTE1的状态由“端口C按位置1/置0控制字”所设定的PC6位的内容来决定。 (2) 方式2输入 STBA:端口A选通信号,输入,低电平有效。当该信号有效时,端口A接收外设送来一个8位数据。 IBFA:端口A“输入缓冲器满”信号,输出,高电平有效。当IBFA=1时,表明外设的数据已经送进输入缓冲器;当IBFA=0时,外设可以将一个新的数据送入端口A。 INTE2:输入中断允许信号。它的作用与INTE1=1类似,INTE2的状态由“端口C按位置1/置0控制字”所设定的PC4位的内容来决定。 INTRA: 中断请求,输出,高电平有效。在I
文档评论(0)