模板: Dual-mode-Bluetooth-User-Manual

来自Waveshare Wiki
跳转至: 导航搜索

产品特点

  • 双模蓝牙,彻底解决了iOS和Android设备对蓝牙的兼容问题
  • 配对后即可作为全双工串口使用,无需了解任何蓝牙协议
  • 丰富的AT指令,可以进行全方位配置
  • XBee接口,方便接入带XBee接口的设备
  • 提供iOS和Android示例源码,实现遥控小车、数据采集和监控设备等应用

开箱检测

请详细阅读完“开箱检测”后,在进行通电测试,以免损坏模块。

Dual-mode Bluetooth是一个简单易用的蓝牙串口透传模块,使用时客户不需要了解烦杂的蓝牙协议,只需要当成一个全双工的串口使用即可。

由于该Dual-mode Bluetooth是TTL电平,在与PC机通信时需要使用RS232转UART模块或USB转UART模块。这里推荐用XBee USB Adapter搭配连接PC机进行测试。

XBee USB Adapter是一个USB转UART模块,同时带有XBee接口、按键和LED,并将所有的引脚以标准的2.54mm间距引出,搭配Dual-mode Bluetooth使用时,只需将Dual-mode Bluetooth接入到XBee(注意不要接反),在通过micro USB线将Xbee USB Adapter与PC机的USB接口相连即可。

硬件连接如下图所示:

Dual-mode-Bluetooth-User-Manual01.png

当然,你也可以使用普通的USB转UART模块进行测试,如FT232 USB UART Board (micro),由于Dual-mode Bluetooth的引脚间距是2.0mm,所有还需要在配合2.0转2.54的杜邦线进行测试。

硬件连接如下图所示:

Dual-mode-Bluetooth-User-Manual02.png

连接完成,检查无误,即可接入PC机。如果原来你未安装过相应的驱动,则还需要安装相应的USB转UART驱动。选择以下适合的驱动安装即可(如果你使用的是其它USB转UART模块,这一步则改为安装对应的USB转串口驱动):

打开设备管理器,查看对应的COM。

手机扫描下面二维码下载相应的APP。其中iOS使用蓝牙BLE与模块进行通信,需要使用iphone4S及以上版本。Android使用蓝牙EDR与模块进行通信。

Bluetooth ios wsble.png Bluetooth android wsedr.png

启动APP,点击“扫描”(注意:手机需要打开蓝牙功能),大约几秒后,正常在列表中将显示相应的蓝牙设备。如果使用iOS,选择“Waveshare_BLE”设备,如果使用Android,选择“Waveshare_ERD”设备。

注意:有些Android手机需要打开APP相应的蓝牙和位置信息权限才可以正常使用。

进到下一个页面后选择“串口调试模式”。

Dual-mode-Bluetooth-User-Manual03.png Dual-mode-Bluetooth-User-Manual04.png

注意:Android手机如果支持蓝牙BLE,将扫描两个设备,注意需要选择MAC地址为00:0E:0E的设备

Dual-mode-Bluetooth-User-Manual07.png

此时,只要通过PC机的串口调试助手发送数据给Dual-mode Bluetooth,手机就能收到相应的数据。同时串口助手也将显示手机发送的数据。

注意:Dual-mode Bluetooth出厂配置为波特率115200,校验位:N,数据位8位,停止位1位。虽然Dual-mode Bluetooth可以通过AT指令设置波特率等参数(见下方),但作为从机与手机通信时,不推荐修改,否则将可能导致APP无法与Dual-mode Bluetooth通信。

如下图:

Dual-mode-Bluetooth-User-Manual06.png Dual-mode-Bluetooth-User-Manual05.png


Dual-mode Bluetooth相关功能

常用系统AT指令

打开串口调试助手,默认如下图配置(如果修改过模块串口配置的,则按自定义的进行配置),发送大写AT(AT字符后没有\r\n等任何符号,有的串口助手有“发送新行”的复选款,请勿√选 ),若返回OK,说明硬件连接正常,模块工作正常。

Dual-mode-Bluetooth-User-Manual08.png

在正常模式下,未建立连接或断开链接时能正常通过AT指令配置Dual-mode Bluetooth(如果处于连接状态,需要断开蓝牙链接才可正常使用AT指令)。


  • 测试或断开连接指令
指令 应答 参数
AT OK\ER\断开连接

