摘 要:本文介绍了基于WirelessUSB LS技术的低成本无线人机接口设备的设计方法。重点阐述了WirelessUSB LS系统组成,收发器CYWUSB6932/34的工作原理,以及系统软硬件设计。此种设计方案相对于传统的设计方法具有成本低、应用简单、抗干扰能力强等特点,可以方便的扩展应用于所有支持USB接口的设备上。
关键字:WirelessUSB;DSSS直接序列扩频;CYWUSB6934;HID
引言
如今蓝牙、无线局域网、Wi-Fi无线技术蓬勃发展、WirelessUSB、ZigBee等无线个人无线电技术层出不穷。低成本的无线新产品正在瞄准产业自动控制、游戏、PC外围设备等应用领域。数据通信和无线通信芯片厂商Cypress最近发布了市场上首款价格低于2美元的2.4GHz无线电系统级芯片样片(并称未来两年内有望将价格降至1美元以下)。该芯片样片基于Cypress的WirelessUSB
LS技术,具有高度集成的无线收发器和数字基带,采用该项技术,键盘、鼠标、视频游戏控制器等无线人机接口设备(HID)制造商能够缩短产品开发时间、减少元件数目并降低系统成本,从而提高设备的可操作范围、降低功耗和缩短延迟时间。采用802.11、蓝牙和ZigBee组建无线网络,需要高性能的处理器和额外的ROM或闪存来处理组网带来的大量额外开销,同时伴随着较高的功耗,但鼠标、键盘、游戏手柄等设备并不需要复杂的网络,相反,这些设备需要的是简单、快捷、廉价的点到点或多点到多点通信。WirelessUSB并非联网解决方案,因此没有相关成本或功率开销,支持USB的即插即用,无需驱动程序和标准/认证过程,使用全球通用的2.4GHz
ISM频段,通信距离高达10m,平均延迟时间小于4ms,采用数据驱动的工作方式,不发送数据时则自动进入"挂起"状态,休眠电流为1
A,电池寿命可达6到9个月,可连接8个设备,即便在复杂的无线环境下,上百个无线USB设备也可同时使用,为众多应用提供了剪断连线、自由移动的可能。目前将一个USB设备以专用无线方式与主机相连,都需要通过一个连在USB端口上的专用无线收发器,而每种USB外设的收发器各不相同。如果WirelessUSB技术成为标准,那么只要在一个USB接口上插一个WirelessUSB收发器,就可以支持任何无线USB设备,而不必再使用各自不同的专用收发器。相对于蓝牙和ZigBee技术过于复杂且成本昂贵,WirelessUSB价格低廉、应用简单,
已经成为点对点和点对多点的短距离无线系统的事实标准。
WirelessUSB LS系统
WirelessUSB LS 提供了一种低成本的无线人机接口设备解决方案,适用于鼠标、键盘、游戏手柄和操纵杆等PC外设,取代目前基于27MHz的传统的无线人机接口解决方案。一个WirelessUSB
LS系统包括一个WirelessUSB LS Bridge和至少一个WirelessUSB LS HID(human interface
device 人机接口设备)。而主机PC完全不用控制无线的连接,WirelessUSB LS设备相对于主机的连接和一个有线的USB设备完全相同,因此在主机上不用针对WirelessUSB
LS系统设备额外增加软件驱动。
WirelessUSB LS系统设备分为纯发送设备和发送接收设备两种,分别使用Cypress公司出品的CYWUSB6932/34集成电路芯片。WirelessUSB
LS系统根据使用的设备不同可以分为WirelessUSB LS 1-Way系统和WirelessUSB LS 2-Way系统两类。
WirelessUSB LS 1-Way系统
WirelessUSB LS 1-Way系统中每个HID设备都装有一个WirelessUSB LS纯发送设备。与PC主机相连的Bridge装有一个WirelessUSB
LS发送接收设备,如图1,主要针对强调简单发送的人机接口设备的应用,例如鼠标、键盘。
图1 WirelessUSB LS 1-Way系统(略)
WirelessUSB LS 2-Way系统
WirelessUSB LS 2-Way系统区别于WirelessUSB LS 1-Way系统,每个设备都装有一个WirelessUSB
LS发送接收设备,如图2。这样就允许HID设备接收Bridge发送的数据和指令,主要针对强调双向通信的人机接口设备的应用,例如游戏震动手柄、键盘、玩具等。
图2 WirelessUSB LS 2-Way系统(略)
当然,工程师们也可按自己的设计要求设计网络,一部分为1-Way系统,另一部分为2-Way系统。
CYWUSB6932/34介绍
CYWUSB6932/34是CYPRESS公司最新推出的低成本高集成2.4GHz直接序列扩频(DSSS)射频片上系统(SOC)。其中CYWUSB6932为纯发送型号。CYWUSB6934为发送接收型号。CYWUSB6932/34提供了完整的针对WirelessUSB
LS的串口SPI到射频发射的调制解调方案。其主要特点:(1)该器件工作在ISM(工、科、医公共频段)频段(2.4GHz~2.483
GHz) ;(2) 90dBm接收灵敏度;(3)高达0dBm输出功率;(4)10m以上的全方向传输范围;(5)数据传输率达62.5kbits/sec;(6)SPI微机接口,支持数据传输速率高达2MHz;(7)直接序列扩频可设置的基带检波器;(8)静态电流低于1
A;(9)工作电压范围:2.7V~3.3V。
内部结构及工作原理
CYWUSB6932/34内部集成了串行数据接口,串并/并串转换器,一个2.4GHz的射频收发器,一个高斯型的频移键控调制解调器(GFSK
modem),一个数字基带。射频和基带部分都可以很灵活的设置。49个扩频编码可以分别调制到78个1MHz间隔的频率上去,从而理论上可以容纳3822个独立的频道。如图3为CYWUSB6932/34的内部结构模块图。
图3 CYWUSB6932/34的内部结构模块图(略)
DSSS直接序列扩频
直接序列调制就是载波直接被伪随机码序列调制。在一般情况下调制方式可以是调幅、调频、调相和其它任何形式的振幅或角度调制。在发射机端,要传送的信息先转换成二进制数据或符号,与伪随机码(PN码)进行模2和运算后形成复合码,再用该复合码去直接调制载波。通常为提高发射机的工作效率和发射功率,扩频系统中一般采用平衡调制器。抑制载波的平衡调制对提高扩频信号的抗侦破能力也十分有利。
图4 10位PN内码(略)
如图4所示为10位PN码的示意图。(图中的10位PN码仅仅是为了示例作用,WirelessUSB LS系统使用32位或64位PN码)这类码序列最重要的特性是具有近似于随机信号的性能。因为噪声具有完全的随机性,也可以说具有近似于噪声的性能。但是,真正的随机信号和噪声是不能重复再现和产生的。我们只能产生一种周期性的脉冲信号来近似随机噪声的性能,故称为伪随机码或PN码。
PN码相对要传输的数据有更高的频率,扩展了信号的频带。如图5所示,具有较宽频带的DSSS信号波形与窄频带的传统射频信号比较,宽的频带允许信号功率低于噪声门限,而不会失去任何信息。从而DSSS信号可以有效工作在噪声环境且不受来自传统窄带信号干扰的影响,能够在现有的802.11和蓝牙网络中稳定地工作。
在接收机端,使用本地产生与发射机端完全同步的PN码对接收信号进行解扩后经解调器还原输出原始数据信息。只需变换本地的PN码就可以区分出不同的PN码。这个过程可以滤除空间、人为的噪声,即使1位或几位数据在传输中丢失,利用器件内建的统计技术,也可以还原出原始信号而不必重发。
图5 信号带宽(略)
自相关性
所谓自相关性是信号与它自身相移以后的相似性。PN码需要有较好的自相关性,从而在接收端准确的比较接收到的PN码和自身的PN码。例如用“1010”作为PN码,相移过程(1010-0101-1010-0101)中接收端可以在两个时间位置准确解扩。而使用"1001"作为PN码,将只有一个时间位置可以准确比较。WirelessUSB
LS系统使用有很好自相关性的PN码。
互相关性
扩频码序列除自相关性外,与其他同类码序列的相似性和相关性也很重要。换言之互相关性就是独立的PN码之间的差异大小。如果PN码有很低的互相关性,信号就不容易发生串扰。例如使用"1001"和"1100"作为PN码,如果"1100"相移变为"1001",接收端将错误的检测其与"1001"相同。而使用"1001"和"1011"作为PN码,无论如何相移也不会出现错误。WirelessUSB
LS系统使用有很低互相关性的PN码。
GOLD码
由于扩频占用更宽的频带,浪费了有限的频率资源。然而,所占用的频带可以通过多用户共享同一扩大了的频带得到补偿。WirelessUSB
LS系统使用GOLD码集作为PN码,从而使多个设备同时在一个频率下通讯,而不发生干扰。GOLD码具有很高的自相关性和很小的互相关性。在CDMA(码分多址)系统中,GOLD码集可作为理想的PN码。
WirelessUSB LS系统使用32位和64位GOLD码。使用32位GOLD码时,传输速率可达32Kbps。使用64位GOLD码时,传输速率为16Kbps,但数据容错能力更高。
FDMA
WirelessUSB LS系统不仅使用CDMA技术还使用FDMA技术来实现多址。WirelessUSB LS系统将2.4GHz
ISM频带分为79个子频道。WirelessUSB LS系统设备可以载波到独立的子频率上或使用独立的PN码扩频传输数据。除非两个信号使用同一频率和同一PN码,否则不会发生干扰。信号A和信号B使用相同的GOLD码,但是载波到不同的频率。信号C和信号D使用相同载波频率,但是使用不同的GOLD码,它们之间都不会发生干扰。理论上,WirelessUSB
LS系统在同一时间、空间下支持上百个设备工作。
频道选择过程
两个WirelessUSB LS设备要想通信,必须拥有相同的频率和PN码对。分配适当的频率/PN码对的过程称之为绑定。WirelessUSB
LS1-Way系统支持两种方式的绑定:基础绑定和半自动绑定。
基础绑定:用户为设备手动选择频率和PN码。推荐在Bridge设备上安装一个LED,来显示Bridge和HID设备之间通讯情况。当通讯受到干扰而中断时,可以重新设置一个新的频道。
半自动绑定:这种绑定特点是绑定过程的开始是由用户手动控制的,而绑定过程中选择频率和PN码的过程是自动完成的。这个过程是HID设备和Bridge设备进入绑定工作模式,此时他们的频率和PN码都变为统一预设初始值,由HID设备向Bridge设备发送一定数量的绑定包,绑定包含有新的频率和PN码值;之后HID设备切换到新的频率和PN码值,发送一定数量PING包;这样HID设备不断的在发送绑定包和PING包状态下切换,直到退出绑定模式。BrIdge受到绑定包,就把频率和PN码设置为绑定包中相应的内容,接收PING包,如果收不到,重新接收绑定包,预估在一段时间内收不到PING包,绑定失败。
数据交换过程
在WirelessUSB LS 1-Way系统中,由于没有应答机制,HID无法通知Bridge是否正确收到数据。因此通过发送冗余信息来提高数据的可靠性。这在存在多个HID的网络环境下,显得尤为重要。因此每个数据包都要包含一个定序字段。Bridge根据此字段确定接收还是抛弃冗余的数据包。
包结构
绑定包 绑定包用在半自动绑定过程中,绑定包包含以下三个字节:
Channel PN Code Checksum
其中Checksum为效验字。
PING包 PING包用在半自动绑定过程中,包含下面的一个字节:
0x5A
数据包 数据包被用在数据交换过程中,包含至少以下三个字节:
Data Byte 1 Sequence ID Checksum
或者包含多个连续的数据字节。
应用设计
Bridge部分
WirelessUSB LS Bridge包括一个USB控制器,提供与主机PC、笔记本及其它USB主设备的接口。此外还包括一个CYWUSB6934作为收发器与HID进行无线通讯。WirelessUSB
LS Bridge成为一个无线接口设备与USB接口设备之间的桥梁。
硬件设计
如图6为WirelessUSB LS Bridge典型应用电路图。
图6 Wireless USB LS Bridge电路图(略)
这里使用了CYPRESS公司低成本低传输速率enCoRe系列的USB控制器和CYWUSB6934。CYWUSB6934的电源从USB接口经过低压差线性稳压器LDO稳压后获得。enCoRe系列的USB控制器突破性的实现了内部晶振的集成,不再需要外部晶振和分立元件;其内部有两个数据缓冲器,因此可以同时支持多达四个有效连接到同一个Bridge。作为低速USB控制器,每次传输最多8个字节,每次传输间隔不小于10ms。当PC主机命令Bridge进入低功耗模式,enCoRe通过将PD管脚拉低,可控制CYWUSB6934进入睡眠模式,同时命令CYWUSB6934周期扫描唤醒事件,有事件发生,enCoRe将向PC主机发送USB唤醒申请;当PC主机命令Bridge退出低功耗模式,enCoRe将PD管脚拉高,CYWUSB6934恢复正常工作模式。
软件设计
Bridge设备的软件设计主要针对管理HID设备发送来的数据的接收。根据具体应用有所不同。主要分为以下三方面。
接收任务(Receive Task)
接收任务指导协议任务去接收接收数据包。当一个数据包到来,接收任务增加一个接收事件到事件序列中,并在数据包缓冲池中开辟适当大小的包缓冲区,以供存储数据包。如果数据包是坏的,就舍弃掉。
协议任务(Protocol Task)
协议任务是负责处理事件序列中的事件,分解数据包,执行数据交换过程。
USB服务任务(USB Service Task)
USB服务任务负责管理enCoRe控制器和主机PC之间的USB接口。USB服务任务收到来自于主USB接口的命令,执行相应的任务,反馈给主USB接口。
HID部分
WirelessUSB LS HID包括一个微控制器(例如的德州仪器的MSP430系列单片机),完成不同HID的特殊功能的需要(如鼠标、键盘),同时完成全部的WirelessUSB
LS的协议功能。此外还包括一个CYWUSB6932纯发送器与Bridge进行无线通讯。
硬件设计
图7为WirelessUSB LS HID典型应用电路图
图7 Wireless USB LS HID电路图(略)
这里指一个通过电池供电的系统,MCU接收鼠标、键盘的数据通过串口传送给CYWUSB6932,并控制其将数据无线发送出去。MCU还可以通过控制CYWUSB6932进出睡眠模式来实现低功耗。当MCU检测到鼠标、键盘的动作就唤醒CYWUSB6932发送数据给Bridge。没有事件发生时,MCU就控制CYWUSB6932进入睡眠模式,从而实现电池寿命的最大化。
软件设计
HID设备的软件设计主要针对不同外围设备的应用。主要有以下两方面。
应用处理任务(Application Proceess Task)
应用处理任务定义HID的特殊功能。例如对于键盘,应用处理任务就是实现对键盘按键的扫描;对于鼠标,应用处理任务是实现与鼠标上光电传感器的数据通信以及检测鼠标按键的活动;对于游戏手柄,应用处理任务则是处理模拟信号到数字信号的转换,以及检测按键的活动。所有的无线通讯数据都是来源于应用处理任务。
协议任务(Protocol Task)
协议任务是负责处理应用处理任务中获得的事件,分解来自缓冲区数据包,执行数据交换过程。
结束语
基于WirelessUSB LS技术的低成本无线人机接口设备设计方案具有性价比高,应用简单,具有低功耗睡眠模式功能有效延长电池寿命,抗干扰能力强,比其他基于射频的无线信号更稳定等优点。与蓝牙、Zigbee等其他同类无线技术相比,WirelessUSB技术提供了以更低成本普及USB无线通信的可能性。不久的将来,主板厂商能将这种无线USB芯片直接嵌入主板中,这样甚至就不再需要收发器了。
|