阅读:1957回复:7
USB转串口的问题?
我要做一个USB接口转16路COM串的驱动(Windows 2000)。
现在主要有三个问题: 1、须要模拟16个串口,象Com1 com2一样; 2、须要在驱动中加入一个线程,我看了一些例程,一般没有在驱动中加入线程的。 3、USB口的数据读写操作,我在《设备驱动程开发指南》一书中看到他写的有关USB口的数据读写代码,好生复杂,没有有简单一点的。(该书为1999年的) 我的程序的结构计划是这样的: 各个串口的使用者将数据写入一个缓冲或是一个队列中,再由驱动程序中的线程将数据统一写入USB口;当USB口有该串口的数据时,返回给相应的串口使用者。 这种设想是否可行,是否有更好的方案? 该驱动程序对稳定性要求较高,须要一年365天正常运行。 请给我一点建意,谢谢!!! :D :D :D :D :D :D :D :D |
|
沙发#
发布于:2002-09-29 10:55
多少发一点意见和建议嘛!!
有分的噢!!!!! :) :) :) :) :) :) :) :cool: :cool: :cool: :cool: :cool: |
|
板凳#
发布于:2002-09-29 12:02
windows系统不可能连续运行365天,能够20天不重新启动就是gates烧高香了。这点,你就不用考虑了。
模拟16个串口吗,可能要在注册表中做点手脚,然后是CreateDevice的时候,呵呵。而且,你要实现一个串口驱动的标准命令,详见2kddk的串口驱动例子。 怎么加入一个线程,看walter oney的书,讲的很详细。提醒你,线程的工作效率低,对系统性能又影响,尽量不要用。 事实上,在所有的硬件操作中,对usb的数据读写是最简单的了。麻烦的可能是你的程序逻辑问题。你觉得看不懂,可能是书描写的不行,建议看walter oney的书。 |
|
|
地板#
发布于:2002-09-29 12:25
但是在这样的情况下,不采用线程可能比较难办??
:D |
|
地下室#
发布于:2002-09-29 16:55
还有没有其它的建议,有分的!!!!!!
一点点也是有价值的!!!!! |
|
5楼#
发布于:2002-09-29 23:58
你的问题都比较细,没有什么建议。方法都给你说了,书你还是要看的,在这里永远都找不到你想要的答案 (你不是想要一段代码吧)
说回来,你要真的写的线程,读usb数据什么的东西,其实真的很简单的。关键是,你自己要看书。你不看书,来这里都是瞎问。别人给你说了你也不懂啊。 所以阿,看书去,就walter oney的那本书。 |
|
|
6楼#
发布于:2002-09-30 07:54
书我也看了,《Windows WDM 设备驱动程序开发指南》,一本老书,1999年的。由于是第一次做这个东东,有些摸不着头脑。
谢谢你的建意! |
|
7楼#
发布于:2002-09-30 09:09
你去开个新贴吧,我会指点你的。如果你没有一定基础,可能你不知道我在说啥,另外如果要源代码的话恕不能提供。
如os_dev所言,usb的操作是驱动里面最简单的了,现在你不用担心usb的操作,你要关心的是整个架构,程序的逻辑流程。你不要把usb的读写看得那么难。否则你会给自己带上一吧锁的。 [编辑 - 9/30/02 by dazzy] |
|