我如何在驅(qū)動程序中獲得CH365的配置空間的地址?
還有我可以利用WRITE_REGISTER_UCHAR()函數(shù)往配置空間里寫數(shù)據(jù)嗎?[Emot]1[/Emot]
我如何在驅(qū)動程序中獲得CH365的配置空間的地址?
還有我可以利用WRITE_REGISTER_UCHAR()函數(shù)往配置空間里寫數(shù)據(jù)嗎?[Emot]1[/Emot]
我還想問下 CH365的原廠驅(qū)動程序中的中斷服務(wù)程序是可以被中斷信號打斷的嗎?
1.WINDOWS會提供配置空間的讀寫函數(shù),你可以在msdn或ddk中查找 2.同上 3.可以
我想將中斷服務(wù)程序變成不可中斷的 是修改IoConnectInterrupt里的參數(shù)嗎?
if ( mDeviceExtension -> mInterruptVector != 0 ) { // 中斷向量有效 mStatus = IoConnectInterrupt( & mDeviceExtension -> mInterruptObject, mInterServiceRoutine, iDeviceObject, NULL, // 掛接到指定中斷,將設(shè)備對象作為參數(shù) mDeviceExtension -> mInterruptVector, (KIRQL) mDeviceExtension -> mInterruptLevel, (KIRQL) mDeviceExtension -> mInterruptLevel, // 中斷號 mDeviceExtension -> mInterruptMode, mAddress == (PVOID)mCH365_INT_LINE_AUTO, mDeviceExtension -> mInterruptAffinity, FALSE ); // 共享/敏感 if ( NT_SUCCESS( mStatus ) ) { // 已經(jīng)掛接中斷 mDeviceExtension -> mInterruptLine = mINTERRUPT_LINE( mDeviceExtension -> mInterruptLevel ); // 保存掛接的中斷號 if ( mDeviceExtension -> mInterruptLine == 0 ) mDeviceExtension -> mInterruptLine = (ULONG)mAddress; } } else mStatus = STATUS_NO_SUCH_DEVICE; // 中斷功能未啟用
這段程序我可以加到PNP例程序設(shè)備啟動里嗎?
只要在你設(shè)備的資源分配好了,你可以隨便在哪定義,但有時要注意irql級別.
哦 謝謝