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蓝牙模块的工作电流ModeAveragePeakSCO
connection
HV3(1s
interval
sniff
mode)(Slave)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
SlaveACL
Data
transfer,115.2kbps
UART(Slave)Slave
(Master)Master
to
SlaveACL
Data
transfer,115.2kbps
UART(Master)
Slave
to
Master
Deep
Sleep
Mode,InitialACL
connection
,Sniff
Mode
40ms
interval,57.6kbps
UARTACL
connection,Sniff
Mode
1.28s
interval,38.4kbps
UARTPark
ModePeak
current
during
RF
burst32mA33mA67mA67mA60mA56mA63mA20mA50μA4mA1mA0.6mA80mA3
蓝牙接入装置的软件实现下面以从设备为例说明从设备的工作过程(不涉及存储器和LCD操作,主从设备之间只建立ACL数据链路)。首先单片机初始化,设置ACLK辅助时钟,设置UART0和UART1等内部模块时钟为ACLK,蓝牙模块复位;设置连接模式后,单片机进入LPM3休眠状态;当主设备通过Inquiry查询到从设备并建立连接后,单片机退出休眠模式,并修改蓝牙模块的被查询方式以及设置PARK模式的使能,随后主从设备进行数据信息交换;当没有数据交换时,蓝牙模块进入PARK模式,单片机随即进入LPM3休眠状态,以降低功耗;当数据的传输恢复时系统再退出休眠状态。图4为系统软件流程图。该蓝牙接入装置通过改变单片机和蓝牙模块的运行方式,最大限度地降低了整个装置的功耗。实验证明,其节能效果非常显著,在小数据量业务下完全可以使用高容量的锂电池实现系统的便携性、可移动性和较长的使用时间,因此具有较好的实用价值。
|