概述/ H. D" w/ b8 q* N 本篇文章主要介绍如何使用STM32CubeMX对生成STM32WB工程,并通过与STM32WB配对获取密钥值,然后通过键盘输入密钥进行配对。 硬件准备 首先需要准备一个开发板,这里我准备的是NUCLEO-WB55RG 的开发板:+ o3 s, w" t1 E* v- L6 O$ i 0 x3 d+ @* v# \5 A - S4 v$ |. O. {) v: _ 设置配对方法 由下表可知,当设置为Keyboard only时候,用户需要传递六个数字的密钥。这个六位数的值是设备身份验证的基础 。 5 ~8 F6 }1 x2 A1 T$ D% ` 故在上节的配置中进行修改,修改如下所示。 % [2 C) B8 l( Q v! x 配置完毕重新生成代码。0 |+ ~# s! o$ F6 n* _6 N & h' [. Z, @, y5 t 代码配置 9 `0 `0 x* j& g$ L( ], z 在app_ble.c中先声明变量。) Z0 v# _& G6 D2 @% K - r1 a" e* `+ f) [9 G7 q% ^) z3 @2 t 在app_ble.c中,ACI_GAP_PASS_KEY_REQ_VSEVT_CODE下添加每次配对是生成密钥的请求事件。 ( {5 v, T7 n/ R0 E: c( f0 ` 我们需要定义一个由6个整数组成的数组,6个无符号整数,通过串口进行接收。5 O. h/ z1 h. d! ^ 然后将接收的数据进行处理,处理为6位的密钥密钥。 & m3 G) q' K/ o8 e0 U& { 配置完成后下载即可。 * ^; L6 S4 j0 V- e6 k 结果演示4 ~; g/ f( E2 Z& C0 _ 下载完程序后,可以看到串口打印固件版本等信息。" d+ c' Y! E& `5 \# L c, e- U; N/ o( i2 W 打开ST BLE ToolBox软件(APP在群内有615061293),可以看到该蓝牙已经可以搜索到。6 }7 t5 H7 I8 n0 X/ A ; S7 c9 C8 q1 x1 N: m9 q! w% r" t ; `- a7 {4 j, t6 t2 Z7 S% f 点击connect进行连接。9 M! I1 i( K1 u% K2 W 连接之后可以看到串口打印了连接事件。) K8 v4 _5 _/ ~" _+ j6 P 8 y$ g9 Z8 Q9 [1 ^1 z5 B% Z 同时手机也显示该蓝牙模块连接成功。 - l# M, `7 d/ R4 M 让后我们试着读取他。: ?6 K; G0 P+ n. b 7 A% R/ c2 i8 g5 S8 X- I2 y 会让我们输入配对码。 ( p1 n( [* L$ \8 s" Z% L 在调试助手中输入配对码,点击发送即可,即可进行配对。 % }# E" R. f% ` ; @$ _5 N3 W7 Z7 b* X. \% D 配对完成在进行读取,即可成功读取出来。 + J( H o2 m8 G4 V % Y. ~. P! G# H8 D' Z, N, w5 L |
基于STM32WB55的配置串口打印Debug经验分享
基于创建STM32WBA BLE_Custom工程经验分享
来看直播了,就在明天 | STM32 Matter 解决方案,轻松实现智能家居无缝连接
基于STM32WB55开发之套件概述(1)
基于STM32WB55开发之监测STM32WB连接状态(1)
基于STM32WB55开发之修改蓝牙地址(2)
STM32WB基于Custom Template实现客户定制BLE私有协议
如何基于STM32WB一次性烧写FUS+STACK+APP
【STM32WB55评测】评测四 蓝牙mesh摸索(二)
[STM32WB55评测 ]蓝牙同步时间