你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32WB55_NUCLEO开发授权经验分享

[复制链接]
攻城狮Melo 发布时间:2023-4-10 21:02
概述
    本篇文章主要介绍如何使用STM32CubeMX对生成STM32WB工程,并通过与STM32WB配对,应用程序对客户端读取或者写入特征值进行授权。
. b) D3 e  R# R4 N$ D/ E
硬件准备, V7 V/ G& i) q0 k! X5 N
    首先需要准备一个开发板,这里我准备的是NUCLEO-WB55RG 的开发板:

# l) k, k7 ]- R
微信图片_20230410210134.png

) H1 r1 e( s! L8 l+ ]$ s9 k8 X
7 G5 L0 N" F6 V6 E& m8 O4 P, }开启授权# {2 v1 _, ]) M. M. g' V2 L
    在配置界面中,开启ATTR_PERMISSION_AUTHOR_READ,即需要授权才可以进行读取。
% j( Q, `% f* i; Q
微信图片_20230410210130.png

, x, F0 I+ Y& a4 F: _: ^
    同时开启GATT_NOTIFY_READ_REQ_AND_WAIT_FOR_APPL_RESP事件,当客户端每次进行读取尝试的时候,会产生一个EVT_BLUE_GATT_READ_PERMIT_REQ事件。
8 r) c1 W) L4 K1 n( \
微信图片_20230410210125.png
% i( \- Q4 r* M6 }3 U0 P
    配置完毕重新生成代码。

9 m. t+ j: Y! [) ~" @! U1 b- @
微信图片_20230410210119.png

% h( ?. J6 b; _5 C4 P代码配置
, u: r+ a" a9 e# w6 Z
    添加打印,方便查看是否执行了该代码段。

+ J9 [0 f8 A$ D: ^/ ~3 F
微信图片_20230410210115.png

# s5 ~! a! ]$ V- L# \9 g
    aci_gatt_allow_read()是允许 GATT 服务器发送对来自客户端的读取请求的响应。应用程序必须在收到EVT_BLUE_GATT_READ_PERMIT_REQ或EVT_BLUE_GATT_READ_MULTI_PERMIT_REQ时发送此命令。此命令向堆栈指示可以将响应发送到客户端。因此,如果应用程序希望在客户端读取任何属性之前更新它们,它必须使用 aci_gatt_update_char_value 更新特征值,然后发出此命令。应用程序应在 30 秒内执行所需的操作,否则 GATT 程序将超时。
8 L5 K& a% k# f# V+ k1 S
微信图片_20230410210109.png

0 i  F) w8 t2 b0 S# C, ]: Y; E结果演示; s, T. v& {1 ?  ]
    下载完程序后,可以看到串口打印固件版本等信息。

8 Z" R* C9 j! n2 Q, h
微信图片_20230410210105.png
. A8 y5 X  f& R$ O! Q8 C  W
    打开ST BLE ToolBox软件,可以看到该蓝牙已经可以搜索到。

$ p7 t# f* l$ b, ^% P1 R
微信图片_20230410210059.jpg
% k2 f1 h1 g% x# D4 ?
    点击connect进行连接。
    连接之后可以看到串口打印了连接事件。

- m8 I8 p) N/ N' u
微信图片_20230410210053.png

4 c. K. p" I) r; m: }1 \3 _; C
    同时手机也显示该蓝牙模块连接成功。

# Q3 @, b$ V0 C4 L) ]
1.jpg
- y' X/ [3 z% t6 a9 A% i
    让后我们试着读取他。

; i4 J3 Y& p% _4 t: \/ w
微信图片_20230410210041.png

' I/ r1 T3 P0 R" \" g0 ?
    可以看到已经成功读取出来。

) w, Y% C1 A8 I% F& _2 {) F$ B
微信图片_20230410210036.jpg
! U) j. A3 e% H/ M; G: W; S9 h
    同时串口在每次读取时候都会进行打印。

* K3 S$ Y5 K! q7 j! E7 |% j$ ?
微信图片_20230410210033.png
" e. p: |& {" g( _' ~' ]. V. _% d" @! A
    若注释掉,则无法读取。
+ }8 Q2 o0 G! L2 D% d
微信图片_20230410210029.png
+ b) O8 f+ X. ~' l" ~
微信图片_20230410210024.jpg

4 W; H  m! o  l) O
转载自:记帖
如有侵权请联系删除- g4 X3 G0 P, {  l7 h4 L4 k

  Y# m& v% i2 {# ]: b3 ]; H
赞 收藏 评论0 发布时间:2023-4-10 21:02

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版