实验四 DA传送实验.doc

实验四 DA传送实验.doc

ID:55514760

大小:57.00 KB

页数:4页

时间:2020-05-15

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

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

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

2、HJZLLL;无则继续等待MOVAH,0;否则读出键值INT16HENDMDATASEGMENTTEXTDB'THEQUICKBROWNFOXJUMPSOVERLAZYDOG'DB0DH,0AHDB'THEQUICKBROWNFOXJUMPSOVERLAZYDOG'DB0DH,0AHDB'THEQUICKBROWNFOXJUMPSOVERLAZYDOG'DB0DH,0AH,'$'COUNTEQU$-TEXT;TEXT的总长度BUFDBCOUNTDUP(?)MESGDB'TOMAKEADMAREQUEST!'DB'THENSTRIKEANYK

3、EY!',0DH,0AH,'$'DATAENDSSTACKSEGMENTSTACK'STACK'DB256DUP(?)STACKENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKBEG:MOVAX,DATA;主程序部分MOVDS,AX;装入数据段CALLI8237R;DMA通道1读出初始化DISPMESG;显示操作提示SCANKEY;等待直到有键按下,读出键值LAST1:INAL,08H;读DMA状态寄存器ANDAL,02H;传送是否结束JZLAST1;否则继续等待传送结束CALLI8237W;DMA

4、通道1写入初始化DISPMESG;显示操作提示SCANKEY;等待直到有键按下,读出键值LAST2:INAL,08H;读DMA状态寄存器ANDAL,02H;传送是否结束JZLAST2;否则继续等待传送结束DISPBUF;显示BUF中DMA读写传送的最后结果MOVAH,4CHINT21H;结束程序并返回DOSI8237RPROC;DMA通道1读出初始化MOVAL,05HOUT0AH,AL;通道1屏蔽触发器置1MOVAL,01001001B;通道1方式字,单字节写传送OUT0BH,AL;自动加1变址,不自动预置MOVAL,0OUT0CH,AL;

5、先/后触发器置0MOVAX,DATA;AX为TEXT的段基址MOVBX,OFFSETTEXT;BX为TEXT的有效地址CALLADDRMOV;计算输出TEXT单元的20位物理地址RETI8237RENDPI8237WPROC;DMA通道1写入初始化MOVAL,05HOUT0AH,AL;通道1屏蔽触发器置1MOVAL,01000101B;通道1方式字,单字节写传送OUT0BH,AL;自动加1变址,不自动预置MOVAL,0OUT0CH,AL;先/后触发器置0MOVAX,DATA;AX为BUF的段基址MOVBX,OFFSETBUF;BX为BUF的

6、有效地址CALLADDRMOV;计算并输出BUF单元的20位物理地址RETI8237WENDPADDRMOVPROC;计算并输出某地址MOVCX,0004H;计算用AX:BX表示的物理地址LL:SALAX,1RCLCH,1;将移位时的溢出计入CHDECCLJNZLLADDAX,BX;AX<=AX*4+BXJNCNEXT11INCCHNEXT11:OUT02H,AL;低8位存入通道1基本地址寄存器MOVAL,AHOUT02H,AL;中8位存入通道1基本地址寄存器MOVAL,CHOUT83H,AL;高4位存入通道1页面寄存器MOVAX,COUN

7、T-1;要传送的字节数减1传给基本字节寄存器OUT03H,ALMOVAL,AHOUT03H,ALMOVAL,01OUT0AH,AL;解除通道1屏蔽RETADDRMOVENDPCODEENDSENDBEG三.实验分析:分析DMA时序。1.读过程按下DMA按键,通过端子向DMA通道1发硬件DMA请求,系统DMA控制器向CPU发总线请求信号,CPU在执行完当前总线周期后向系统DMA控制器发总线响应信号,随即把总线控制权交给DMA控制器,此时/DACK1有效。然后DMA控制器将通道1的页面地址寄存器及当前地址寄存器中的内容放到地址总线上去,并发出存

8、储器读命令,读出内存单元中的text内容送往数据总线。由于/DACK1有效,通过J4短路线选中6116和双向总线驱动器74LS245,/IOW有效,通过J3短路线,使6116的/

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

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

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