第九章 嵌入式DMA.pptVIP

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
通道1工作方式 mov al,45h ;通道1方式字: ;单字节写传送,地址增量,非自动初始化 out 0bh,al nop ;延时 nop out 0ch,al ;清高/低触发器命令 DMA写传送 通道1起始地址 mov al,0 out 02h,al ;写入低8位地址到地址寄存器 mov al,50h out 02h,al ;写入中8位地址到地址寄存器 mov al,04h out 83h,al ;写入高8位地址到页面寄存器 DMA写传送 通道1传送字节数 mov ax,2048-1 ;AX←传送字节数减1 out 03h,al ;送字节数低8位到字节数寄存器 mov al,ah out 03h,al ;送字节数高8位到字节数寄存器 mov al,01 out 0ah,al ;单通道屏蔽字:允许通道1的DMA请求 …… ;其他工作 DMA写传送 通道1传送结束判断 dmalp: in al,08h ;读状态寄存器 and al,02h ;判断通道1是否传送结束 jz dmalp ;没有结束,则循环等待 …… ;传送结束,处理转换数据 DMA写传送 9.3.3 DMA设定子程序 系统ROM-BIOS的DMA设定子程序:DMA通道2传送编程 软盘的读写利用DMA通道2传送数据 被读软盘、写软盘和软盘检验等软盘I/O功能程序调用 通道2工作方式 push cx ;保存CX cli ;关中断 out 0ch,al ;清高/低触发器命令 push ax ;延时 pop ax out 0bh,al ;将AL中的方式字写入通道2 DMA设定子程序 形成物理地址 mov ax,es mov cl,4 rol ax,cl ;段地址左移4位 mov ch,al ;高位存入CH and al,0f0h add ax,bx ;加段内偏移地址 jnc j33 inc ch ;物理地址形成 j33: push ax ;保存AX DMA设定子程序 通道2起始地址 out 04h,al ;写入地址寄存器 mov al,ah out 04h,al mov al,ch and al,0fh out 81h,al ;写入页面寄存器 DMA设定子程序 计算传送字节数 mov ah,dh ;取扇区数,计算传送的字节数 sub al,al ;AX为扇区数乘256 shr ax,1 ;AX为扇区数乘128 push ax ;暂存AX mov bx,6 call GET-PARM ;调用参数子程序 mov cl,ah ;出口参数:AH=0/1/2/3 pop ax ;恢复AX shl ax,cl ;AX为DMA传送的字节数 DMA设定子程序 通道2传送字节数 dec ax ;字节数减1 push ax ;保存 out 05h,al ;写入字节数寄存器 mov al,ah out 05h,al sti ;开中断 DMA设定子程序 设置出口参数 pop cx ;弹出传送的字节数 pop ax ;弹出物理地址的低16位地址 add ax,cx ;相加,根据结果建立标志CF pop cx ;恢复CX mov al,02h ;允许通道2进行DMA响应 out 0ah,al ret ;返回 DMA设定子程序 第9章教学要求 1. 了解8237A引脚特点和工作时序 2. 掌握8237A的各种工作方式 3. 理解8237A内部寄存器的作用和编程 4. 了解8237A在IBM PC系列机上的应用情况 1. DMA传送-请求方式 DREQ信号有效就连续传送数据 DREQ信号无效,DMA传送被暂时中止,8237A释放总线,CPU可继续操作 DMA通道的地址和字节数的中间值仍被保持 DREQ信号再次有效,DMA传送就继续进行 如果字节数寄存器从0减到FFFFH,或者由外部送来一个有效的信号,将终止计数 特点: DMA操作可由外设利用DREQ信号控制传送的过程 DMA传送-级连方式 用于通过多个8237A级连以扩展通道 第二级的HRQ和HLDA信号连到第一级某个通道的DREQ和DACK上 第二级芯片的优先权等级与所连通道的优先权相对应 第一级只起优先权网络的作用,实际的操作由第二级芯片完成 还可由第二级扩展到第三级等 2. DMA传送类型 DMA读——把数据由存储器传送到外设 由MEMR*有效从存储器读出数据,由IOW*有效把这一数据写入外设 DMA写——把外设输入的数据写入存储器 由IOR*有效从外设输入数据,由MEMW*有效把这一数据写入存储器。 DMA检验——空操作 8237A不进行任何检验 外设可以进行DMA校验 存储器和I/O控制线保持无效,

文档评论(0)

briuo + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档