模块处于正常待机状态时,会返回:"OK"。

模块处于错误状态时,会返回:"ER",说明蓝牙芯片工作不正常,可能需要重启或重置一些参数。

在模块建立蓝牙连接时,通过模块串口发送:"AT",可断开蓝牙连接。


  • 复位指令
指令 应答 参数
AT+RESET OK+RESET

该指令执行后,模块将延时500ms后重启,整个重启过程大约需要3秒。


  • 查询模块EDR模式MAC地址
指令 应答 参数
AT+ADDE? OK+Get:MAC地址


  • 查询模块BLE模式MAC地址
指令 应答 参数
AT+ADDB? OK+Get:MAC地址


  • 查询EDR成功连接过的远程主机地址
指令 应答 参数
AT+RADE? OK+Get:MAC 地址


  • 查询BLE成功连接过的远程主机地址
指令 应答 参数
AT+RADB? OK+Get:MAC 地址


  • 清除最后成功连接的地址信息
指令 应答 备注
AT+CLEAE OK+CLEAE 清除EDR连接信息
AT+CLEAB OK+CLEAB 清除BLE连接信息

  • 查询\设置模块初始化通知
指令 应答 参数
查询:AT+INIT? OK+Get:[P1] P1:0或1(默认:0)
  • 0:不发送初始化通知
  • 1:发送初始化通知
设置:AT+INIT[P1] OK+Set:[P1]

如果打开初始化通知,则模块初始化完成后会通过串口输出“OK+INIT”。

注:该指令执行后,必须重新上电,新设置才能生效。


  • 查询\设置模块EDR工作模式
指令 应答 参数
查询:AT+IMME? OK+Get:[P1] P1:0或1(默认:0)
  • 0:自动工作
  • 1:上电等待指令工作
