阅读:1562回复:5
ISA卡I/O口读写,怎么不行呀?
小弟的ISA卡只用作读写Port I/O口,在OnW32DeviceIoControl中new 了这些口,并hook了。在handler中switch(iotype)中实现读写。在应用程序中 SleepEx(INFINITE, TRUE);通过回调函数CallBackAPC来输入初始条件。vxd文件生成了,应用程序也编译通过了。为什么执行不了。是不是那儿出了差错。急死了。大侠帮我!!
|
|
沙发#
发布于:2002-07-28 00:29
看了看以前的帖子,才知道在98下,对ISA的I/O口读写根本不用作驱动。直接在控制程序中用_inp,_outp,_inpw,outpw...等读写命令就行了。真是愚蠢。我不用开发98下的isa驱动了。OK.其实老板也不懂。但2000下是逃不掉的。有谁帮我,谢了。
|
|
板凳#
发布于:2002-07-28 09:12
你如果只是进行简单的I/O,找一个WIN2000下的I/O库就行了,一般有一个驱动负责驱动端口,应用程序可通过访问该驱动进行I/O
|
|
地板#
发布于:2002-07-28 11:24
|
|
|
地下室#
发布于:2002-07-28 11:47
2000不会有那么简单的
isa卡不支持即插即用,所以需要应用层程序配合,首先需要进行资源设置,比如io基址,中断号什么的,然后将这些都写到注册表里,再使用一些api加载你的驱动,在diverentry中检测总线,然后添加设备,读取注册表中的设备需要的资源,然后使用IoReportResourceUsage向系统报告你所需的资源,如果这些资源空着,就会返回成功,然后你就可以使用这些资源了。 |
|
|
5楼#
发布于:2002-07-28 14:52
在网上找一找就能找到的,如SMPORT等直接访问端口的库,一般的ISA卡如果没用到中断或DMA,速度要求不高的话是很方便的,我在WIN2000里测试过多种这样的库
|
|