2.2.4 无线鼠标按键
鼠标按键采用标准开关,每个开关直接连到ATmega16 的通用输入输出(GPIO)口, GPIO被配置成输入引脚,每个引脚可以单独地选择上拉电阻,单片机检测按键操作,软件进行按键去抖处理和实现噪声抑制功能,然后通过蓝牙芯片发射出按键信息。
2.2.5 蓝牙模块发射芯片
nRF2402是单片2.4 ~2.5GHz射频发射芯片, 发射器包含频率合成器、功放、晶体振荡器和调制器 ,输出功率和信道选择很容易通过3-线接口编程实现, 在输 出功率为-5dBm时电流消耗仅10mA ,内置的ShockBurst技术以及休眠模式用来降低发送数据的电流消耗 ,以延长电池使用寿命 ,并且向pc发送的数据包也应尽可能少(取采样速率为100采样点/秒)。ShockBurst技术使用片内先入先出堆栈(FIFO)低速处理数据(10Kbps)而高速发送数据(1Mbps)。
该设计需要一个16MHz的晶体振荡器和一个外部的EPROM用来固件存储。固件将使用ShockBurst技术从鼠标发送RF数据包。其中固件必须完成下列任务:
装载地址(ADDR)和有效载荷(PAYLOAD);
计算循环冗余检查(CRC);
添加信息位(PRE);
使用ShockBurst技术发送数据包;
数据包发送完成回到休眠模式。
2.3 接收端
2.3.1 蓝牙收发芯片
接收器是将nRF2401收发芯片配置成接收模式(RX),其性能类似发射芯片,但该芯片采用Duo2Ceiver同步双通道接收技术,这样就可以实现鼠标和键盘的无线控制(在此我们仅考虑鼠标的使用)。误差控制其固件必须完成下列任务:
当nRF2401作为ShockBurst的接收器时,设置正确的地址和接收到的RF数据包的有效载荷长度;
激活RX,并设CE为高;
等待200μs后,nRF2401处于等待接收数据状态;
当有效数据包正确的ADDR和CRC信息接收到后,nRF2401去除数据包中的附加信息、地址和循环冗余检查位;
nRF2401通知MCU使DR1设置为高;
MCU设置CE为低也可能不设置为低 使芯片处于低电流模式;
MCU以一定的速率记录有效载荷信息;
当得到有效载荷后nRF2402设置DR1为低。如果CE为高则准备接收新的数据包 ,如果CE为低,则重新开始起始序列。
2.3.2 PCB天线设计
为实现2.4GHz低功耗射频器件nRF2401和nRF2402 的小尺寸、易制造和低成本特点,在PCB上选用1/4波长单极天线是一个理想的解决方案。但是如同其他天线一样 , 1/4 波长单极天线的增益会由于壳体材料、与接地面(ground p lane)接地面的尺寸以及PCB天线的宽度和厚度等参数的改变而发生变化,因此单极PCB天线的长度必须的改变而发生变化,因此单极PCB天线的长度必须优化。在本方案中,天线采用标准1.6mm材料,其相对介电常数为4.4,天线的宽度W=1.5 mm,通过计算可得到单极天线周围物质的介电常数为3.16,从而在该条件下波长为 68.9mm。在PCB基底上选用印制1/4波长单极天线的长度L=17.2 mm ,为了使得天线在 2.4GHz更容易谐振,天线的长度可适当延长,本方案中选天线长度L =22mm的类“┓”型设计,是PCB天线制作较为合理的一种方法,大大节省了PCB板的面积,同时在规定PCB板面积的条件下应保证天线的开口端和接地面之间的距离d尽可能大,实现信号高精度、高增益的准确发射和接收。
2.3.3 带USB接口的单片机
USB设备具有即插即用、热插拔等优势 ,鼠标采用USB接口必将成为一种趋势,因此我们采用带USB收发器的单片机CY7C637xx系列。该系列是采用高性能8位精简指令(RISC)结构,集成了USB串行接口引擎(SIE)的单片机 ,其内置了时钟振荡器、计时器、可编程电流驱动以及在每个I/O口线上的上拉电阻,可以用极少量的外部元件和简单的固件编程实现高性能低成本的人机交互设备(HID)。
软件部分对接收的RF数据包进行译码,并经过处理转换为符合鼠标USB协议的数据包格式送到PC机,以及完成为实现鼠标功能所需的固件的编写。当USB器件第一次连到总线,总线供电,D-的上拉电阻报告集线器连接一低速(1.5Mbps)USB器件,主机识别这个USB器件,总线重启。主机接收到器件的描述符后赋予器件一个新的地址,这样器件和主机通过这个新的地址进行数据通信。
2.4 节能考虑
单片机可通过软件选择省电方式:闲置方式停止CPU的工作 ,而SRAM、定时 /计数器、SPI口及中断系统继续工作;掉电方式保留寄存器的内容,但停止晶振,终止芯片的其他功能,直至下一次外部中断或硬件复位。蓝牙芯片则通过配置特殊寄存器,可使芯片工作在ShockBurst无线方式,并支持休眠模式和掉电模式,可实现数据的超低功耗传输,因此,对于用电池供电的鼠标器发射端无疑延长了其使用时间。
3 结语
本文详细讨论了基于微加速度传感器的MEMS无线鼠标的软件、硬件设计和系统构成,并给出了Matlab环境下系统的simulink模型和算法,模拟的结果证明:无线鼠标的设计是合理可行的,文中提出的二次积分近似算法是简捷有效的;文中讨论的二维鼠标的设计技术,能为进一步研究多维多功能的MEMS输入设备打下很好的基础。本文选择硬件时,充分考虑了系统向多维和多功能扩展的可能性,可以在此二维鼠标的基础上再添加一些器件,构成功能更多更完善的MEMS输入设备,例如:可以再添加一个微加速度传感器来感测Z轴的加速度,从而实现三维鼠标,可以实现对三维立体旋转等的控制;也可以利用nRF2401射频收发器内置的多点通信控制的特性,再多增加几个接收模块,可以同时控制多台主机,或多增加几个发射模块,用几个输入设备来控制同一台主机,以适应不同应用场合的需要。
另外,基于MEMS技术的无线鼠标很容易向三维空间使用拓展,这样就能为很多场合,尤其是作演讲时提供很大的方便,具有很大的应用价值。