阅读:2583回复:11
非要用WDM写驱动程序吗?
我对WDM了解很少。
作为我们的项目,只希望将设备上的信号引到计算机上就好,我们能实现象RS232的通信就可以了,非要写一个WDM驱动程序吗? 有没有什么办法用简单的C写一个最简单的程序,能够查到设备,读到设备描述符,就OK。 我的机子上装了VIA 3038 TECH PCI TO USB UNIVERSAL HOST CONTROLLER的驱动程序,提示输入输出范围d400 --d41f,我是否可以直接向这个口地址进行读写操作,从而避免WDM? |
|
|
沙发#
发布于:2001-07-23 11:15
如果,你的设备就是要求读一个信号到计算机里,而且也不要求速度,而且操作平台是98/me,的确可以不用驱动程序的。
直接写端口就可以了INPORTB(),OUTPORTB(); |
|
板凳#
发布于:2001-07-23 12:00
Win98/me支持对低端内存的直接访问。比如D0000段可以不通过驱动程序直接访问。
|
|
|
地板#
发布于:2001-07-23 12:39
不可能,除非你是编dos程序,在实模式下运行。
|
|
地下室#
发布于:2001-07-23 12:48
I agree with Mach.
Maybe you need to write a .vxd Device Driver. |
|
5楼#
发布于:2001-07-23 13:21
我觉得直接写一个vxd就可以解决问题了 |
|
|
6楼#
发布于:2001-07-24 16:19
他说的是要用VIA 3038 TECH PCI TO USB UNIVERSAL HOST CONTROLLER,那么他的设备应该是一个usb设备,你们方案不是要让他写一个usbd.sys嘛?!
|
|
|
7楼#
发布于:2001-07-24 17:12
他好像并不是要把它当作USB设备来用 可以简单的认为是PCI设备,就可以直接去读去端口了 :D (9x) |
|
|
8楼#
发布于:2001-07-24 17:14
我想如果你在NT下应用的话,是得写内核程序的,WDM只是一种模型啦。你也可以写过去NT式的驱动。不过呢,在NT下你按照WDM来做驱动是最简单的了,可以省不少事的。
不可以在NT下直接用上端软件对硬件进行操作的。 如果只是想在d400 --d41f端口进行读写操作,你可以编一个最简单的内核驱动。如果是面向产品而端口地址又是固定的话,你可以在内核驱动中只调用HAL函数read_port_xxxx/write_port_xxxx(xxxx是数据类型)进行读写,再做个接口暴露给上端软件,代码量很小的,如果做成dll更好了。(甚至做一个不针对任何实际设备的驱动程序,然后动态加载) |
|
|
9楼#
发布于:2001-07-24 22:08
[QUOTE]原本由 Buddha 发表
[B] 他好像并不是要把它当作USB设备来用 可以简单的认为是PCI设备,就可以直接去读去端口了 :D (9x) [/B][/QUOTE] 如果不当作usb设备,那还要接到usb总线上干什么呢?直接用串口就行了嘛! |
|
|
10楼#
发布于:2001-07-25 09:04
我的操作平台确实就是98,我需要将USB设备的数据传至计算机。
|
|
|
11楼#
发布于:2001-07-25 09:16
[QUOTE]原本由 applicat 发表
[B]我的操作平台确实就是98,我需要将USB设备的数据传至计算机。 [/B][/QUOTE] 还是被我说中了不是! 你没有捷径可以走,driver是不可少的.或者你去弄个windriver,可能会快一点. |
|
|