DMA微软给的例程是外部有数据,使用writedispatch,先dma写数据(allocatechannel->maptransfer)然后中断接着处理。现在我的需求是外部有数据,我在writedispatch里面打开中断,等有中断之后才能使用DMA传输数据,这个时候该如...
全文
回复(2) 2009-12-04 14:48 来自版块 - 非USB硬件驱动开发
表情
vaccy貌似不能的吧, 运行级别不一样的吧。 配置dma的代码放在isr里面调用肯定蓝屏了。(2009-12-08 11:29)
hustsolo应该是可以, 中断到来时,你配置dma就可以,而不是在dispatchwrite里面。比如,你写个startdma()函数,把那些配置dma的工作(如maptransfer)都放在里面。这样,中断一来,你就调用startdma(),然后在Dpc里面把这个write IRP完成掉。(2009-12-06 12:18)

返回顶部