查看: 634|回复: 0

[应用笔记] WB81蓝牙APP调试快速上手指南

[复制链接]

185

主题

204

帖子

596

积分

利尔达员工

Rank: 9Rank: 9Rank: 9

积分
596
发表于 2023-6-12 09:40:28 | 显示全部楼层 |阅读模式
  一、调试BLE——nrfconnect/Light Blue BLE

  该示例展示了如何在WB81 开发板(仅作为低功耗蓝牙从机角色)和手机(仅作为低功耗蓝牙主机角色)之间建立 连接,以及如何在 BLE 透传模式下传输数据。

  一般来讲,BLE GATT主从机间通信流程可简述为以下几个阶段,具体如图1.1所示:

图1.1 BLE GATT主从机间完整通信流程

  1.1 手机端下载BLE调试助手

  例如nRF connect。详细APP介绍可查阅《nRF Connect、Light Blue BLE调试APP简介

  1.2 模组端 开启广播


  1.2.1 开启广播示例

  AT+BLEINIT=2  //初始化BLE
  AT+BLEGATTSSRVCRE  //创建服务
  AT+BLEGATTSSRVSTART  //开启服务
  AT+BLEADDR?  //MAC地址
  AT+BLEADVPARAM=50,50,0,0,7,0,,  //设置广播参数
  AT+BLEADVDATA="0201060A09457370726573736966030302A0"  //设置广播数据
  AT+BLEADVSTART  //开启广播

  1.2.2 串口指令详解


  广播数据

  AT+BLEADVDATA=<adv_data>

  1.3 nRF扫描

  开启BLE广播,然后打开 nRF Connect APP,靠近模块即可发现模块正处于广播模式。
图1.2广播数据详情

  AT+BLEADVDATA="0201060A09457370726573736966030302A0"设置的广播参数可以在广播数据里看到,对应关系如图1.3所示。Type是一个具有共用标准的取值,具体多少代表什么含义可到蓝牙联盟官网查询。
图1.3 广播参数对应关系

  1.4 nRF连接

  点击connect建立连接如图1.4,点击disconnect断开连接
图1.4 连接模组

  连接成功,模组端返回
  +BLECONN:0,"61:d6:33:7b:80:8c"
  +BLECONNPARAM:0,0,0,6,0,500
  +BLECONNPARAM:0,0,0,36,0,500

  查询服务&服务端发现特征
  AT+BLEGATTSSRV?  //查询服务
  +BLEGATTSSRV:1,1,0xA002,1
  +BLEGATTSSRV:2,1,0xA003,1
  OK

  AT+BLEGATTSCHAR?  //服务端发现特征
  +BLEGATTSCHAR:"char",1,1,0xC300,0x02
  +BLEGATTSCHAR:"desc",1,1,1,0x2901
  +BLEGATTSCHAR:"char",1,2,0xC301,0x02
  +BLEGATTSCHAR:"desc",1,2,1,0x2901
  +BLEGATTSCHAR:"char",1,3,0xC302,0x08
  +BLEGATTSCHAR:"desc",1,3,1,0x2901
  +BLEGATTSCHAR:"char",1,4,0xC303,0x04
  +BLEGATTSCHAR:"desc",1,4,1,0x2901
  +BLEGATTSCHAR:"char",1,5,0xC304,0x08
  +BLEGATTSCHAR:"char",1,6,0xC305,0x10
  +BLEGATTSCHAR:"desc",1,6,1,0x2902
  +BLEGATTSCHAR:"char",1,7,0xC306,0x20
  +BLEGATTSCHAR:"desc",1,7,1,0x2902
  +BLEGATTSCHAR:"char",1,8,0xC307,0x02
  +BLEGATTSCHAR:"desc",1,8,1,0x2901
  +BLEGATTSCHAR:"char",2,1,0xC400,0x02
  +BLEGATTSCHAR:"desc",2,1,1,0x2901
  +BLEGATTSCHAR:"char",2,2,0xC401,0x02
  +BLEGATTSCHAR:"desc",2,2,1,0x2901
  OK

  注:<char_prop>服务特征的属性可以参考文章最后的表3-1服务特征属性查询表

  1.4.1 串口指令详解


  广播数据

  1.5 nRF使能notify

  此时在手机nRF端选择 Properties 为 NOTIFY 或者 INDICATE 的服务特征使能,使能成功后模组开始侦听 Properties 为 NOTIFY 或者 INDICATE 的服务特征通道。这里使能0xC306,注意此处使能后的图标变化,如图1.5
