许多消费者每过几年就要更换一次电脑,却很少频繁地更换打印机。本文介绍的USB打印机适配器(dongle),将蓝牙技术与嵌入式USB主机技术相结合,使通过线缆连接的普通打印机具备特别的无线打印能力,而改装所需的材料费不足15美元。这种适配器允许任何具有标准USB端口的打印机与拥有蓝牙和微软Windows XP操作系统的电脑交换数据。
这种方案有许多优点。在办公环境中,外来办事的人可以通过蓝牙打印机打印文件,而不必事先申请一个网络密码登录到办公场所的LAN上。这样就可以防止访客接触到公司的机密数据。对于消费者来说,它可以使消费者在家中的任何地方打印文件,而不必有线连接PC。
在这种适配器设计中,打印机需要一个USB主机,因为它所针对的老式打印机采用的是USB外设接口。一种名为“USB On-the-Go (OTG)”的新技术能为打印机等单机设备提供主机能力,不需要主机PC。
实践证明,USB的标准应用方式是一种易用的外设接口。该协议采用一个单一的总线控制器,通常是一台PC。外设不能使用总线,除非控制器(PC)允许它们使用。甚至总线也不能发生中断,随非控制器正确地查询到总线上的外设。
在PC环境中,这种方案的效果非常好,但它不能使两个外设之间通过USB实现通讯。因此,为了能够利用USB打印机打印USB相机中的数码照片,必须启动PC,把照片从相机拷贝到PC,然后再从PC中把它打印出来。有了USB OTG,外设(如相机)就能直接与另一个外设(如打印机)通讯,不需要通过PC。
USB标准化团体“USB Implementers ForumVSPACE=12 HSPACE=12 ALT=""> Inc.”已经批准了OTG规格。该规格为支持OTG的设备提供了一种手段,使之变成一个USB主机――以前由PC承担的角色。利用OTG技术,就可能直接利用USB打印机打印具备OTG功能的数码相机中的照片,还可以把一个OTG PDA与一个OTG手机相连。OTG具有双重角色器件(DRD)功能既可以充当主机,也可以充当外设。主机与外设DRD甚至能够通过主机导航协议(HNP)互换角色。
让嵌入式器件具备主机功能
几乎所有的台式机操作系统都含有USB主机堆叠――USB框架和驱动程序,供操作系统与USB外设通讯。但许多嵌入式应用缺乏这种功能,所以必须创建USB主机堆叠,使嵌入式器件具有充当USB主机的能力。
具有流行操作系统的PC可能有几百个甚至几千个USB驱动程序,它可以从中选择合适的程序来支持USB器件。由于嵌入式产品资源有限,所以几乎不可能支持如此广泛的器件。因此,OTG规定,DRD必须为它所要支持的每个设备或每类设备提供驱动程序。这就是所谓的目标外设列表(TPL),一般包含数量不多的设备或者少数几类设备的驱动程序。
当把一个USB外设连接到一个充当主机的OTG设备上时,OTG设备将从它的TPL中选择一个相应的驱动程序。如果找到了,外设就会被列举出来并启动一项任务;如果找不到相互匹配的驱动程序,外设就不会被列举出来。如果外设不能被列举出来,而且外设也是一个OTG DRD,则两个设备将尝试利用HNP来交换彼此的角色。
这里所讨论的蓝牙/USB打印机适配器可以为任何USB打印机提供无线打印能力。适配器内部的嵌入式系统必须充当USB打印机的USB主机,并把蓝牙射频接收到的数据传送给打印机。
加上一个包含蓝牙兼容软件堆叠的外部闪存ROM,蓝牙单芯片射频、基带和集成式微处理器解决方案就构成了一个面向无线数据和语音通讯的完全适用的系统。HCRP,以及与打印机和所有蓝牙固件功能连接所必需的接口,位居蓝牙芯片的闪存之内。
不需要费钱费力地增加另外一个微控制器,而且所有蓝牙和打印处理工作都能在该芯片上完成。利用蓝牙芯片的特点,可以对设计进行定制,以满足各种打印机的要求。蓝牙芯片允许应用代码与蓝牙堆叠连接,不必经过蓝牙SIG的再度认证。
为了进一步降低USB打印机适配器的设计成本,固件可以通过ROM写入芯片,也可以采用额外的功能来减少所需的RF元件(除天线以外)。
老式打印机采用上述技术就能具备蓝牙能力。尽管蓝牙打印机越来越受欢迎,但上述适配器将使老式打印机焕发青春。另外,这种解决方案可能集成到新的打印机设计之中,以把低成本蓝牙技术应用于这些打印机之中。
DeVerl Stokes是美国赛普拉斯半导体的首席软件工程师,Kristine Overlaur是英国CSR的技术销售经理。
采用USB打印机适配器改装普通打印机,材料费不足15美元。