阅读:1553回复:2
谁用过plx的 PlxIntrAttach()函数?
为什么不能像下面这么用?
while(1) { …………………… rc = PlxIntrAttach( hDevice, PlxInterrupt, &hInterruptEvent ); if (rc != ApiSuccess) { printf(\"*ERROR* - Attach failed, rc=%d\\n\", rc); return 0; } EventStatus = WaitForSingleObject( hInterruptEvent, INFINITE ); switch (EventStatus) { case WAIT_OBJECT_0: rc = PlxIntrAttach( hDevice, PlxInterrupt, &hInterruptEvent ); break; …………………………………… } } 每次运行时第一次中断总是没问题,可是到了switch里的 rc = PlxIntrAttach( hDevice, PlxInterrupt, &hInterruptEvent ); 也就是准备第二次中断时,就会出错,提示信息为:ApiInvalidHandle,怎么会出现无效设备句柄啊? 而且plx提供的文档里,关于这个函数的例子里也有一个例子是这样的阿? 那位大侠知道原因啊,小弟万分感谢!! 顺便提一下,上面这段程序是在一个中断处理线程中的。 |
|
沙发#
发布于:2002-11-21 20:39
我起先也是用PLX-SDK,但觉得它的中断服务程序写得不大好(个人意见),所以我现在不用了。
所以你最好winddk自己写驱动。 |
|
板凳#
发布于:2002-11-22 16:54
没有别的办法了吗? :(
|
|