第5章 微型计算机和外设的数据传输概要.ppt

  1. 1、本文档共53页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 微型计算机和外设的数据传输概要

无条件传送方式 编程 例 START: MOV DX,INPORT IN AL,DX;读入按键状态 TEST AL,01H;判断最低位按键 JNZ K1;最低位按键没闭合,转 MOV AL,01H;最低位发光 JMP DISP K1:TEST AL,02H; JNZ K2;次低位按键没闭合,转 MOV AL,03H;最低2位发光 JMP DISP …………………. DISP: MOV DX,OUTPORT OUT DX,AL; JMP START * 5.5.1 程序方式 条件传送方式也叫查询方式 接口特点:避免了对端口的“盲读”、“盲写” ,数据传送的可靠性高,并且硬件接口相对简单。缺点是CPU工作效率低,I/O响应速度慢; 外设要求:状态口和数据口 在有多个外设的系统中,CPU的查询顺序由外设的优先级确定 一种CPU主动、外设被动的I/O操作方式,很好地解决了CPU与外设之间的同步问题 5.5.1 程序方式 条件传送方式的三个环节 CPU从接口中读取状态字。 CPU检测状态字 如“就绪”状态,则传送数据。 READY? 读取状态端口 读/写数据端口 Y N 状态端口复位 5.5.1 程序方式 图5.4 查询式输入的接口 1 2 3 4 5 ???? 5.5.1 程序方式 图5.5 查询式输出的接口 5.5.1 程序方式 图5.6 查询式输入过程的流程图 查询的例子 1 DATA_SEG SEGMENT MESSAGE DB ′BUFFER OVERFLOW′,0DH,0AH ATA_SEG ENDS COM_SEG SEGMENT BUFFER DB 82 DUP (?) COUNT DB ? COM_SEG ENDS CODE SEGMENT ASSUME DS:DATA_SEG,ES:COM_SEG,CS:CODE STAT: MOV AX,DATA_SEG MOV DS,AX MOV AX,COM_SEG MOV ES,AX MOV DI,OFFSET BUFFER MOV COUNT,DI MOV CX,81 CLD 查询的例子 2 NEXT_IN: IN AL,56H TEST AL,02H JZ NEXT_IN IN AL,52H OR AL,0 JPE NO_ERROR JMP ERROR NO_ERROR: AND AL,7FH STOSB MOV CX,17 LOOPNE NEXT_IN JNE OVERFLOW MOV AL,0AH STOSB SUB DI,COUNT MOV COUNT,DI 查询的例子 3 OVERFLOW: MOV SI,OFFSET MESSAGE MOV CX,17 NEXT_OUT: IN AL,56H TEST AL, 01H JZ NEXT_OUT LODSB OUT 54H,AL LOOP NEXT_OUT 多个入设备轮流查询的例子 TREE_IN: MOV FLAG,0 INPUT: IN AL,STAT1 TEST AL,20H JZ DEV2 CALL PROC1 CMP FLAG,1 JNZ INPUT DEV2: IN AL,STAT2 TEST AL,20H JZ DEV3 CALL PROC2 CMP FLAG,1 JNZ INPUT DEV3: IN AL,STAT3 TEST AL,20H JZ NO_INPUT CALL PROC3 NO_INPUT: CMP FLAG,1 JNZ INPUT 3个设备处于相同优先级的循环查询程序, INTREE: MOV FLAG,0 INPUT: IN AL,STAT1 TEST AL,20H JZ DEV2 CALL PROC1 DEV2: IN AL,STAT2 TEST AL,20H JZ DEV3 CALL PROC2 DEV3: IN AL,STAT3 TEST AL,20H JZ NO_INPUT CALL PROC3 NO_INPUT: CMP FLAG

您可能关注的文档

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档