vennychang
驱动牛犊
驱动牛犊
  • 注册日期2003-02-07
  • 最后登录2005-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
20楼#
发布于:2004-08-17 18:21
我在USB 1.1低速设备上实践 串口通讯(只做了TX and RX) ,目前因为firmware还有问题,但已经可以上下传1byte长度的资料。
要做到控制信息也进去的话,driver还要再加上WMI的控制

Device 要宣告2个interrupt endpoint

我觉得在1.1低速上作这个功能,蛮危险的,常常绝处逢生…


源码没办法公开
vennychang
驱动牛犊
驱动牛犊
  • 注册日期2003-02-07
  • 最后登录2005-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
21楼#
发布于:2004-08-17 18:26
因为公司的关系 源码没办法公开
那也是我第一个驱动练习
可靠性大概也不太好
问题就来讨论吧
kb219
驱动牛犊
驱动牛犊
  • 注册日期2004-08-17
  • 最后登录2008-06-19
  • 粉丝0
  • 关注0
  • 积分208分
  • 威望22点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
22楼#
发布于:2004-08-19 09:32
我是把usb和串口做成了一个驱动。
一般的串口程序能工作。但是,对于串口以中断方式读取串口还存在一些问题。
有兴趣的话, 我们可以一起研究,sourcecode 也可以给你。

[编辑 -  4/26/04 by  dennis761222]


这样的方法,两个DeviceObject怎么控制啊?
MajorFunction 怎样分辨是USB设备Object;还是虚拟串口Object呀?
kb219
驱动牛犊
驱动牛犊
  • 注册日期2004-08-17
  • 最后登录2008-06-19
  • 粉丝0
  • 关注0
  • 积分208分
  • 威望22点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
23楼#
发布于:2004-08-19 10:00
不好意思,重新看了wdm的那本电子书,把上面的问题搞清楚了。
其实,那是两种方法,都是可以的。。。

另外,我想在usb客户程序里每隔1ms就poll一次中断传输得到的数据。资料上说中断传输的polling是由usb类驱动程序实现的,那么,
我怎样才能改变它的时间间隔?在我的驱动程序里,是不是要每隔
1ms就调用某个程序去读取数据?


“wdm的那本电子书” 书名是什么啊?能告诉我吗?多谢,多谢!

两个设备的问题我现在还晕着哪!大虾能指点我一下吗?
vennychang
驱动牛犊
驱动牛犊
  • 注册日期2003-02-07
  • 最后登录2005-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
24楼#
发布于:2004-08-19 10:22

在2000上只要做一
vennychang
驱动牛犊
驱动牛犊
  • 注册日期2003-02-07
  • 最后登录2005-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
25楼#
发布于:2004-08-19 10:24
不好意思 字集用错了

在2000上只要做一个,这样讲..
骨子里是个usb driver,但是向上报的时候要报自已是个serial
这样就可以了
kb219
驱动牛犊
驱动牛犊
  • 注册日期2004-08-17
  • 最后登录2008-06-19
  • 粉丝0
  • 关注0
  • 积分208分
  • 威望22点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
26楼#
发布于:2004-08-19 10:40
DriverEntry里面创建设备的时候,一个驱动如果加两个设备(USB、虚拟串口),MajorFunction[]各种操作的参数怎样控制啊?好像不能一次带两个deviceObject啊。

不好意思,可能我的理解力比较弱,希望老大指导一下。

这样做的整体思路我明白,可以到具体实现就晕了。
vennychang
驱动牛犊
驱动牛犊
  • 注册日期2003-02-07
  • 最后登录2005-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
27楼#
发布于:2004-08-19 11:16
你驱动只要做一种DEVICE OBJECT,1种噢,只是你告诉系统SERIAL 不是USB,DRIVER ENTRY也只有一份
kb219
驱动牛犊
驱动牛犊
  • 注册日期2004-08-17
  • 最后登录2008-06-19
  • 粉丝0
  • 关注0
  • 积分208分
  • 威望22点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
28楼#
发布于:2004-08-19 12:49
98系统这样也行吗?要是想做支持多种Win系统的驱动,是不是只有分别做了啊?

老大能不能把邮箱告诉我啊?我好多多请教啊!熙熙

上面提到那本书您知道书名是什么吗?

我第一次做驱动,就是USB转232这个,网上资料太少了。要不帮忙推荐一些书籍吧。

谢谢。

[编辑 -  8/19/04 by  kb219]

