基于HID规范的智能遥控器中的设计1
USB(Universal Serial Bus,通用串行总线)具有高速度、低成本、低功耗、即插即用和使用维护方便等优点,随着USB应用领域的逐步扩大,USB 设备现在不但是计算机连接外围设备的标准输入/输出,它也成为智能电视连接外围设备的标准输入/输出。HID 是Human Interface Dvices 的缩写,即人机接口设备, 是USB 协议中最早提出并支持的一种设备类,也是应用最广泛的一类USB 设备, 典型的HID 设备有键盘和鼠标等。USB 串行总线规范专门定义了HID规范,只要设备符合HID 规范,就是HID 设备。操作系统自带了HID 的驱动程序,用户无需去开发很麻烦的驱动程序,这使HID 设备能够与操作系统方便快捷的建立通信。
这些优点使得HID 设备在智能电视领域也得到了越来越广泛的应用,本论文就是研究基于HID 规范的六轴体感游戏手柄应用于智能遥控器中的设计与实现。
1 工作原理
智能遥控器包括两部分———遥控器和RF 接收器(Dongle),遥控器端和DONgle 端采用射频通信协议进行通信;而Dongle 端通过USB 接口与电视机连接, 它们之间通过USB协议进行通信。依据HID 规范,在Dongle 端模拟出一个具有输入和输出功能的HID 体感游戏手柄, 与电视机通过USB协议进行通信,从而将遥控器和体感游戏手柄合二为一。
Dongle 端与遥控器端对码成功之后,它们之间就建立了通信。遥控器中体感游戏手柄功能的开启和关闭主要是通过电视机的反馈信息实现的。按下遥控器端的体感开关键时,电视机收到信息立即发出反馈信息,使遥控器端的体感开关指示亮,体感游戏手柄功能开启,用户可用遥控器体验体感游戏, 电视机会根据游戏的进度调用遥控器中的传感器模块、震动模块、Audio 模块,实现遥控器和电视机之间的互动;再按下遥控器端的体感开关键时,电视机发出反馈信息使遥控器端的体感开关指示灯灭,体感游戏手柄功能关闭。
体感游戏手柄的操作方式主要是按键和特殊动作。在本系统中, 体感游戏手柄所需的按键与遥控器本身的按键复用,特殊动作的数据转换成相应的射频键值,当有特殊动作操作时,以按键键值的形式发送出去。另外,体感游戏手柄特殊动作的功能可以用于操作智能电视机的TV 部分, 在体感游戏手柄模式下,遥控器通过计算传感器的数据,检测出向左右甩动和向前甩动一下、两下4 个动作,可作为切换图片、音乐等使用。比如向右甩为后一曲,向左甩为前一曲,向前为播放暂停,向前快速两下为退出。
2 系统组成
2.1 硬件系统
智能遥控器有许多功能,这里主要研究体感游戏手柄功能的设计与实现。涉及到的芯片主要有六轴传感器———三轴加速计(G-Sensor)和三轴陀螺仪(Gyro)与MCU,采用的加速计是ADXL345,陀螺仪是IMU3000,MCU 是IA2E。Dongle 端采用的MCU 也是IA2E。
2.1.1 ADXL345、IMU3000 和IA2E 性能简介
ADXL345是一款小而薄的超低功耗三轴加速计,分辨率高(13 位),测量范围达±16 g。可通过SPI(3 线或4 线)或I2C 数字接口访问,ADXL345 非常适合应用于移动设备。它可以在倾斜检测应用中测量静态重力加速度,还可以测量运动或冲击导致的动态加速度。其高分辨率(3.9 mg/LSB),能够测量不到1.0°的倾斜角度变化。
IMU-3000内建了三轴陀螺仪与数字运动处理硬件加速引擎,并具有第二条I2C 接口来连接外接数字加速器,以执行完整的六轴融合算法。在应用层面上,将线性及旋转动作合并为单一的数据流。透过整合之融合算法输出,IMU-3000可减轻系统主处理器的密集运动处理演算,不须频繁读取运动感测数据,使之成为低成本、低功耗的微处理器。
IA2E是SYNIC 公司的无线音频收发芯片,包含无线射频收发模块和USB 接口模块, 其USB 模块包含一个控制端点,两个同步端点和一个双向中断端点。具有非常强的RF 抗干扰特性。无需任何软件支持即可通过I2S、USB 等接口连接到电脑、电视、MP3 等设备。
![](http://m.amcfsurvey.com/webstorage/images/display/reg.jpg)
评论