最新消息:

BM88(带天线)参考设计向导

BM88 wkadmin 2464浏览 0评论

BM88参考设计向导

BM88外围参考设计完整版:

 

Pin1接地

Pin2接vbat,此电容不可以太大,容易导致断电不干净。

Pin3通过40K左右电阻上拉到vbat。如果接到host I/O上,就可以通过改脚来给模块断电和上电,拉低断电,拉高上电,拉低和拉高之间推荐时间间隔超过50ms。

pin22 接地

pin24 接天线

Pin7 wakeup脚,可选连接host I/O

Pin9 状态指示脚,可选连接到host I/O,一般不需要。如果需要知道模块已经有手机在连接了(也可以说BM88被手机占用了)的话,需要连接改脚。Pin9拉低表示设备已经被手机连接,拉高说明手机已经释放连接。如果使用了deep sleep mode的话,该脚最好也要连接。

Pin10 连接状态指示脚,必须连接到host I/O,下文会更加详细的描述改脚在不同的功耗模式下的功能。一般的理解为:当pin10为L的时候,host MCU可以向模块发送数据,其他时候不能发送数据。

Pin13 uart tx 必须连接到host I/O

Pin14 uart rx 必须连接到host I/O

pin15
配置模式使能脚,拉低进入配置模块, 可选连接到host I/O,具体操作时序要求参考文档《Application Note of BM88 Module》

pin16
drop link脚,拉低改脚可以强制断开当前的蓝牙连接,拉低有效, 可选连接到host I/O,具体操作时序要求参考文档《Application Note of BM88 Module》

pin19 boot脚,拉高改脚,模块进入bootloader模式,默认拉低。 可选连接到host I/O, 下文会更加详细的介绍改脚功能

pin18 可选用于指示设备是否正常工作,一般可以用于故障检测,在模块正常启动后,会拉低改脚。具体见AT command里面对Y的command说明。

Pin17 可选用于Rx空闲状态检测。当host MCU发送很大的数据,超过了我们单包的限制(511byte)的时候,只能分多次发送,但是什么时候可以发送,中间间隔多长时间,就可以用pin17来检测,当模块将串口数据正发往手机端的时候,改脚被拉高,当数据发送完成,改脚拉低。

pin21,目前没有功能

 

BM88 power on flow and state transition.

 

BM88是支持串口(只支持串口)透传的蓝牙双模模块。支持AT command的模式和透传模式

  1. 透传模式

    当蓝牙连接上后自动进入透传模式

  2. AT command 模式

    当蓝牙没有连接上的时候(PA4为高),是AT command的模式,在该模式下,可以发送AT command进行参数配置。具体支持的AT command以及相应的格式请参考文档:《Application Note of BM88 Module》。

    在未连接的时候自动进入AT command模式的功能是可选开关的。BM88同时还支持pin15脚拉低进入config模式,在该模式下可以发送AT command进行参数配置

    在未连接的时候,支持AT command格式,因为在未连接的情况下也可能进入低功耗,如果是2或者3的sleep mode的话,AT command无法接受,所以实际上安全的AT command的时间是在开机后的40s的时间,或者是断开连接后的10s的时间。

BM88睡眠模式(AT COMMAND 可配置睡眠模式)

当模块超过10s没有任何数据交互的时候,模块会进入睡眠。BM88支持三种睡眠模式:

sleep mode    该模式下,BM88可以被串口唤醒,也可以被蓝牙数据唤醒。在此种睡眠模式下,pin9脚只表示蓝牙是否连接上。Host MCU端每次要发送数据的时候,只需要先探测pin9脚,如果是低的话,则可以发送数据(这里指的是透传数据,不包含AT command)。(默认支持这种睡眠模式)。

Deep sleep mode 该模式下,BM88会进入极低功耗模式,不能被串口数据唤醒。此时如果要唤醒BM88,可以通过拉低pin7(wakeup)脚的方式唤醒(wakeup信号是下降沿有效),同时也能被蓝牙数据唤醒。是否进入该模式,由pin9/pin10来综合指示,L/H 表示手机已连接但进入了低功耗,H/H则表示在待机状态下,是否进入低功耗,无法明确区分。

Mixer sleep mode 在这种模式下,如果蓝牙已经连接上,会进入sleep mode,如果是在蓝牙未连接上的情况下,会进入deep sleep mode。这种模式可以使得在未连接的待机状态下,获取更低的功耗。在连接上的时候,又可以方便通过串口唤醒模块,做到了功耗和pin脚的折衷。

 

BM88支持通过host MCU 在线升级固件

Pin19默认情况下是拉低的,如果拉高的话,就会进入升级模式。在此模式下,可以通过串口将固件刷到模块中。我们会提供串口升级的demo程序。只需要做简单的移植就可以使用了。

 

参数配置

Bm88的参数配置可以在上面提到的未连接时的AT command的模式下配置,也可以通过拉低pin15脚的方式让模块进入配置模式,然后再在此模式下通过AT command来配置。

 

透传的服务以及特征UUID

UUID支持两种模式:

UUID mode 1

uuid name properties description
49535343-FE7D-4AE5-8FA9-9FAFD205E455 transparent Service
49535343-6DAA-4D02-ABF6-19569ACA69FE 远程命令特征,用于修改一些特性。 Read/write 目前支持远程修改ble的连接参数,目的是为了降低功耗
49535343-1E4D-4BD9-BA61-23C647249616 Tx 特征 notify 发送数据(BM88->PHONE.
2902 Client configuration Read/write Configuration for enable/disable Notification .

Default is 0, 需要手机端调用api将此属性的value改成1了以后,BM88才能有效接收host MCU数据.也只有在此属性值为1的时候,PA3才会拉低,否则即使连接上也是拉高的状态

49535343-8841-43F4-A8D4-ECBE34729BB3 Rx 特征 write 接收数据(PHONE->BM88

UUID mode 2

uuid name properties description
0xfff0 透传Service
0xfff4 远程命令特征,用于修改一些特性 Read/write 目前支持远程修改ble的连接参数,目的是为了降低功耗
0xfff1 Tx 特征 notify 发送数据(BM88->PHONE.
2902 Client configuration Read/write Configuration for enable/disable Notification .

Default is 0, 需要手机端调用api将此属性的value改成1了以后,BM88才能有效接收host MCU数据.也只有在此属性值为1的时候,PA3才会拉低,否则即使连接上也是拉高的状态

0xff2 Rx 特征 write 接收数据(PHONE->BM88

转载请注明:BT + WIfi 技术交流文档 » BM88(带天线)参考设计向导

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
加载中