6391|14

63

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请教 usb function client driver [复制链接]

1. WinCE上的ActiveSync使用的是哪一个function client driver? webcast上一篇课程说使用的是RNDIS,但是我的开发板上注册表HKLM/drivers/usb/functiondrivers/DefaultClientDriver的值为serial_class。一旦该值改变,则activesync不可使用。这是否说明activesync使用了serial_class?

2. activesync在wince上是否还有另外一个服务程序(exe/dll),因为我发现那几个usb function client driver(RNDIS/serial/storage/ufnprn)内并无同步内容?

3. 我要把开发板上的摄像头采集到的数据通过usb上传到pc(数据率大约20Mb/s),并接收pc通过usb下传的指令,能否利用现成的serialusbfn.dll这个驱动来传输?

谢谢。

最新回复

请教如何仿照usbprn写一个自己的驱动,楼主能共享下代码么 最近正在弄wince下usb的文件传输   详情 回复 发表于 2015-1-20 21:14
点赞 关注

回复
举报

75

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
学习,帮顶

~~~~~~~~~~~~~~~~~~~
 
 

回复

86

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
应该就是serial_class了。
帮顶。
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

4
 
1.WinCE上的同步应该用的是Serial_Class。

2.PB的组件中有ActiveSync,定制系统时可以添加进来的。

3.20Mb/s的数据量可能有些大,在ARM11的平台上采用ActiveSync传输都有些困难。
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

5
 
引用 3 楼 sunrain_hjb 的回复:
1.WinCE上的同步应该用的是Serial_Class。

2.PB的组件中有ActiveSync,定制系统时可以添加进来的。

3.20Mb/s的数据量可能有些大,在ARM11的平台上采用ActiveSync传输都有些困难。


谢谢,如果我不用ActiveSync提供的函数接口,把ActiveSync禁用了,而直接使用Serial_Class驱动(serialusbfn.dll)的COM_IoControl()来传输数据呢?速度会够吗? 我是ARM11 + WinCE6.0
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

6
 
ActiveSync使用的是Serial Class.
这么高的速度Serial的应该是不行,在向CE设备复制文件的时候发现使用Mass Storage要比Serial快很多,EBOOT通过USB下载NK到CE设备也比较快,可以使用类似的协议。
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

7
 
引用 5 楼 veabol 的回复:
ActiveSync使用的是Serial Class.
这么高的速度Serial的应该是不行,在向CE设备复制文件的时候发现使用Mass Storage要比Serial快很多,EBOOT通过USB下载NK到CE设备也比较快,可以使用类似的协议。


谢谢。我打算仿照serial_class驱动自己写一个,可是在分析这个驱动的结构的时候发现很费解:

PUBLIC\COMMON\OAK\DRIVERS\USBFN\CLASS\SERIAL下仅有 usbfndrv.cpp 和 usbfndrv.h 两个代码文件,而sources文件有如下内容
TARGETDEFNAME=SerialUSBFn
TARGETNAME=$(TARGETDEFNAME)_lib
TARGETTYPE=LIBRARY
SOURCES= \
        USBFnDrv.cpp \
那就是说这个cpp文件会被编译成一个名为SerialUSBFn_lib.lib的文件,而不是serialusbfn.dll


另外,在serialusbfn.def中有 COM_Init COM_Deinit COM_Open COM_Close COM_IOControl等内容,用dependencies查看serialusbfn.dll也确有这些接口。但USBFnDrv.cpp和usbfndrv.h中却并未包含这些接口,这是怎么回事?

难道这个驱动在其它地方还有源代码?


顺便搭车问一个弱智问题,windows搜索时怎么搜索不带后缀名的文件?因为我想在所有的sources文件中搜索serialusbfn关键字,发现搜不出来。
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

8
 
COM_Init之类是在MDD层暴露的.
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

9
 
引用 6 楼 oncancel 的回复:
引用 5 楼 veabol 的回复:
ActiveSync使用的是Serial Class.
这么高的速度Serial的应该是不行,在向CE设备复制文件的时候发现使用Mass Storage要比Serial快很多,EBOOT通过USB下载NK到CE设备也比较快,可以使用类似的协议。

谢谢。我打算仿照serial_class驱动自己写一个,可是在分析这个驱动的结构的时候发现很费解:

PUBLIC\COMMON\OAK\DRIVERS\USBFN\CLASS\SERIAL下仅有 usbfndrv.cpp 和 usbfndrv.h 两个代码文件,而sources文件有如下内容
TARGETDEFNAME=SerialUSBFn
TARGETNAME=$(TARGETDEFNAME)_lib
TARGETTYPE=LIBRARY
SOURCES= \
        USBFnDrv.cpp \
那就是说这个cpp文件会被编译成一个名为SerialUSBFn_lib.lib的文件,而不是serialusbfn.dll


另外,在serialusbfn.def中有 COM_Init COM_Deinit COM_Open COM_Close COM_IOControl等内容,用dependencies查看serialusbfn.dll也确有这些接口。但USBFnDrv.cpp和usbfndrv.h中却并未包含这些接口,这是怎么回事?

难道这个驱动在其它地方还有源代码?


顺便搭车问一个弱智问题,windows搜索时怎么搜索不带后缀名的文件?因为我想在所有的sources文件中搜索serialusbfn关键字,发现搜不出来。

这里的lib文件是PDD层的代码.
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

10
 
mark............
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

11
 
Ding

mark............
 
 
 

回复

63

帖子

0

TA的资源

一粒金砂(初级)

12
 
引用 7 楼 flandy1982 的回复:
COM_Init之类是在MDD层暴露的.


我用 google桌面搜索,没有在任何一个sources文件内发现serialusbfn字段,那这个serialusbfn.dll究竟是怎么编译出来的? 这个MDD在哪个文件夹?谢谢。
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(中级)

13
 
WinCE6.0下的目录为C:\WINCE600\PUBLIC\COMMON\OAK\DRIVERS\USBFN\CONTROLLER\MDD。
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

14
 
谢谢各位的帮助,我仿照usbprn驱动重新写了一个,已经可以工作了。
 
 
 

回复

37

帖子

0

TA的资源

一粒金砂(中级)

15
 
请教如何仿照usbprn写一个自己的驱动,楼主能共享下代码么
最近正在弄wince下usb的文件传输
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表