WinCE系统USB功能定制

作者:ARM-WinCE

USB的广泛应用就不用多说了,相信目前的各个领域的嵌入式产品中,很少有不用USB的。USB是主从结构的,分为USB Host和USB Slave,从USB1.0,USB1.1到现在的USB2.0,基于USB2.0还有USB OTG,也就是同时支持Host和Slave设备。目前最新的好像是USB3.0,刚开始普及吧。

在WinCE6.0中,对USB是有很好的支持。一般来说,如果USB的设备驱动做好了,USB的协议层以及上层的应用都是现成的,而且还有源码。也就是说,我们只需要在BSP中完成USB的驱动就可以了。先来看一下WinCE中USB的架构,如图:

USB Host:

最底层就是USB Host控制器了,上层是USB Host Controller Driver,该驱动负责和硬件通讯来传输数据,在WinCE中支持UHCI,OHCI和EHCI。Host Core Driver & Hub Driver是独立于硬件的USB协议栈,支持USB Host协议及USB Hub功能。最上层就是USB Host Class driver是USB Host的应用协议,目前在WinCE中,支持RNDIS,Print,Mass Storage和HID四种应用。

USB Device:

最底层是USB Device控制器,上层是USB Device Driver负责和硬件通讯。Device Core Driver是USB Device的协议栈。最上层是USB Device的应用层,目前在WinCE中支持RNDIS,Serial和Mass Storage三种应用。

USB OTG:

USB OTG控制器上层是USB OTG控制器的驱动,USB OTG Core Driver是协议层,如果做Host,它会使用USB Host协议栈,如果做Device,它会使用USB Device协议栈。

在WinCE中,根据需要来选择所需的USB功能,创建WinCE工程,然后在Catalog Items View中选择”Core OS”->”CEBASE”->”Core OS Services”->”USB Host Support”,如图:

USB Function Driver:用于支持USB Device驱动。

USB Host Support:用于支持USB Host控制器驱动。

USB Human Input Device (HID) Class Driver:用于支持USB Host外接HID设备,可选择同时支持USB鼠标键盘,也可以分开选择。

USB Printer Class Driver:用于支持USB Host打印功能。

USB Remote NDIS Class Driver:用于支持USB Host连接RNDIS设备。

USB Storage Class Driver:用于支持USB Host外接U盘的功能。

上面的选项除了USB Function Driver以外,都是用于支持USB Host应用的,可以根据自己平台的需要,选择相应的USB应用,也可以都选择。如果是USB Device设备,那么首先要选择上面提到的USB Function Driver,然后在Catalog Items View中选择”Device Drivers”->”USB Function”->”USB Function Clients”,如图:

Mass Storage:用于支持USB Device作为U盘功能。

RNDIS Client:用于支持USB Device作为RNDIS设备。

Serial:用于支持USB Device作为串口设备。

对于USB Device设备,可以支持Mass Storage,RNDIS和Serial功能,不过同一个USB Device在系统启动以后只能支持某一个功能。

总结一下,无论是USB Host还是USB Device,只要驱动做好了,上层的应用在WinCE系统定制的时候,选择相应的组件就可以了。对于USB Device来说,根据组件的不同,还需要进行一些注册表的配置,我会在以后的blog中进行介绍。