设置:AT+IMME[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效。


  • 查询\设置模块BLE工作模式
指令 应答 参数
查询:AT+IMMB? OK+Get:[P1] P1:0或1(默认:0)
  • 0:自动工作
  • 1:上电等待指令工作
设置:AT+IMMB[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效。


  • 设置EDR模式开始工作指令
指令 应答 参数
AT+STARE OK+STARE


  • 设置EDR模式停止工作指令
指令 应答 参数
AT+STOPE OK+STOPE


  • 设置BLE模式开始工作指令
指令 应答 参数
AT+STARB OK+STARB


  • 设置BLE模式停止工作指令
指令 应答 参数
AT+STOPB OK+STOPB

若设置了AT+IMME1,则模块需要接收到AT+STARE,EDR模式才能正常工作。如果接收到AT+STOPE,则EDR模式会停止工作。

若设置了AT+IMMB1,则模块需要接收到AT+STARB,BLE模式才能正常工作。如果接收到AT+STOPB,则BLE模式会停止工作。

设置广播名称

  • 查询\设置EDR设备名称
指令 应答 参数
查询:AT+NAME? OK+Get:[P1] P1:设备名称
  • 推荐使用11位数字或字母,可包含中划线和下划线,不建议用其它字符
设置:AT+NAME[P1] OK+Set:[P1]


  • 查询\设置BLE设备名称
指令 应答 参数
查询:AT+NAMB? OK+Get:[P1] P1:设备名称
  • 推荐使用11位数字或字母,可包含中划线和下划线,不建议用其它字符
设置:AT+NAMB[P1] OK+Set:[P1]

例:

所发送指令 应答 备注
AT OK 测试命令,判断当前是否可以使用AT指令进行设置
AT+NAMB? OK+Get:当前BLE设备名称 查询BLE设备名称
AT+NAMBtestBLE OK+Set:testBLE 设置BLE设备名称为"testBLE"
AT+NAME? OK+Get:当前EDR设备名称 查询EDR设备名称
AT+NAMEtestEDR OK+Set:testEDR 设置BLE设备名称为"testEDR"
AT+RESET OK+RESET 复位模块或重新给模块上电

按顺序执行上表AT命令后,在模块重启后,通过手机APP重新扫描,正常可以看到设备名称已经修改。

配置iBeacon

iBeacon默认UUID为:74288BDA-B644-4520-8F0C-720EAF059935,且主模式下不发送iBeacon广播包

  • 查询\设置iBeacon开关
指令 应答 参数
查询:AT+IBEA? OK+Get:[P1] P1:0或1(默认:0)
  • 0:关闭iBeacon
  • 1:打开iBeacon
设置:AT+IBEA[P1] OK+Set:[P1]

该指令执行后,必须重新上电,新设置才能生效


  • 查询\设置iBeacon UUID值
指令 应答 参数
查询:AT+IBE0? OK+Get:[P1] P1:00000001~FFFFFFFE
  • (默认:74278BDA)
设置:AT+IBE0[P1] OK+Set:[P1]

iBeacon UUID:74288BDA-B644-4520-8F0C-720EAF059935

该指令用于修改UUID中红字部分


  • 查询\设置iBeacon UUID值
指令 应答 参数
查询:AT+IBE1? OK+Get:[P1] P1:00000001~FFFFFFFE
  • (默认:B6444520)
设置:AT+IBE1[P1] OK+Set:[P1]

iBeacon UUID:74288BDA-B644-4520-8F0C-720EAF059935

该指令用于修改UUID中绿字部分


  • 查询\设置iBeacon UUID值
指令 应答 参数
查询:AT+IBE2? OK+Get:[P1] P1:00000001~FFFFFFFE
  • (默认:8F0C720E)
设置:AT+IBE2[P1] OK+Set:[P1]

iBeacon UUID:74288BDA-B644-4520-8F0C-720EAF059935

该指令用于修改UUID中蓝字部分


  • 查询\设置iBeacon UUID值
指令 应答 参数
查询:AT+IBE3? OK+Get:[P1] P1:00000001~FFFFFFFE
  • (默认:AF059935)
设置:AT+IBE3[P1] OK+Set:[P1]

iBeacon UUID:74288BDA-B644-4520-8F0C-720EAF059935

该指令用于修改UUID中紫字部分


  • 查询\设置iBeacon Major值
指令 应答 参数
查询:AT+MAJO? OK+Get:[P1] P1:0001~FFFE
  • (默认:0001)
设置:AT+MAJO[P1] OK+Set:[P1]


  • 查询\设置iBeacon Minor值
指令 应答 参数
查询:AT+MINO? OK+Get:[P1] P1:0001~FFFE
  • (默认:0001)
设置:AT+MINO[P1] OK+Set:[P1]


例:

1.在进行iBeacon配置时,需要先准备手机端的测试软件,以下以iOS系统系统测试为例,Android类似

在App Store里中搜索Locate,并安装。如下图:

Dual-mode-Bluetooth-User-Manual09.png

2.打开Locate并配置访问权限(注:没有配置访问权限将无法使用)

3.配置好手机端后,则可以开始配置设备端,通过串口发送以下指令:

所发送指令 应答 备注
AT OK 测试命令,判断当前是否可以使用AT指令进行设置
AT+IBEA1 OK+Set:1 打开iBeacon
AT+MAJO1234 OK+Set:1234 配置iBeacon Major
AT+MINO4567 OK+Set:4567 配置iBeacon MINO
AT+RESET OK+RESET 复位模块或重新给模块上电

复位后正常可以搜索到如下图:

Dual-mode-Bluetooth-User-Manual10.png

注:16进制的1234和4567分别等于10进制的4660和17767。

其中74288BDA-B644-4520-8F0C-720EAF059935为默认UUID,如果需要修改,可以通过以下命令:

1.修改红色部分:AT+IBE001234567

2.修改绿色部分:AT+IBE18901ABCD

3.修改蓝色部分:AT+IBE2EFEF0123

4.修改紫色部分:AT+IBE3456789AB

5.重新上电或执行"AT+RESET"指令

此时将按新的UUID进行广播,注意在Locate里需要设置自定义的UUID,才能在Locate中查看,设置如下图:

Dual-mode-Bluetooth-User-Manual11.png

显示结果如下:

Dual-mode-Bluetooth-User-Manual12.png

设置三通模式

三通模式需要AT+ATOB与AT+DUAL配合使用,在模块两个模式(EDR,BLE)都建立蓝牙连接的情况下,打开三通模式,则A设备发送给模块的数据会被同时转发到B设备,B设备发送给模块的数据会被同时转发给A设备。

Dual-mode-Bluetooth-User-Manual13.png

  • 查询\设置模块三通模式
指令 应答 参数
查询:AT+ATOB? OK+ Get:[P1] P1:0或1(默认:0)
  • 0:不打开三通模式
  • 1:打开三通模式
设置:AT+ATOB[P1] OK+ Set:[P1]


  • 设置模块连接模式
指令 应答 参数
查询:AT+DUAL? OK+Get:[P1] P1:0或1(默认:1)
  • 0:双模待机同时收发
  • 1:双模待机单模收发
设置:AT+DUAL[P1] OK+Set:[P1]

例:

所发送指令 应答 备注
AT OK 测试命令,判断当前是否可以使用AT指令进行设置
AT+DUAL0 OK+Set:0 双模待机同时收发
AT+ATOB1 OK+Set:1 打开三通模式
AT+RESET OK+RESET 复位模块或重新给模块上电

IO控制

  • 查询\设置LED(PIO1)输出状态
指令 应答 参数
查询:AT+PIO1? OK+Get:[P1] P1:0或1(默认:0)
  • 0:待机慢闪,连接后常亮
  • 1:待机不闪,连接后常亮
设置:AT+PIO1[P1] OK+Set:[P1]


  • 查询\设置PIO状态
指令 应答 参数
查询:AT+PIO[P1]? OK+Get:[P2] P1:2\3\4\5\8\9\A\B

P2:0,1,?

  • 0:输出低电平
  • 1:输出高电平
  • ?:查询状态
设置:AT+PIO[P1][P2] OK+Set:[P2]

例:

如果只查询一个PIO的输出状态请用"AT+PIO2?"或"AT+PIO3?"

设置PIO2输出状态:"AT+PIO2X",X值为0或1,代表低或高电平

以发送"AT+PIO21"为例,如果返回"OK+Set:1"说明PIO2电平已经输出高电平。

如果你使用XBee USB Adapter进行测试,那么有以下连接关系:

Dual-mode Bluetooth XBee USB Adapter
LED(PIO1) LED1
PIO5 LED2

对应该的IO如下图:

Dual-mode-Bluetooth-User-Manual14.png

设置串口相关参数

在重申一次,虽然Dual-mode Bluetooth允许用户修改串口相关参数,但并不推荐客户随意修改(默认设置是最常用的)。

  • 查询\设置模块波特率
指令 应答 参数
查询:AT+BAUD? OK+Get:[P1] P1:1~7(默认:6)
  • 1=4800
  • 2=9600
  • 3=19200
  • 4=38400
  • 5=57600
  • 6=115200
  • 7=230400
设置:AT+BAUD[P1] OK+Set:[P1]

例子如下,设置波特率为9600:

发送:AT+BAUD2

返回:OK+Set:2

注:该指令设置波特率的指令后,须重新上电,新设置的参数才能生效。


  • 查询\设置串口校验
指令 应答 参数
查询:AT+PARI? OK+Get:[P1] P1:0~2(默认:0)
  • 0:无校验
  • 1:EVEN
  • 2:ODD
设置:AT+PARI[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效


  • 查询\设置停止位
指令 应答 参数
查询:AT+STOP? OK+Get:[P1] P1:0或1(默认:0)
  • 0:1停止位
  • 1:2停止位
设置:AT+STOP[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效


  • 查询\设置硬件流
指令 应答 参数
查询:AT+FLOW? OK+Get:[P1] P1:0或1(默认:0)
  • 0:关
  • 1:开
设置:AT+FLOW[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效

主从模式

主从模式是指两个Dual-mode Bluetooth之间进行全双工的通信,类似于串口延长线的功能。

测试时,需要有2个Dual-mode Bluetooth,其中一个设置为主模式,另一个保持从模式不变,关闭周围其他蓝牙设备,主模式的Dual-mode Bluetooth会自动搜索并链接到从模式的Dual-mode Bluetooth。

查询\设置EDR主从模式

指令 应答 参数
查询:AT+ROLE? OK+Get:[P1] P1:0或1(默认:0)
  • 0:从模式
  • 1:主模式
设置:AT+ROLE[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效


查询\设置BLE主从模式

指令 应答 参数
查询:AT+ROLB? OK+Get:[P1] P1:0或1(默认:0)
  • 0:从模式
  • 1:主模式
设置:AT+ROLB[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效


"AT+ROLE1"和"AT+ROLB1"不能同时使用,即同一时刻,只支持BLE做主设备或EDR做主设备。不能同时支持。一般更推荐使用"AT+ROLE1"。

其它AT指令

  • 设置模块工作模式
指令 应答 参数
查询:AT+MODE? OK+Get:[P1] P1:0或1(Default:0)
  • 0:透传模式
  • 1:透传+远控模式
设置:AT+MODE[P1] OK+Set:[P1]

用于切换透传和远控模式。

远控模式指可以通过设备发送AT指令去查询\设置蓝牙模块。

例:

所发送指令 应答 备注
AT OK 测试命令,判断当前是否可以使用AT指令进行设置
AT+MODE1 OK+Set:1 设置透传+远控模式

之后通过手机APP发送AT指令"AT+PIO51"或"AT+PIO50"即可控制XBee USB Adapter板子上LED2的亮灭。


  • 设置是否通知上位机连接状态
指令 应答 参数
查询:AT+NOTI? OK+Get:[P1] P1:0或1(默认:0)
  • 0:连接后不通知上位机
  • 1:连接后通知上位机
设置:AT+NOTI[P1] OK+Set:[P1]

注:设置AT+NOTI1之后,模块与设备成功连接或断开连接时,会通过串口发送状态提醒信息,格式如下:

OK+CONE-----EDR成功连接

OK+LSTE-----EDR断开连接

OK+CONB-----BLE成功连接

OK+LSTB-----BLE断开连接

OK+LSTA-----双模异常断开,模块自动重置


  • 设置通知上位机连接状态的提示类型
指令 应答 参数
查询:AT+NOTP? OK+Get:[P1] P1:0或1(默认:0)
  • 0:通知不包含远端地址
  • 1:通知包含远端地址
设置:AT+NOTP[P1] OK+Set:[P1]

注:此功能基于"AT+NOTI1"指令,用来设置连接断开提示信息内容。

如果设置不包含地址,提示同"AT+NOTI1"指令中的提示,如果设置了包含地址,则提示信息如下:

OK+CONE:001122334455-----EDR成功连接,包含远端地址

OK+LSTE:001122334455-----EDR断开连接,包含远端地址

OK+CONB:001122334455-----BLE成功连接,包含远端地址

OK+LSTB:001122334455-----BLE断开连接,包含远端地址


  • 查询\设置是否在Android下使用BLE模式
指令 应答 参数
查询:AT+ONEM? OK+Get:[P1] P1:0或1(默认:0)
  • 0:使用BLE
  • 1:不使用BLE
设置:AT+ONEM[P1] OK+Set:[P1]

注1:该指令执行后,必须重新上电,新设置才能生效

注2:执行AT+ONEM1之后,android下能搜索到BLE模式,但是将不能使用BLE模式,只能使用EDR模式。 00:0E:0B开头的BLE地址将被隐去。


  • 查询\设置EDR模式待机参数
指令 应答 参数
查询:AT+SCAN? OK+Get:[P1] P1:0或1(默认:0)
  • 0:可被发现,可连接
  • 1:不可被发现,可连接
设置:AT+SCAN[P1] OK+Set:[P1]

注:该指令执行后,必须重新上电,新设置才能生效


  • 查询\设置EDR配对密码
指令 应答 参数
查询:AT+PINE? OK+Get:[P1] P1:8位以内的数字字符
  • 默认:1234
设置:AT+PINE[P1] OK+Set:[P1]

例子如下:

发送:AT+PINE008888

返回:OK+Set:008888

此时配对密码改为008888,模块在出厂时的EDR默认配对密码是"1234"。


  • 查询\设置BLE配对密码
指令 应答 参数
查询:AT+PINB? OK+Get:[P1] P1:6位以内的数字字符
  • 默认:000000
设置:AT+PINB[P1] OK+Set:[P1]

例子如下:

发送:AT+PINB008888

返回:OK+Set:008888

此时配对密码改为008888,模块在出厂时的BLE默认配对密码是"000000"。


  • 重置模块
指令 应答 参数
AT+RENEW OK+RENEW

执行后模块将延时500ms后重启,所有设置均会被重置,该命令慎用

例:

所发送指令 应答 备注
AT OK 测试命令,判断当前是否可以使用AT指令进行设置
AT+RENEW OK+RENEW 重置模块
AT+NAMBWaveshareBLE OK+Set:testBLE 设备BLE设备名称为"WaveshareBLE"
AT+NAMEWaveshare_EDR OK+Set:testEDR 设备BLE设备名称为"WaveshareEDR"
AT+RESET OK+RESET 复位模块或重新给模块上电

APP对接

APP通信协议

我们默认提供的演示APP一共提供了3个模式,串口调试在上面已介绍,这里主要说遥控模式和外设控制的通讯协议,用户只需按我们提供的格式发送数据,就可以与APP进行通信。

概述

我们使用的通信协议是标准的JSON格式(一种轻量级的数据交换格式),并且为了方便解析,我们使用最简单的键值对形式,如下:

{"key":"Value"}

使用最简单的键值对形式以下特点:

  • 信息保存在键值对中
  • 键值对分别包含在双引号中
  • 键值对使用冒号分隔
  • 花括号作为数据帧的开始和结束

通过这些特点,就可以很简单的进行数据的打包和解析了。详细可参考我们提供的底板程序和APP源码。

遥控模式

遥控模式如下图,分为状态显示、速度控制和方向控制

Dual-mode-Bluetooth-User-Manual15.png

具体默认协议如下表:

描述 状态 命令
显示Dual-mode Bluetooth相关信息 接收 {"State":"MSG"}
设置速度-低速 按下发送 {"Low":"Down"}
设置速度-中速 按下发送 {"Medium":"Down"}
设置速度-高速 按下发送 {"High":"Down"}
方向控制-上 按下发送 {"Forward":"Down"}
方向控制-上 弹起发送 {"Forward":"Up"}
方向控制-下 按下发送 {"Backward":"Down"}
方向控制-下 弹起发送 {"Backward":"Up"}
方向控制-左 按下发送 {"Left":"Down"}
方向控制-左 弹起发送 {"Left":"Up"}
方向控制-右 按下发送 {"Right":"Down"}
方向控制-右 弹起发送 {"Right":"Up"}

例:

  • 如果你需要在APP上显示信息为Init Success,则可以通过Dual-mode Bluetooth发送 {"State":"Init Success"} ,APP接收到信息后,显示如下:

Dual-mode-Bluetooth-User-Manual16.png

  • 如果你需要通过APP发送命令,则按下相应的按钮后,Dual-mode Bluetooth将接收到相应的命令。也可以通过设置按钮来自定义发送的内容。

外设控制

外设控制如下图,分为RGB LED控制、蜂鸣器控制、OLED控制和各种状态的显示

Dual-mode-Bluetooth-User-Manual17.png

具体默认协议如下表:

描述 状态 命令
RGB LED控制 按下选择,弹起发送 {"RGB":"R,G,B"}
蜂鸣器控制 按下发送 {"BZ":"on"} \ {"BZ":"off"}
OLED控制 输入框输入相应数据,点击发送按钮进行显示 {"OLED":"input string"}
实时时钟显示 接收 {"RTC":"data time"}
加速度显示 接收 {"ACC":"acc data"}
电压显示 接收 {"ADC":"adc value"}
遥杆状态显示 接收 {"JOY":"key value"}
温度显示 接收 {"TEMP":"temperature"}

注:

蜂鸣器控制使用了单次握手方式,即点击按钮"蜂鸣器:开"时,Dual-mode Bluetooth会接收到 {"BZ":"on"}

此时Dual-mode Bluetooth应该再返回一次数据给APP以表明已接收到打开蜂鸣器的指令(发送 {"BZ":"on"} )

当APP接收到 {"BZ":"on"} ,会翻转按钮的状态(变为"蜂鸣器:关")

如果再次点击"蜂鸣器:关",Dual-mode Bluetooth会接收到 {"BZ":"off"}

此时Dual-mode Bluetooth应该再返回一次数据给APP以表明已接收到关闭蜂鸣器的指令(发送 {"BZ":"off"} )

当APP接收到 {"BZ":"off"} ,会翻转按钮的状态(变为:"蜂鸣器:开")

搭配XNUCLEO-F103RB与Accessory Shield 进行外设控制

测试步骤:

1.硬件连接如下图(如果跳线帽不够,可以把XNUCLEO-F103RB JP7的跳线拔下,接到JP4):

Dual-mode-Bluetooth-User-Manual18.png

2.使用ST-LINK/V2 (mini)下载STM32测试程序(推荐使用keli4.72以上版本进行编译)

3.打开APP,连接Dual-mode Bluetooth,选择"外设控制"对Accessory Shield各部分功能进行测试