阅读:1617回复:5
PCI数据采集卡驱动编程疑问
做了一块PCI数据采集卡,想当数据采集到卡上的存储容量的一半的时候就启动DMA。但是不知道这个驱动程序应该怎么写
我有以下思路: 先通过用户程序向驱动发送IRP,启动数据采集,当卡上存储数据达到一半时向pc发送中断,再通知应用程序启动DMA开始传输。 不知道这种思路是否有问题,初次写driver还请各位大侠多多指点 还有,请问是否可以直接在中断到来时就开始DMA而不通知应用程序来发送irp呢? |
|
最新喜欢:phoeni...
|
沙发#
发布于:2005-03-25 19:47
我觉得可以这样的.
|
|
板凳#
发布于:2005-03-25 23:59
楼上的兄弟在做那个桥的驱动啊,我也在弄,有时间交流交流。
|
|
地板#
发布于:2005-03-28 10:12
我觉得在这种应用中,可以用硬件或FPG 来启动DMA,
1. 应用程序初始化硬件(申请内存,设置DMA传输地址) 2. 启动板卡采数 3. 通过(硬件或FPG计数>1/2 容量) 启动DMA 4. DMA传输结束,发中断,应用程序开始处理数据. 这种方案的好处是可以连续采集. |
|
地下室#
发布于:2005-03-28 20:39
非常感谢!
还有点问题再请教一下,就是通过硬件启动DMA是不是还是需要读写接口芯片的寄存器呢? 我觉得在这种应用中,可以用硬件或FPG 来启动DMA, [编辑 - 3/28/05 by featherlu] |
|
|
5楼#
发布于:2005-03-30 15:27
用的什么接口芯片?
一般来说,接口芯片上自带DMA控制器。在驱动程序里面对接口芯片的寄存器操作,启动DMA就可以 |
|