码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • STM32WB55开发(1)----监测STM32WB连接状态


    STM32WB55开发----1.监测STM32WB连接状态

    • 概述
    • 硬件准备
    • 视频教学
    • 样品申请
    • 完整代码下载
    • 选择芯片型号
    • 配置时钟源
    • 配置时钟树
    • RTC时钟配置
    • 查看开启STM32_WPAN条件
    • 配置HSEM
    • 配置IPCC
    • 配置RTC
    • 启动RF
    • 开启蓝牙
    • LED配置
    • 设置工程信息
    • 工程文件设置
    • 参考文档
    • SVCCTL_App_Notification
    • 结果演示

    概述

    STM32WB系列微控制器代表了STMicroelectronics在无线技术领域的新一代创新,集成了Bluetooth 5.0、Zigbee和Thread等多种无线通信协议。而在这些无线应用中,监测和管理连接状态显得尤为关键。确保可靠连接不仅对于数据的实时传输至关重要,而且在面对低功耗需求、设备管理和故障诊断时,都有着不可或缺的作用。

    本文将深入探讨STM32WB的连接状态监测机制。我们首先会讨论为什么需要监测连接状态,然后介绍STM32WB提供的相关工具和技术。随后,我们会详细解释如何使用这些工具来实时跟踪和管理连接状态,以及如何解读和响应不同的连接状态事件。通过这些内容,读者将能够更好地理解和利用STM32WB的无线连接功能,为其应用带来更高的可靠性和效率。
    最近在弄ST和瑞萨RA的课程,需要样片的可以加群申请:615061293 。

    硬件准备

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

    视频教学

    https://www.bilibili.com/video/BV1Km4y1M7Ti/

    STM32WB55开发(1)----监测STM32WB连接状态

    样品申请

    https://www.wjx.top/vm/OhcKxJk.aspx#

    完整代码下载

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

    选择芯片型号

    在这里插入图片描述

    配置时钟源

    HSE与LSE分别为外部高速时钟和低速时钟,在本文中使用外置的时钟源,故都选择Crystal/Ceramic Resonator选项,如下所示:
    在这里插入图片描述

    配置时钟树

    在这里插入图片描述

    RTC时钟配置

    在这里插入图片描述
    RFWKP时钟配置

    在这里插入图片描述

    查看开启STM32_WPAN条件

    可以看到,需要开启RF、RTC、RCC、IPCC、HSEM。
    在这里插入图片描述

    配置HSEM

    硬件信号量(HSEM)模块用于管理多个进程之间共享的访问权限和资源同步。
    开启HSEM如下。
    在这里插入图片描述

    配置IPCC

    通信控制器(IPCC)模块的主要用于cpu之间的信号消息交换。
    开启如下所示。

    在这里插入图片描述

    配置RTC

    在这里插入图片描述

    启动RF

    在这里插入图片描述

    开启蓝牙

    在这里插入图片描述

    配置为自定义模板。
    在这里插入图片描述

    命名设备名

    在这里插入图片描述

    配置BLE GATT

    在这里插入图片描述

    配置SVC
    在这里插入图片描述

    LED配置

    查看原理图可以得知PB0为蓝色LED,PB1为绿色LED。

    在这里插入图片描述

    配置PB0、PB1为输出IO。

    在这里插入图片描述

    设置工程信息

    在这里插入图片描述

    工程文件设置

    在这里插入图片描述

    参考文档

    https://wiki.st.com/stm32mcu/wiki/Connectivity:STM32WB_HeartRate
    HCI_LE_CONNECTION_COMPLETE_SUBEVT_CODE事件可以判断是否构建完成。

    在这里插入图片描述

    SVCCTL_App_Notification

    SVCCTL_App_Notification函数是一个蓝牙事件处理器,用于响应和处理STM32WB BLE堆栈中发生的各种事件。
    事件处理的主要内容:

    1. 断开连接事件 (HCI_DISCONNECTION_COMPLETE_EVT_CODE)
    2. 元事件 (HCI_LE_META_EVT_CODE)
    3. 这部分处理了几个子事件,如HCI_LE_CONNECTION_UPDATE_COMPLETE_SUBEVT_CODE(连接更新完成)和HCI_LE_CONNECTION_COMPLETE_SUBEVT_CODE(新的连接建立完成)。
    4. 厂商特定调试事件 (HCI_VENDOR_SPECIFIC_DEBUG_EVT_CODE)

    “在HCI_LE_CONNECTION_COMPLETE_SUBEVT_CODE事件中,我们能够判断Bluetooth Low Energy(BLE)设备是否已成功建立了一个新的连接。相反,在HCI_DISCONNECTION_COMPLETE_EVT_CODE事件里,我们可以确认是否一个已存在的连接已经被断开。这两个事件为我们提供了监控BLE连接状态的重要手段,从而使我们能够更好地管理设备的连接生命周期。”

    在HCI_DISCONNECTION_COMPLETE_EVT_CODE中添加一个IO翻转函数。

          /* USER CODE BEGIN EVT_DISCONN_COMPLETE */
    			HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_1);
          /* USER CODE END EVT_DISCONN_COMPLETE */
    
    • 1
    • 2
    • 3

    在这里插入图片描述
    在HCI_DISCONNECTION_COMPLETE_EVT_CODE中添加一个IO翻转函数。
    在这里插入图片描述

    结果演示

    通过手机和STM32WB建立连接和断开连接可以查看到IO扣电平变化。

    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    如何在 Vue.js 和 Nuxt.js 之间做出选择?
    vscode搭建Verilog HDL开发环境
    13、Java——“21点”扑克游戏系统(变量+循环)
    实习生必学git以及详细下载安装步骤
    Spring Boot整合Zookeeper详细教程
    Node端异常捕获
    LDAP协议工作原理
    SpringCloud文件上传
    Android studio新版本多渠道打包配置
    多年锤炼,迈向Kata 3.0 !走进开箱即用的安全容器体验之旅| 龙蜥技术
  • 原文地址:https://blog.csdn.net/qq_24312945/article/details/132655295
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号