xinzhan
驱动牛犊
驱动牛犊
  • 注册日期2001-09-13
  • 最后登录2005-02-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1338回复:3

请教有关DMA的问题。

楼主#
更多 发布于:2002-02-19 13:34
请教各位大虾:
    我学了好长时间才把WDM的过程搞了个比较了解。现在开始动手写DRIVER时,发现DMA传输没有运行,
    我在按书中讲,在READ时,我把DMA地址传个了芯片,然后ENABLE 了中断,启动了RUN,但我在中断函数中就是得不到我的中断。我不知道DMA有没有进行数据传输。我该如何查看才能发现问题。谢谢。
Alexander
驱动大牛
驱动大牛
  • 注册日期2002-02-04
  • 最后登录2005-06-16
  • 粉丝0
  • 关注0
  • 积分-5分
  • 威望-1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-02-23 09:17
我觉得,你应该:
1。确定硬件没有问题。
2。在dos下实验DMA没有问题。
3。在WDM中确认在StartDevice中正确挂接了中断向量。
4。确认host address and iop address,datalenght,
transfer direction正确。
确认打开了新片的intr enable register bit。

你可以再说具体点,大家才好帮你呀。


[编辑 -  2/23/02 作者: liuqun]
xinzhan
驱动牛犊
驱动牛犊
  • 注册日期2001-09-13
  • 最后登录2005-02-16
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-02-23 14:48
谢谢你的帮助,我现在可以得到中断了,但我看内容时还是没有数据。
请教一下我在DOS下如何TEST,谢谢。
Alexander
驱动大牛
驱动大牛
  • 注册日期2002-02-04
  • 最后登录2005-06-16
  • 粉丝0
  • 关注0
  • 积分-5分
  • 威望-1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2002-02-26 11:10
Dos下的测试是做硬件的同事做的。我不是很清楚。
你用的是PCI的芯片吗?
在dos下,可以通过cf8和cfc端口访问配置空间。
另外BIOS还有个中断,用来访问PCI,好象是1ah,我记不太清了,在论坛里有人说过,你搜一下吧。
Dos下得到PCI物理地址的方法我不太清楚,应该也是通过BIOS吧。
不好意思,dos下我就知道这些了。


[编辑 -  2/27/02 作者: liuqun]
游客

返回顶部