[编辑 -  8/19/04 by  kb219]
vennychang
驱动牛犊
驱动牛犊
  • 注册日期2003-02-07
  • 最后登录2005-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
29楼#
发布于:2004-08-19 13:29
在98大家都说要去改vxd,做法看起来是更改vxd,再加一只 wdm的驱动。
我没做,所以没这经验。
他提的电子书我不知道 ,不过网上有一些电子书可以供你参考。
vennychang
驱动牛犊
驱动牛犊
  • 注册日期2003-02-07
  • 最后登录2005-03-01
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
30楼#
发布于:2004-08-19 13:44
对不起 我没看清楚
网上有一些电子电可以参加,但是好象没有看到专门讲这个的。

您可以先试试从2000开始做起,藉这样练习一下驱动,再来伤脑筋98的事情
kb219
驱动牛犊
驱动牛犊
  • 注册日期2004-08-17
  • 最后登录2008-06-19
  • 粉丝0
  • 关注0
  • 积分208分
  • 威望22点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
31楼#
发布于:2004-08-19 14:32
以后这里经常会见到我^_^,希望大家多多帮忙!
Shentu
驱动小牛
驱动小牛
  • 注册日期2004-04-05
  • 最后登录2011-01-24
  • 粉丝0
  • 关注0
  • 积分234分
  • 威望24点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
32楼#
发布于:2004-09-21 17:37
这个驱动在win2000下已经可以了,能支持各种串口软件以及modem上网。具体实现就跟楼上说的,骨子里是usb驱动,报告上层的是serial port。现在正在做win98下的驱动,碰到好多问题。。

有个想法是,另外写一个.vxd来虚拟出串口,然后把这个串口收到的
请求转发到已经有的wdm驱动里,不知道是否可行?

电子书指的是 Walter Oney 的那本讲wdm驱动的书,MS Press.
bodajingshen000
驱动牛犊
驱动牛犊
  • 注册日期2004-04-07
  • 最后登录2009-01-04
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
33楼#
发布于:2004-10-29 16:57
能否给我一份源码。
感谢!
我的信箱:bodajingshen000@yahoo.com.cn
kb219
驱动牛犊
驱动牛犊
  • 注册日期2004-08-17
  • 最后登录2008-06-19
  • 粉丝0
  • 关注0
  • 积分208分
  • 威望22点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
34楼#
发布于:2004-11-11 14:27
Shentu:

你的虚拟串口在资源管理器中能调出串口属性对话框吗?你知道这个地方应该怎样做吗?我现在就是卡在这里了,希望老大能够指点一下!谢谢
tonysk
驱动牛犊
驱动牛犊
  • 注册日期2004-11-07
  • 最后登录2004-12-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
35楼#
发布于:2004-11-11 18:44
好贴顶一下。
tonysk
驱动牛犊
驱动牛犊
  • 注册日期2004-11-07
  • 最后登录2004-12-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
36楼#
发布于:2004-11-11 18:47
好贴!先顶一下。
Shentu
驱动小牛
驱动小牛
  • 注册日期2004-04-05
  • 最后登录2011-01-24
  • 粉丝0
  • 关注0
  • 积分234分
  • 威望24点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
37楼#
发布于:2004-11-12 11:06
Shentu:

你的虚拟串口在资源管理器中能调出串口属性对话框吗?你知道这个地方应该怎样做吗?我现在就是卡在这里了,希望老大能够指点一下!谢谢


我的现在还不行,最近忙着做win98下的这个驱动,已经可以测试了。不过以前看了些资料,串口属性对话框是要调用微软的串口类的msports.dll。具体可以看看红外的irclass例子,ddk里面有。还有,在osr的网站里专门有篇文章讲属性页的.dll怎么开发,可以参考一下。
dj_ukyo
驱动小牛
驱动小牛
  • 注册日期2003-03-13
  • 最后登录2009-06-02
  • 粉丝0
  • 关注0
  • 积分118分
  • 威望16点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
38楼#
发布于:2004-11-15 11:33
现在还在做吗?
Shentu
驱动小牛
驱动小牛
  • 注册日期2004-04-05
  • 最后登录2011-01-24
  • 粉丝0
  • 关注0
  • 积分234分
  • 威望24点
  • 贡献值0点
  • 好评度20点
  • 原创分0分
  • 专家分0分
39楼#
发布于:2004-11-15 16:59
是啊,一直在改进。全部东东都是连猜带蒙搞出来的,^_^
现在在想办法在wdm里调用configmg.vxd的服务,不好办啊……
也许我们可以讨论一下,呵呵!
游客

返回顶部