token
驱动牛犊
驱动牛犊
  • 注册日期2003-04-09
  • 最后登录2010-04-29
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1241回复:3

请教:在usb驱动中做一个循环取数dpc服务例程遇到的问题

楼主#
更多 发布于:2003-04-21 10:45
    我的项目是一个usb口数据采集卡驱动,在驱动中我开辟了缓冲区并映射到用户进程空间中,驱动中设定一个定时器周期性激活dpc服务例程用于定时向硬件读取数据填充到缓冲区中,但在调用IoBuildDeviceIoControlRequest函数时就出现兰屏死机,请教有相关处理经验的大侠,亟待你的回应。
token
驱动牛犊
驱动牛犊
  • 注册日期2003-04-09
  • 最后登录2010-04-29
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-04-21 12:46
各位大侠是不是这问题太小儿科了,不屑于回答。
jinghuiren
驱动巨牛
驱动巨牛
  • 注册日期2002-06-01
  • 最后登录2008-10-27
  • 粉丝0
  • 关注0
  • 积分291分
  • 威望460点
  • 贡献值0点
  • 好评度428点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-04-21 15:41
老兄,你这样只说个现象谁都没办法回答你,因为原因会有很多很多,建议你用SOFTICE跟踪一下找找原因,可以用WATCH看一下IRP里的几个相关内容是否正确,或者把那部分源代码贴出了让大家看看
token
驱动牛犊
驱动牛犊
  • 注册日期2003-04-09
  • 最后登录2010-04-29
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-04-21 17:25
谢谢楼上老兄,问题已经解决了,因为DPC例程的IRQL为DISPATCH_LEVEL,而IoBuildDeviceIoControlRequest只能在IRQL为PASSIVE_LEVEL使调用,现在换到系统线程下调用,问题就解决了,我的项目也该收工了。 ;)
游客

返回顶部