T1公司推广的MSP430系列微控制器广泛应用于高性能低功耗接口设备,如无线鼠标、键盘等。本文介绍的无线鼠标方案采用MSP430Fl222MCU作为控制器,用AvagoTechnologies公司的超低功耗ADNS-3040光传感器进行采样,使用T1公司的TRF790027-MHzRF射频模块发送/接收信号及USB模块完成通讯。
方案简介
设计无线鼠标方案时,须充分考虑如何降低功耗以延长电池的使用寿命。MSP430Fl222具有引脚少(仅有28引脚)、价格低、软件编程简单、功耗低等特点,MSP430有两种工作模式,活动状态电流为250μA,深睡眠状态电流仅0,1μA,深睡眠模式时系统整个功耗小于4mA。
当检测到鼠标有动作时,MSP430处于活动状态,系统在80ms内完成数据处理,包括收集X-Y轴位移的光传感器数据、解码单字节数据线、开启传输模式、检测滚轮Z位移的运动以及扫描按钮状态等)80ms后系统自动进入深睡眠模式,直到再次检测到光传感器或按钮的动作。
鼠标发射模块硬件原理
硬件结构图如下图所示,
电路原理图如下图所示。
MSP430Fl222微控制器超低功耗MCU通过不同性能的外围设备组成不同功能的应用模块,本方案使用五种低功耗模式优化,以达到在便携式设备中延长电池寿命的目的。MSP430Fl222为16位的RISC结构、16位寄存器、16位定时器、10位AD数据转换控制(DTC)功能,22个通用I/0口及UAR丁和SPI两种数据传输模式,片内数字控制振荡器(DCO)从低功耗模式唤醒到活动模式时间小于1μs。
1.晶体振荡器及定时器 在MSP430活动模式下,内部DCO基准由连接在外部的32.768kHz晶振提供,当检测到鼠标动作或按键动作时产生中断,系统从深睡眠模式中唤醒,DCO在缺省模式下共用CPU和定时器A的4MHz晶振。16位定时器模块作为周期性中断信号的基准时间,在活动模式下,外部32.768kHz晶振(ACLK)驱动看门狗每250ms产生一中断时间信号,检测鼠标滚轮的位置以及对不活动状态进行倒计时,当倒计时时间一到,MSP430关闭CPU、时钟及所有外部设备)MCU进入深睡眠模式。
2.信号接口 MSP430Fl222徽控制器内部有US-ART模块,可设置成UAFIT或SPI模式。ADNS-3040光传感器通过SPI模式与主控制器通讯,UART模块作为主SPI设备初始化鼠标传感器的活动状态及提供鼠标传感器的主时钟。
3.调试接口 MSP430通过其内部JTAG接口支持在线调试和实时更新,JTAG信号线连接到无线鼠标主控制板上,与PC机连接和通讯很方便。
4.通用I/0口 MSP430输入/输出口既可以作为按键中断的检测端也可以作为系统其它设备的使能端,如QEP编码器使能和输出、鼠标滚轮光学LCD、光传感器关闭、传感器芯片选择等。
ADNS-3040光传感器
ADNS-3040是超低功耗光学导航传感器,具有低功耗结构和自动检测电源管理模块,能很好地应用在要求电池寿命长和电源灵敏度高的设备上,如无线输入设备。ADNS-3040对高速运动检测可达到20ips,片内集成了晶振及LED驱动电路)减少外围电路。ADNS-3040传感器包含ADNS-3120-001透镜、ADNS-2220夹子和HLMP-ED80LED指示灯,它们构成完整的鼠标运动检测系统,光传感器通过对寄存器编程与四线接口的SPI方式通讯。
ADNS-3040工作原理基于光学导航技术,通过光学器件获得连续运动的方向和角度进行位置的测量oADNS-3040包含映象捕捉系统(IAS)、数字处理器(DSP)和四线通讯接口,IAS通过透镜和照片系统获取细微映象捕捉,DSP处理器通过计算任一标准鼠标驱动程序的?
X和?Y值进行准确计算,IAS捕捉的映象通过DSP计算处理确定运动的方向和距离。
微控制器通过与光传感器接0通讯读取AX和AY数值,然后转变成USB、RF或PS2信号传输到PC机或游戏机控制端。
27MHz的TRF7900射频发射模块 MSP430通过标准三线SPI通讯接口与TRF7900射频模块进行通讯,两个通用I/0口用于TRF7900使能,一端口使能芯片选择(Chipselect),另一端口用于反馈调节器的数据(FSKData),示意图如下图所示。
鼠标滚轮和按键为检测鼠标的动作或连续运动,鼠标机械设备包含滚轮和不同组合的按键。滚轮在使用过程中可以看成是按键动作)本方案共选用六个按键即左、滚轮(中间),右、前、后及复合键,基于主PC机鼠标的操作,左、滚轮、右按键可以作为与/或功能键使用,复合键用于鼠标与PC机终端通讯。所有按键通过连接l0Ok?上拉电阻连接到MSP430的通用1!0引脚,以边缘触发有效。按下或释放按键时CPU产生中断,GPIO引脚输入的逻辑电平以VCC(释放)和GND(按下)两种状态形式触发,当CPU检测到任一按键的上升沿或下降沿时,微控制器将检测到该按键有效状态发送到上位机进行通讯。
滚轮使用标准双通道积分编码芯片(包含两相位光传感器)和光学LED检测每一角度的不同位置。MSP430内部有一积分编码脉冲(QEP)计数器,根据鼠标滚轮运动方向来增加或减少QEP值,示意图如下图所示。
USB接收模块
原理图如下图所示。
TRF790027MHzRF接收模块采用USB接收方式接收TRF90027MHz信号,被解调的RF输入信号以异步数据流方式通过USB接收模块传送到PC。该人机接口设备为双通道工作频率27MHz的RF接收模块,从8个分散的通道选择接收的频率,内部集成了锁相环、RF混频器、模拟踞形波滤波器、调谐电路等组合电路。
以12MHz晶振作为系统工作频率,对鼠标的两通道通过IIC总线编程接收八个频率,由另一6MHz晶振频率作为USB微控制器的时钟源,系统优化设计后能同步接收每通道5kHz共lOkHz的频率信号,通过接收信号强度(RSSII检测寄存器读取IIC总线数据,决定每一独立通道信号的强度。读取的RSSI数据与数据包错误比率(PER)利用软件判断接收模块发射的信号是否由于系统供电不足或超出系统量程导致信号太弱,或者用户在使用范围内每个通道有太多的噪音。
CY7C63743的USB微控制器CY7C63743模块作为一个完整微控制器的USB方案,处理由TRF7900接收芯片发射的数据包并解码,向PC机鼠标驱动模块显示鼠标信息。
鼠标发射模块软件原理软件结构流程图如下图所示。
MSP430低功耗.工作模式MSP430有LMPO~LMP4五种工作模式,其中LMP4为深睡眠模式,CPU、外围设备和内外部时钟全部关闭,系统功耗仅0.1μA,只有外部中断可以唤醒深睡眠模式,且唤醒时间小于1μs,有外部中断时CPU被唤醒,对中断源按键、滚轮或运动进行相应的处理。MSP430在80ms时间里保持活动状态,然后自动进入深睡眠状态,等待通过光传感器或按键产生的下一次中断。鼠标滚轮运动只在活动模式下更新检测,一旦检测到鼠标滚轮有变化,微控制器保持5s活动状态模式,等待检测一连串的滚轮达动。
ADNS-3040光传感器模块软件驱动MSP430软件设计结构包含了完的ADNS-3040光传感器驱动·模块)利用MSP430Fl222面包板上的USART模块作为主控SPI输出控制光传感器。
TRF7900发射模块软件驱动 MSP430软件设计结构包含了完整的TRF7900发射模块的软件驱动,利用MSP430Fl222面包板上的USART模块作为主控SPI输出控制光传感器。
鼠标滚轮解四考虑系统功耗对供电电池寿命的影响,仅在活动模式下打开光学LED读取QEP状态下的系统电流值,活动模式下光学LED在40μs~2ms之间进行脉冲调制读取鼠标滚轮位置,下图为鼠标滚轮解码逻辑图。
米勒编码及循环冗余码校验的可靠数据传输
系统以lOKbps串行数据传输,每位传输速率lOOμs,在教据传输过程中,从无线鼠标端传输到PC接收模块的每一个数据包都有可能由于传输过程中的干涉或噪音干扰被中断。包含8位CRC值的MSP430微控制器产生的数据包存储于发送数据包的末端,确保无线鼠标接收模块解码数据和向鼠标驱动模块发送数据的完整性。因为数据通过RF传输,本方案采用米勒编码原理。
在无线通讯领域,米勒编码广泛应用干二进制和文本文件的编码。二进制数据用于形成两个电平信号,如逻辑电平0表示数据信号电平无变化直到另一个逻辑电平0出现,传输数据的第一位电平发生改变,逻辑电平1表示传输数据的中间位发生变化原理如下图所示。米勒编码主要用于音频信号编码,编码频谱包含的低频能量比传统反向不归零解码方法低且高频能量比双相信号编码低,米勒编码也广泛用于延时编码领域。
上一篇:基于SPCA1527A的便携式现场执法记录仪的设计
下一篇:在节电设计中掉电状态MCU的复位唤醒速度
推荐阅读最新更新时间:2024-03-16 15:59