- 1、本文档共58页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CPU及外设间数据传送方式
第三节 CPU与外设间的数据传送方式;一、 无条件传送方式
二、 条件传送方式 ( 查询方式 )
三、 中断传送方式
四、 DMA传送方式
( Direct Memory Access );概述
1。无条件传送(CPU与外设同步工作):
外部控制过程各种动作时间是固定的,而且是已知的。
2。查询方式(CPU与外设不同步工作):
传送前,先查询外设状态,准备好才传送,否则CPU处于等待状态。
3。中断方式:
外设与CPU处于并行工作,一旦外设准备好,外设向CPU发中断申请,条件具备,CPU暂停原程序执行,响应中断,外设与CPU串行工作。
4。DMA方式(高速I/O及成组交换数据):
CPU不干予,由硬件实现存储器与外设之间交换数据,称直接存取存储器。;一、无条件传送方式 (同步传送方式);例 1 无条件输入接口(参看教材图6-8);无条件输入编程:
从端口200H读入100个字节到内存缓冲区buffer中。;例2 无条件输出 : 编程控制系统板上扬声器发声。;1. 使61H端口的0位输出0,控制8253输出1。
2. 使61H端口的1位按所需频率交替输出0和1,
产生所需的声音。;code SEGMENT
ASSUME CS:code
start: MOV BX, 3000H ;控制脉冲个数
MOV DX, 6000H ;控制脉冲周期
IN AL, 61H ;读入61H端口数据
AND AL, 1111 1100b ;D0为0,8253 输出1
sound: XOR AL, 0000 0010b
OUT 61H, AL ; 61H端口的D1交替为0和1
MOV CX, DX
delay: LOOP delay ;延时
DEC BX ;控制脉冲数
JNZ sound
MOV AH, 4CH
INT 21H
code ENDS
END start;将发声程序改编为一子程:
入口参数 BX 控制音长
DX 控制音高;二、条件传送方式(查询传送方式);?查询传送方式,编程流程:;例1 查询方式输入;查询方式输入接口, 参看教材图6-10;从21CH状态端口
读入外设状态信息; 、、、
MOV AX, SEG buffer ;取缓冲区首地址
MOV DS, AX
LEA DI, buffer
MOV CX, 50H ;传送个数
next: MOV DX, 21CH
ask: IN AL, DX ;从状态端口读入状态信息
TEST AL, 0001 0000B ;检测D4位
JZ ask ;D4=0,继续查询
MOV DX, 218H
IN AL, DX ;从数据端口读入数据
MOV [DI], AL ;送缓冲区
INC DI ;修改缓冲区指针
LOOP next ;传送下一个
、、、;例2 查询方式输出;查询方式输出接口, 参看教材图6-11;从21CH状态端口
读入外设状态信息;、、、
MOV AX, SEG buffer ;取缓冲区首地址
MOV DS, AX
LEA SI, buffer
MOV CX, 80H
文档评论(0)