第11章+DMA技术与DMA控制器.pptVIP

  • 4
  • 0
  • 约4.04千字
  • 约 47页
  • 2019-08-10 发布于广东
  • 举报
8237A的编程 屏蔽寄存器 8237A每个通道有一位“屏蔽位”,当其通道的“屏蔽位”置1时,则外部对应的DREQ信号被屏蔽,不予响应,从而禁止了该通道的DMA操作。 四个通道的“屏蔽位”构成一个4位的屏蔽寄存器。 有两种屏蔽命令字格式, 单独对某一个通道的屏蔽位进行置位或复位,如图11.9(a)所示; 另一种是可以同时设定四个通道的屏蔽位,也称综合屏蔽命令字,如图11.9(b)所示。 图11.9 8237A屏蔽字的两种格式 (a)单通道屏蔽字格式 (b)四通道屏蔽字格式 8237A的编程 状态寄存器 8237A有一个可由CPU读取的状态寄存器,如图11.10所示。 图11.10 8237A的状态寄存器格式 2.8237A编程步骤: 8237A的编程通常可按如下步骤进行。 输出主清除命令,使8237A进入初始状态; 将DMA传送的存贮器起始地址写入基地址和当前地址寄存器; 将要传送的字节数写入基字节寄存器和当前字节计数器; 写模式寄存器,规定8237A的工作方式等; 写命令寄存器,规定各通道优先级及DREQ、DACK的有效电平等; 写屏蔽寄存器,规定开放和屏蔽的通道; 写请求寄存器,发DMA请求命令。 8237A的编程 3.8237A的编程举例 例:设某8088系统使用一片8237A,现欲将内存地址为8000H开始的100个字节数据以DMA方式输出到某

文档评论(0)

1亿VIP精品文档

相关文档