多功能USB组合设备的结构设计

多功能USB组合设备的结构设计,第1张

  引言

  随着USB通信技术的不断发展,USB接口得到了广泛的应用。单一功能的USB设备,如USB键盘、USB鼠标、USB调制解调器等,已经不能满足人们对USB设备功能的要求。多功能的USB设备正不断涌现出来,常见的有带话筒的USB摄像头、USB可视电话等。因此,研究多功能USB设备对于满足人们对新型USB设备的需求是十分必要的。

  针对鼠标和键盘等人机接口设备存在功能单一的缺点,不能完全满足现代社会的需求,提出了一种多功能USB设备的设计方法。多功能USB设备是一种复杂的USB设备,它虽然只有一个USB接口,但却具有实现多种类型设备的功能。以USB多媒体键盘编码器HT82K95E为核心,完成了两种人机接口设备的枚举过程。还对USB复合设备和USB组合设备两种基本设计方法进行了比较,并对USB组合设备的实现进行了详细的介绍。

  1 多功能USB设备的结构模型

  多功能USB设备通常是通过单个或多个USB控制器连接不同类型的设备来实现的。而在一个USB接口上实现多个设备有两种方法:一种是复合设备(Compound Device),一种是组合设备(Composite Device)。图1和图2分别给出了复合设备和组合设备的结构模型。

  

多功能USB组合设备的结构设计,第2张

 

  实际上,USB设备应该被视为不同的功能。多个功能可以被封装在一起形成一个物理设备。所以复合设备其实就是几个设备通过一个USB Hub形成的单一设备,复合设备内的Hub和与Hub相连的各个功能会分配各自的设备地址。组合设备也就是具有多个接口的设备,每个接口代表一个独立的设备,但是组合设备只有一个设备地址。

  采用复合设备方法开发多功能USB设备时,其开发过程同开发两种不同类型的USB设备相同,开发难度较低。本文重点介绍组合设备的设计方法,并举例加以实现。

  2 组合设备的设计方法

  2.1 组合设备的特点

  USB组合设备是指具有多个接口且接口间相互独立的USB设备。一个USB设备只有一个设备地址,可以将不同的功能与不同的接口对应,来开发多功能USB设备。

  组合设备采用一个USB控制芯片,同时接A设备和B设备。主机可以同时与A设备和B设备通信。

  2.2 组合设备的描述符结构

  

多功能USB组合设备的结构设计,第3张

 

  如图3所示,以两个接口的组合设备为例,来说明组合设备的描述符结构。一个设备描述符下有一个配置描述符,一个配置描述符下可以有多个接口描述符,分别对应不同的设备。每个接口描述符下又包含多个端点描述符。一个USB逻辑设备对USB系统来说就是一个端点集合。端点可以根据它们实现的接口来分类。所有的USB设备都需要实现一个缺省的控制方法。这种方法将端点0作为输入端点,同时也将端点0作为输出端点。USB系统用这个缺省方法初始化及一般地使用逻辑设备(即设置此设备)。设备可以有除端点0以外的其他端点,这取决于这些设备的实现。低速设备除端点0外,只能有2个额外的可选端点。而高速设备可具有的额外端点数仅受限于协议的定义。除缺省控制通道的缺省端点外,其他端点只有在设备被设置后才可使用。而且除端点0外,其他端点在不同接口间不能共享。

  组合设备使用一个USB控制芯片,通过控制不同的接口与不同的设备进行通信,解决了主机与组合设备内各个设备数据流的区分问题。

  3 组合设备的硬件实现

  3.1 USB接口部分

  设备采用Holtek公司的8位USB多媒体键盘编码器HT82K95E作为本系统的核心。鼠标、键盘等HID类设备为低速设备,所以该设备要能同时实现鼠标和键盘数据同PC机的双向传输,MCU首先必须具有低速的USB接口,并且支持3个端点(包括端点0)。综合考虑,选用了HT82K95E作为本系统的主控芯片。由于鼠标和键盘均属于低速设备,所以应在USB信号线上加1.5kΩ的上拉电阻

  3.2 MCU部分

  

多功能USB组合设备的结构设计,USB接口原理图,第4张

 

  USB接口部分原理图如图4所示。MCU的复位电路采用由R1和C1组成的RC积分电路来实现上电复位功能。上电瞬间,由于电容电压不能突变,所以复位引脚为低电平,然后电容开始缓慢充电,复位引脚电位开始升高,最后变为高电平,完成芯片的上电复位。HT82K95E微控制器内部还包含一个低电压复位电路(LVR)用于监视设备的供电电压。如果设备的供电电压下降到0.9VLVR的范围内并且超过1 ms的时间。那么LVR就会自动复位设备。

  应当注意的是,对于该设备的复位电路,还应加一个BAT54SW二极管,接法如图4中D1所示。如果不加D1,设备在第一次使用时能够正常复位,但在以后的使用中却无法正常复位,原因是电容中的电荷无法释放掉,而D1可以通过整个电路快速释放掉电容中的电荷。

  该组合设备采用HT82K95E USB控制芯片,通过对两个接口的管理,实现了鼠标和键盘的功能。

  

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2653110.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-13
下一篇 2022-08-13

发表评论

登录后才能评论

评论列表(0条)

保存