WinCE系统USB功能定制相关推荐

  1. 在WinCE 6.0系统下实现USB功能定制

    USB的广泛应用就不用多说了,相信目前的各个领域的嵌入式产品中,很少有不用USB的.USB是主从结构的,分为USB Host和USB Slave,从USB1.0,USB1.1到现在的USB2.0,基于 ...

  2. WinCE系统声音定制

    作者:ARM-WinCE 2010的第一篇Blog,介绍一下WinCE系统声音的定制.说白了,就是设置注册表.WinCE系统启动的开机音乐,点击触摸屏以及键盘输入的按键音,还有系统运行过程中的各种声音 ...

  3. wince 系统定制

    首先安装好wince开发环境,具体的安装方法在我的另一篇博客里有介绍,http://blog.csdn.net/gaoyang610/article/details/8840995 现在我们开始定制w ...

  4. 定制WinCE系统的屏幕校准界面

    作者:xiaolei05 转自:http://blog.csdn.net/xiaolei05/article/details/6582203 在实际应用中,经常需要定制WinCE系统的屏幕校准界面.最 ...

  5. excel进销存管理系统_通用Excel助力企业定制开发信息化系统常用功能模块

    信息化成为现代企业管理的趋势,而企业管理系统则是推动这一趋势发展的重要载体.那么什么是企业管理系统呢?企业管理系统都有那些呢? 通用Excel助力企业定制开发信息化系统常用功能模块 企业管理系统,是指 ...

  6. RK3399 Android7.1修改系统默认USB功能

    在device\rockchip\common\device.mk中修改persist.sys.usb.config的值,如下将USB功能默认设置为MTP(去掉ADB): ifeq ($(strip ...

  7. WinCE平台USB摄像头驱动开发

    (转载)http://tech.e800.com.cn/articles/2009/116/1257487620781_1.html 由于良好的性能.低廉的价格和灵活方便的特性,USB 摄像头正被广泛 ...

  8. 浅谈WinCE平台USB摄像头驱动开发流程

    转自http://tech.e800.com.cn/articles/2009/116/1257487620781_1.html 由于良好的性能.低廉的价格和灵活方便的特性,USB 摄像头正被广泛的集 ...

  9. 详解WinCE下USB Host驱动开发(2)

    当用户需要卸载USB Host设备驱动时,将会调用USBUnInstallDriver函数 BOOL USBUnInstallDriver();     它与USBInstallDriver类似,不过 ...

  10. 呼叫中心系统的功能有哪些?

    呼叫中心系统可以为每天需要接听大量客户来电的企业带来许多好处,可以帮助企业改善客户服务和电话销售.不管是大型企业还是中小企业使用呼叫中心系统可以更加简单的完成客户服务和电话销售工作.企业在确定了选购的 ...

最新文章

  1. windows文件名非法字符过滤检测-正则表达式
  2. linux安装vsftp教程,CentOS7 vsftp 安装与配置(视频教程)
  3. 【剑指offer】矩形覆盖
  4. 数学建模感悟:新的算法的学习
  5. 【Level 08】U06 Good Feeling L4 The surprising event
  6. 机器学习基础-朴素贝叶斯分类
  7. 利用CSkin组件设计漂亮的WinForm登录界面
  8. oracle地址已被占用,ORA-12542 TNS 地址已被占用
  9. 用友适合套打的打印机所有型号和问题
  10. 沉思录之面向对象随想
  11. 收我叫mt3完整源码,不要拿网上的来忽悠,要求前后端完整,文档工具完整,重点可演示编译成功!联系我!
  12. 【(伪)数论】洛谷1943 Local Maxima
  13. ROC和DO的双重设计:打造出支付领域的重磅产品
  14. 关于科技趋势和未来机会,这8本书告诉你答案
  15. java getday_javascript中Date对象的getDay方法使用指南
  16. 生还者+感染者+物品的轮廓颜色修改方法
  17. MySQL的文本导入load data local
  18. 大学以来到大二的自我评价
  19. 2021.04.09丨使用featurecount进行定量处理
  20. SpringMVC返回数据到页面的方法

热门文章

  1. 思维▍决定你视野和眼光的16个顶级思维模型
  2. 叶卡捷琳娜与狄德罗的故事
  3. GMQ钱包积极打造并维护区块链健康生态的发展
  4. 迁移学习与Transformer架构
  5. mysql 短文本相似度_短文本相似度比较
  6. 22东华大学计算机专硕854考研上岸实录
  7. 一到十二月英文 音标 简写
  8. 用钩子(Hook)屏蔽特殊键
  9. 自己退出微信小程序开发者权限
  10. 单片机控制12864液晶显示屏显示静态图片