新闻中心

EEPW首页 > 消费电子 > 设计应用 > iMouse多功能空中鼠标

iMouse多功能空中鼠标

作者:梁平 中国科学院上海应用物理所时间:2011-02-22来源:电子产品世界收藏

  鼠标主体端软件结构

本文引用地址:http://www.eepw.com.cn/article/117099.htm

  主体端软件结构如图7所示。

  在主体端的软件中,主要用到了μC/OS操作系统的多任务调度与任务间的通讯功能,在鼠标动作数据处理之后,通过消息队列的方式传递给RF通讯任务,RF通讯任务将此数据有效地发送给接收端电路。如图9所示。

  鼠标动作数据处理的流程如图8所示。在空中鼠标的加速度传感方案中,最为关键的是如何用软件的方法除去重力以及抖动对传感器输出产生的影响,这里首先对传感器输出的数据进行差分,所得的数据通过一定的衰减后再减掉防抖阈值,最后形成要输出的数据。

  接收端软件结构

  接收端软件结构如图10。

  在鼠标的接收这一端,无线通讯的任务流程基本与主体端的流程差不多,只是这端以接收为主,而主体端则以发送为主。同时,在有效接收到数据包后,程序将评估RF通讯双端的中心频率偏差,并对芯片进行配置修正。无线通讯的一个关键问题是如何处理好数据丢包的问题,处理不好,鼠标就会跳跃,这里,借鉴了USB协议中对数据包交错发送的控制方法与应答机制,很好解决了这个问题。

  USB控制这一块是软件中最关键的一块,这里涉及了USB协议以及HID的协议。USB的固件程序结构如图11。

  USB事件由中断进行驱动,中断发生后根据不同的中断向量对中断事件进行处理。如图12所示。如果是控制包,则向主控的进程发送一个信号,由主控进程对控制包进行分析处理。在程序的应用层,HID鼠标的数据包通过USB接口的端口1进行传输,计算机对此端口的询问间隔为10ms。

  总结与展望

  这一项目得到了完整的实施,产品原型在“时代民芯”杯电子设计大赛的决赛答辩中进行了正常的演示。

  但是由于时间的原因,还有很多值得改进的地方,一是放置桌面的常规使用方式功能还可以添加,二是灵敏度还能进一步进行调试,三是可以更换角速度器件作为传感器件,将有更好的使用体验。有了这些改进,这个产品将更加完美。


上一页 1 2 3 下一页

关键词: iMouse MEMS MXT8051

评论


相关推荐

技术专区

关闭