0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32WB55_NUCLEO开发(8)----授权

嵌入式单片机MCU开发 来源:嵌入式单片机MCU开发 作者:嵌入式单片机MCU开 2022-11-18 10:09 次阅读

概述

本篇文章主要介绍如何使用STM32CubeMX对生成STM32WB工程,并通过与STM32WB配对,应用程序对客户端读取或者写入特征值进行授权。

硬件准备

首先需要准备一个开发板,这里我准备的是NUCLEO-WB55RG 的开发板: 在这里插入图片描述

源码下载

https://download.csdn.net/download/qq_24312945/85076398

开启ATTR_PERMISSION_AUTHOR_READ

在配置界面中,开启ATTR_PERMISSION_AUTHOR_READ,即需要授权才可以进行读取。 在这里插入图片描述

同时开启GATT_NOTIFY_READ_REQ_AND_WAIT_FOR_APPL_RESP事件,当客户端每次进行读取尝试的时候,会产生一个EVT_BLUE_GATT_READ_PERMIT_REQ事件。 在这里插入图片描述 配置完毕重新生成代码。 在这里插入图片描述

代码配置

添加打印,方便查看是否执行了该代码段。 在这里插入图片描述

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 程序将超时。

在这里插入图片描述

结果演示

下载完程序后,可以看到串口打印固件版本等信息在这里插入图片描述 打开ST BLE ToolBox软件(APP在群内有615061293),可以看到该蓝牙已经可以搜索到。 在这里插入图片描述 点击connect进行连接。 连接之后可以看到串口打印了连接事件。 在这里插入图片描述

同时手机也显示该蓝牙模块连接成功。 在这里插入图片描述 让后我们试着读取他。 在这里插入图片描述 可以看到已经成功读取出来。 在这里插入图片描述 同时串口在每次读取时候都会进行打印。 在这里插入图片描述 若注释掉,则无法读取。 在这里插入图片描述在这里插入图片描述

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    25

    文章

    5032

    浏览量

    97372
  • stm32cubemx
    +关注

    关注

    5

    文章

    283

    浏览量

    14791
  • STM32WB55
    +关注

    关注

    0

    文章

    26

    浏览量

    1322
收藏 人收藏

    评论

    相关推荐

    STM32WB55RG开发(5)----监测STM32WB连接状态

    STM32WB系列微控制器代表了STMicroelectronics在无线技术领域的新一代创新,集成了Bluetooth 5.0、Zigbee和Thread等多种无线通信协议。而在这些无线应用中
    的头像 发表于 12-16 16:22 139次阅读
    <b class='flag-5'>STM32WB55</b>RG<b class='flag-5'>开发</b>(5)----监测<b class='flag-5'>STM32WB</b>连接状态

    STM32WB55RG开发(3)----生成 BLE 程序连接手机APP

    本项目旨在利用 STM32WB55 微控制器的蓝牙低功耗(BLE)功能,实现与手机 APP 的无线连接。通过配置时钟源、启动关键模块(如 RCC、RTC、RF、IPCC 和 HSEM),以及启用蓝牙功能,用户可以创建一个稳定的 BLE 连接。此连接可用于数据交换和远程控制等应用场景。
    的头像 发表于 12-16 16:06 119次阅读
    <b class='flag-5'>STM32WB55</b>RG<b class='flag-5'>开发</b>(3)----生成 BLE 程序连接手机APP

    STM32WB55RG开发(1)----开发板测试

    STM32WB55 & SENSOR是一款基于STM32WB55系列微控制器的评估套件。该套件采用先进的无线通信技术,支持Bluetooth® 5.3规范、IEEE
    的头像 发表于 12-16 15:39 393次阅读
    <b class='flag-5'>STM32WB55</b>RG<b class='flag-5'>开发</b>(1)----<b class='flag-5'>开发</b>板测试

    请问STM32WB55RG怎么配置GPIO输入模式?

    在CubeMX中配置STM32WB55的GPIO输入模式时,在下拉选择中为何没有输入模式选择?
    发表于 05-23 07:58

    STM32WB thread启动错误是什么原因导致的?

    STM32Cube_FW_WB_V1.3.0ProjectsP-NUCLEO-WB55.NucleoApplicationsBLE_ThreadBle_Thread_Static 硬件环境:STM32WB nucleo 使用
    发表于 04-16 08:01

    P-NUCLEO-WB55.USBDongle开发板升级FUS和无线协议栈失败的原因?

    按照官网提供的下面步骤 升级P-NUCLEO-WB55.USBDongle单板的FUS和无线协议栈后,单板在sw2 to boot0下,stm32cubeprogrammer选择usb模式无法再识别
    发表于 04-16 06:59

    STM32WB55用zigbee信号强度太弱的原因?

    STM32WB55 用zigbee信号强度太弱。用官方开发板也是一样。 规格书里面说是 “可编程输出功率高达+6 dBm 步长为1 dB” 但是没有具体怎么操作。 如果信号还是太差,是不是需要重新外接PA
    发表于 04-11 08:00

    stm32wb55为什么无法进入stop模式?

    请教大家,我是用stm32wb55 ,PA0口外接按键。需要实现如下功能,按键按下后进入stop模式,再次按下后唤醒,目前的情况是,调用EnterStopMode后,无法进入stop
    发表于 04-03 07:24

    STM32WB55的SFSA被设置为0了能更改吗?

    STM32WB55的SFSA被设置为0了怎么办,能更改吗?
    发表于 04-03 06:33

    STM32WB55进入standby会自动复位的原因?怎么解决?

    STM32WB55跑FreeRTOS。第一次进入Standby模式会自动复位重启(不是system reset),之后就能正常的进入Standby模式并唤醒。
    发表于 03-28 06:24

    ST-LINK Utility无法连接到P-NUCLEO-WB55.NUCLEO板是为什么?

    ST-LINK Utility 版本 目标开发板是P-NUCLEO-WB55NUCLEO64 板,跳线使用STLink供电; 问题是:连接不上开发板,按照UM2550文档操作到下
    发表于 03-26 08:08

    NUCLEO-WB55RG的ADC对外有多少个通道呢?

    请问这块板子NUCLEO-WB55RG的ADC对外有多少个通道呢,在详情页面没有找到。此外,这个板子所使用的芯片的ADC的通道数是非常容易查询的,是19个。
    发表于 03-20 07:55

    NUCLEO-WB55RG烧录程序能烧进去但是无法运行是怎么回事?

    请问NUCLEO-WB55RG烧录程序能烧进去但是无法运行是怎么回事
    发表于 03-19 07:37

    P-NUCLEO-WB55板载STLINK识别不到是怎么回事?

    申请的嵌入式比赛的板卡P-NUCLEO-WB55,刚拿到手准备调试,但是发现板载STLINK无法识别,排查了驱动和电脑以及数据线的问题,后面用自己买的STLINK烧录器后能够连接上,是不是板载STLINK坏掉了哦
    发表于 03-18 07:55

    NUCLEO-WB55RG更新了FUS,在CubeIDE里无法烧录怎么解决?

    板子是NUCLEO-WB55RG,那天尝试了一下FUS更新,后来在CubeIDE里无法烧录,也无法连接到CubeProg,图片如下,ST-link的电压为0V,尝试更改mode为hot plug,power down均无效,其他人也遇到了该问题,目前未解决
    发表于 03-14 07:40