MSP430的低功耗特性在蓝牙产品中的应用
2.2 蓝牙模块
本文使用LG Innotek公司Class 2 蓝牙模块LBMx-2002,内部结构如图3所示。其内核蓝牙模块采用CSR公司的BlueCore2-Ext单片蓝牙,通过对BlueCore2-Ext的进一步封装,极大地降低了电路设计的难度。
LBMx-2002提供完全兼容蓝牙系统的数据和语音通信,向主机提供UART和USB接口,支持723.2kbps/57.6kbps数据速率及A律、μ律压缩,提供每秒8kHz采样率,双向同步串行音频接口。内部具有4MB/8MB的FLASH ROM。其协议栈采用BlueCore2-Ext HCIStack1.1v14.3,兼容蓝牙规范1.1版本。整个模块的尺寸相当小,只有12.5mm×17.5mm。
它的供电电压为3.0V~3.6V,工作电流在ACL数据传输(UART/115.2kbps)是20mA,在只有Voice时(HV3 Packet)是33mA,具体如表1所示。
蓝牙支持三种节能工作模式:HOLD(保持)模式、SNIFF(呼吸)模式和PARK(暂停)模式。在HOLD模式下,只有一个内部计数器工作。当处于HOLD模式的单元被激活,数据传递立即重新开始。HOLD模式一般用于连接多个PICONET(微微网)的情况。在SNIFF模式下,从设备降低了从微微网“收听”消息的速率,“呼吸”间隔也可以适当调整。在PARK模式下,设备依然与微微网同步但没有数据传送。工作在PARK模式下的设备放弃了MAC地址,偶尔收听主设备的消息并恢复同步,检查广播消息。这三种工作模式以PARK模式节能效率最高,依次是HOLD模式和SNIFF模式。
图4 软件流程图
通过表1可以看出?熏蓝牙建立连接后在PARK模式条件下的消耗电流最低,通过控制蓝牙的工作状态与MSP430的低功耗模式相结合,可以极大地降低系统工作电流,延长电池的使用时间。在本文的蓝牙接入装置中,通过单片机外接高频晶振、关闭频率锁定环FLL+等内部模块,将单片机的节能模式设定到了LPM3,只要保持辅助时钟ACLK活跃,就可以响应蓝牙模块通过UART返回的数据和消息。蓝牙模块建立连接后,只要没有数据传输,就将其工作模式置为PARK模式。当主设备需要再次传输数据时,需要向从设备发送退出PARK命令。从设备退出PARK模式后,即可与主设备进行数据信息交换。
表1 LBMx-2002蓝牙模块的工作电流
SCO connection HV3(1s interval sniff mode)(Master)
SCO connection HV1(Slave)
SCO connection HV1(Master)
ACL Data transfer,115.2kbps UART(Slave)master to Slave
ACL Data transfer,115.2kbps UART(Slave)Slave (Master)Master to Slave
ACL Data transfer,115.2kbps UART(Master) Slave to Master Deep Sleep Mode,Initial
ACL connection ,Sniff Mode 40ms interval,57.6kbps UART
ACL connection,Sniff Mode 1.28s interval,38.4kbps UART
Park Mode
Peak current during RF burst 32mA
33mA
67mA
67mA
60mA
56mA
63mA
20mA
50μA
4mA
1mA
0.6mA
80mA
3 蓝牙接入装置的软件实现
下面以从设备为例说明从设备的工作过程(不涉及存储器和LCD操作,主从设备之间只建立ACL数据链路)。首先单片机初始化,设置ACLK辅助时钟,设置UART0和UART1等内部模块时钟为ACLK,蓝牙模块复位;设置连接模式后,单片机进入LP
《MSP430的低功耗特性在蓝牙产品中的应用(第2页)》