图1.5 使能0xC306

  使能成功,模组端返回
  +WRITE:0,1,7,1,2,\0

  注:WB81模组默认 Properties 为 NOTIFY 或者 INDICATE 的服务特征是 0xC305 和 0xC306

  1.6 数据交互


  1.6.1 模组发送数据

  串口助手发送数据12345678
  AT+BLESPPCFG=1,1,7,1,5  //配置SPP参数 ,TX和RX的服务序号以及服务特征序号
  OK
  AT+BLESPP  //SPP透传
  OK
  >
  12345678
  □
  +++  //退出SPP透传,取消回车换行发送

  注:配置SPP参数中的TX服务序号以及服务特征序号,要和1.5主机使能notify中使能的通道对应,对应关系如下图蓝色框图


  监听通道使能才能接收到串口助手发来的数据,如图1.6
图1.6 APP接收数据

  1.6.2手机APP发数据

  点击UUID 0xC304,write下发“3132333435”

  串口助手接收到手机APP发来的数据12345。
  +WRITE:1,1,5,,5,12345

  1.7 断开连接


  AT+BLEDISCONN=0  //断开连接
  +BLEDISCONN:0,"7f:b0:12:fb:15:5d"
  OK

  二、调试BT——e调试


  该示例展示了如何在WB81 开发板(仅作为经典蓝牙从机角色)和手机(仅作为经典蓝牙主机角色)之间建立 连接,以及如何在 BLE 透传模式下传输数据。

  2.1 手机端下载Class BT调试助手——e调试


  2.2 模组端开启从机广播模式

  AT+LINITBT=1  //初始化蓝牙配置
  AT+BTINIT=1  //初始化蓝牙
  AT+BTSPPINIT=2  //spp协议—S初始化
  AT+LBTSCANPARAM=2,”WB81”  //设置 Classic Bluetooth 扫描模式为可发现可连接,设备名称为WB81
  AT+BTSECPARAM=3,1,"9527"  //安全参数设置设置 io_cap 为 NoInputNoOutput,pin_type OK 为 fixed,pin_ccode 为 9527
  AT+BTSPPSTART  //开启BTSPP协议

  2.3 手机端扫描连接


  e调试APP,支持经典模式和低功耗模式,在此示例中选择经典模式,在经典蓝牙的扫描列表里可以看到WB81的设备信息,点击之后确认如图2.1
图2.1经典模式

  第一次连接,会出现如下配对界面,点击配对如图2.2
图2.2 连接配对

  连接成功,模组端返回
  +BTSPPCONN:0,"20:31:1c:47:9a:1e"  

  2.4 数据交互


  2.4.1 模组端发送数据

  串口发送数据112233445566778899
  AT+BTSPPSEND  //开启透传
  OK
  >
  ◇112233445566778899
  +++  //退出SPP透传,取消回车换行发送

  手机接收到模组发来的数据如图2.3

图2.3 手机端接收到数据

  2.4.2 手机APP发送数据

  在发送框输入数据点击发送,串口助手接收到手机APP发来的数据123456789。  +BTDATA:9,123456789

  2.5 断开连接


  AT+BTSPPDISCONN=0  //断开连接
  +BTSPPDISCONN:0,"20:31:1c:47:9a:1e"
  OK

  三、服务特征属性查询表

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表