实验四DMA传送实验.docx

实验四DMA传送实验.docx

ID:62729718

大小:77.22 KB

页数:4页

时间:2021-05-19

实验四DMA传送实验.docx_第1页
实验四DMA传送实验.docx_第2页
实验四DMA传送实验.docx_第3页
实验四DMA传送实验.docx_第4页
资源描述:

《实验四DMA传送实验.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验四DMA传送实验.实验目的:掌握DMA方式的工作原理和8237的编程使用方法。二.实验要求:1.按照实验指导第61页的实验接线图连接硬件线路2.对照【例3.6.1】的程序清单键入源程序,经汇编和连接后运行程序三.实验电路四.实验程序:DISPMACROVARMOVAH,09HMOVDX,OFFSETVARINT21HENDMSCANKEYMACROLOCALLLLLLL:MOVAH,01HINT16HJZLLLMOVAH,0INT16HENDMDATASEGMENT;宏定义;将形参中所存的以结尾的字符串显示在屏幕上;宏定义;为标号LLL建立唯一的从??0001H到??FFFFH勺符号

2、;等待是否有键按下;无则继续等待;否则读出键值;TEXT的总长度;主程序部分;装入数据段;DMA通道1读出初始化;显示操作提示;等待直到有键按下,读出键值;读DM状态寄存器;传送是否结束;否则继续等待传送结束;DMAI道1写入初始化;显示操作提示;等待直到有键按下,读出键值;读DM状态寄存器;传送是否结束;否则继续等待传送结束;显示BUF中DM读写传送的最后结果;结束程序并返回DOS;dmai道1读出初始化;通道1屏蔽触发器置1;通道1方式字,单字节写传送;自动加1变址,不自动预置;先/后触发器置0;AX为TEXT的段基址;BX为TEXT的有效地址;计算输出TEX■单元的20位物理地址T

3、EXTDB'THEQUICKBROWNFOXJUMPSOVERLAZYDOG'DB0DH,0AHDB'THEQUICKBROWNFOXJUMPSOVERLAZYDOG'DB0DH,0AHDB'THEQUICKBROWNFOXJUMPSOVERLAZYDOG'DB0DH,0AH,'$'COUNTEQU$-TEXTBUFDBCOUNTDUP(?)MESGDB'TOMAKEADMAREQUEST!'DB'THENSTRIKEANYKEY!',0DH,0AH,'$'DATAENDSSTACKSEGMENTSTACK'STACK'DB256DUP(?)STACKENDSCODESEGMENTASS

4、UMECS:CODE,DS:DATA,SS:STACKBEG:MOVAX,DATAMOVDS,AXCALLI8237RDISPMESGSCANKEYLAST1:INAL,08HANDAL,02HJZLAST1CALLI8237WDISPMESGSCANKEYLAST2:INAL,08HANDAL,02HJZLAST2DISPBUFMOVAH,4CHINT21HI8237RPROCMOVAL,05HOUT0AH,ALMOVAL,01001001BOUT0BH,ALMOVAL,0OUT0CH,ALMOVAX,DATAMOVBX,OFFSETTEXTCALLADDRMOVRET;DMA通道1写

5、入初始化I8237RENDPI8237WPROC;通道1屏蔽触发器置1;通道1方式字,单字节写传送;自动加1变址,不自动预置;先/后触发器置0;AX为BUF的段基址;BX为BUF的有效地址;计算并输出BU弾元的20位物理地址;低8位存入通道1基本地址寄存器;中8位存入通道1基本地址寄存器;高4位存入通道1页面寄存器;要传送的字节数减1传给基本字节寄存器MOVAL,05HOUT0AH,ALMOVAL,01000101BOUT0BH,ALMOVAL,0OUT0CH,ALMOVAX,DATAMOVBX,OFFSETBUFCALLADDRMOVRETI8237WENDPADDRMOVPROCMO

6、VCX,0004HLL:SALAX,1RCLCH,1DECCLJNZLLADDAX,BXJNCNEXT11INCCHNEXT11:OUT02H,ALMOVAL,AHOUT02H,ALMOVAL,CHOUT83H,ALMOVAX,COUNT-1OUT03H,ALMOVAL,AHOUT03H,ALMOVAL,01OUT0AH,ALRETADDRMOVENDPCODEENDSENDBEG;计算并输出某地址;计算用AX:BX表示的物理地址;将移位时的溢出计入CH;AX<=AX*4+BX;解除通道1屏蔽五.实验分析:分析DMA寸序。1.读过程按下DMA按键,通过端子向DMA通道1发硬件DMA青求,

7、系统DMA控制器向CPU发总线请求信号,CPU在执行完当前总线周期后向系统DMA控制器发总线响应信号,随即把总线控制权交给DMA$制器,此时/DACK1有效。然后DMA控制器将通道1的页面地址寄存器及当前地址寄存器中的内容放到地址总线上去,并发出存储器读命令,读出内存单元中的text内容送往数据总线。由于/DACK1有效,通过J4短路线选中6116和双向总线驱动器74LS245,/IOW有效,通过J3短路线,使6116的/WE有效,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。