• 正文
  • 相关推荐
申请入驻 产业图谱

手把手教你:打印配对过程中的LOG信息

07/14 08:39
256
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

一、前言

本篇将结合代码讲解如何打印配对过程中的LOG信息。

二、阅读说明

1、泰凌微芯片学习者,前期使用过该芯片。

2、能够知道怎么进行创建工程,下载代码。

3、有一块开发板,板上的芯片可以是8251,8253或者8258。

三、正文

1、使用的SDK使用的sdk和demo为该篇文章描述的“手把手教你:BLE设备如何和手机进行加密配对绑定”;

2、app_config.h文件更改

如上图所示将配对的LOG进行使能,如果不对此进行使能的话是打印不出来相关的log信息的

3、配对相关相关事件标志的解释

如上图所示,在app.c文件user_init_normal中,注册了三个有关配对的事件标志,如下解释:

GAP_EVT_MASK_SMP_PAIRING_BEGIN

配对开始标志,也就是在从机发出配对加密请求(SM_Security_Req)的时候会触发此事件回调函数。

GAP_EVT_MASK_SMP_PAIRING_SUCCESS

配对成功标志,在配对第三阶段密钥分发结束之后,相关的回调函数进行触发。

GAP_EVT_MASK_SMP_PAIRING_FAIL

在从机与主机进行配对的过程当中失败或者终止时,相关的回调函数进行触发

4、配对回调函数介绍

4.1、app_host_event_callback函数介绍

如上图所示,关于配对回调函数的处理过程全部在app_host_event_callback函数中。

4.2、配对开始回调

如上图所示,在配对开始的时候会进入到里面,然后打印出如下三个参数,三个参数的相关解释如下图片所示:

4.3、配对成功回调

如上图所示,在配对成功的时候会进入到里面,然后打印出如下三个参数,三个参数的相关解释如下图片所示:

4.4、配对失败回调

如下图所示,在配对失败的时候会打印如下两个参数,相关解释如下

5、程序下载进入之后打印的log信息

[FLASH][INI] 512K Flash, MAC on 0x76000[APP][INI]Public Address: 31 b8 14 38 c1 a4[APP][INI] BLE sample init [APP][EVT] connect, intA & advA:: b6 22 a3 2f f8 50 31 b8 14 38 c1 a4[APP][EVT] DLE exchange: 1b 00 1b 00[APP][SMP] paring begin:: 40 00 00 00[APP][SMP] paring success:: 40 00 01 01[APP][EVT] disconnect, reason 0x8

如上图所示,

paring begin:: 40 00 00 00,解释如下:

40 00:表示connHandle,代表连接句柄

00:表示secure_conne,代表安全连接,这里说明不采用安全连接的方式来进行配对,采用的是传统配对也就是LE legacy paring方式

00:最后一个tk_method,表示使用just work方式产生TK值,这里说明一下tk_method的产生方式是根据双方协商来定的,也就是在配对第一阶段相互之间交换了彼此的特性之后才决定的。

paring success:: 40 00 01 01,解释如下:

40 00:表示connHandle,代表连接句柄

01:表示bonding,是否启用绑定功能,该值为1表示启用绑定功能

01:表示bonding_result,表示绑定结果,这里为1表示绑定成功。

四、结尾

本篇结合代码讲解了如何开启配对打印宏,以及对打印出来的内容进行了比较详细的解释,该回调函数是在配对第一阶段和第三阶段发生的,下一篇将解释在配对的阶段解密完成之后的回调函数,也就是在配对第二阶段可以触发的回调函数。

我写了一个合集,不依赖 Nordic、泰凌、瑞萨等厂商商用 BLE 协议栈,从无线底层链路层入手,从零手写 BLE 广播扫描逻辑,拆解蓝牙广播包、信道切换、射频调度、广播数据解析完整流程,适合想吃透 BLE 底层、自主开发蓝牙工具、规避商用协议栈授权限制的嵌入式开发者。

泰凌微电子

泰凌微电子

泰凌微电子(上海)股份有限公司成立于2010年6月,是一家专业的集成电路设计企业, 主要从事无线物联网系统级芯片的研发、设计及销售,专注于无线物联网芯片领域的前沿技术开发与突破。 通过多年的持续攻关和研发积累,已成为全球该细分领域产品种类最为齐全的代表性企业之一。

泰凌微电子(上海)股份有限公司成立于2010年6月,是一家专业的集成电路设计企业, 主要从事无线物联网系统级芯片的研发、设计及销售,专注于无线物联网芯片领域的前沿技术开发与突破。 通过多年的持续攻关和研发积累,已成为全球该细分领域产品种类最为齐全的代表性企业之一。收起

查看更多

相关推荐