- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DMA存储器到IO设备传送
太原师范学院
实 验 报 告
Experimentation Report of Taiyuan teachers College
系 部 计算机系 年 级 0903 课 程 微机原理
姓 名 XXX 同组者 无 日 期 2011.6.7
项 目 DMA存储器到IO设备传送
一、实验要求
利用8237进行DMA数据传送。
二、实验目的
学习用DMA进行存贮器到IO设备传送数据。
三、实验说明
本程序将RAM中的一段数据用DMA方式连续输出到IO设备。由于DMA传送仅适合速度要求快的设备,本例以转换速度为1Mbps的DAC0832做实验,将RAM中保存的波形数据(正弦波、三角波),连续送到DAC0832,并重复传送以输出连续的波形。实验中要求将DMA_IO信号(与CS79位于同一引线孔)与DAC0832的片选信号相联。实验连线将CS79与CS32相连,跳线JP0832用跳线帽跳下面。
(1)禁止8237A工作
(2)复位8237A
(3)充许DMA通道2
(4)设置DMA通道2的起始地址、计数器值
(5)查看运行前8237寄存器值、存贮器的内容
(6)设置DMA工作方式,自动重载起始地址、计数器值,允许DMA
(7)启动DMA传送
(8)重复第7步
四、实验内容
使用配套软件编译运行程序。
代码如下:
DMA EQU 00H
DATA SEGMENT
DATA ENDS
STACK SEGMENT STACK
STA DW 50 DUP(?)
TOP EQU LENGTH STA
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AL,04H
OUT DMA+8,AL ;禁止8237A工作
OUT DMA+0DH,AL ;复位命令,使先后触发器清0
MOV AL,1011B
OUT DMA+0AH,AL ;充许通道2
MOV AX,CS ;计算DAC表的起始地址
AND AX,0FFFH
MOV CL,4
SHL AX,CL
LEA BX,T2 ;T1为三角波,T2为正弦波
ADD AX,BX
OUT DMA+04H,AL ;通道2起始地址
MOV AL,AH
OUT DMA+04H,AL
MOV AL,255 ;通道2计数
OUT DMA+05H,AL
MOV AL,00H
OUT DMA+05H,AL
MOV AL;通道2工作方式,块传送,自动预置,MEM-IO
OUT DMA+0BH,AL
五、实验电路及连接
太原师范学院实验报告 续页X
报 告 内 容
实验目的 四、实验方法
实验原理 五、实验记录及数据处理
实验仪器及材料 六、误差分析及讨论
文档评论(0)