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

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

3天内不再提示

STM32WB55开发(2)----修改蓝牙地址

嵌入式单片机MCU开发 来源:嵌入式单片机MCU开发 作者:嵌入式单片机MCU开 2023-12-01 15:42 次阅读

概述

嵌入式蓝牙开发中,特别是针对STM32WB系列,修改或配置蓝牙设备地址是常见的需求。不论是为了实现特定的测试、满足隐私要求,还是为了区分开发和生产设备,对蓝牙地址的定制化处理都是至关重要的。本文将重点介绍如何利用aci_hal_write_config_data函数来成功地修改STM32WB的蓝牙地址。我们会详细探讨该函数的工作原理、所需的参数以及实际操作步骤,确保读者能够快速、高效地完成相关任务。
最近在弄ST和瑞萨RA的课程,需要样片的可以加群申请:615061293 。

硬件准备

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

视频教学

[https://www.bilibili.com/video/BV1sN411v7ag/

样品申请

[https://www.wjx.top/vm/OhcKxJk.aspx#m/OhcKxJk.aspx#)

完整代码下载

[https://download.csdn.net/download/qq_24312945/88295322

选择芯片型号

在这里插入图片描述

配置时钟

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
在这里插入图片描述

设置工程信息

在这里插入图片描述

工程文件设置

在这里插入图片描述

修改置BLE设备公共地址

设置公共地址的ACI命令为:
tBleStatus aci_hal_write_config_data(uint8_t offset, uint8_t len, const uint8_t *val).
在这里插入图片描述

修改方式如下所示。

在这里插入图片描述

Ble_Hci_Gap_Gatt_Init

这段代码主要用于初始化STM32WB系列的蓝牙(BLE)相关功能。

在这里插入图片描述

下面选中的函数可以修改BLE设备公共地址。
设置BLE公共地址:首先,获取BLE默认地址BleGetBdAddress,然后通过aci_hal_write_config_data函数使用预定义的地址(0xFF, 0xEE, 0xDD, 0xCC, 0xBB, 0xAA)覆盖它。
生成/设置静态随机地址:根据条件编译标志来确定是使用预定义的静态随机地址还是使用随机数生成器产生的地址。设置了正确的格式后,通过aci_hal_write_config_data将随机地址写入BLE控制器。

在这里插入图片描述

uint8_t bdaddr[] = {0xFF, 0xEE, 0xDD, 0xCC, 0xBB, 0xAA};
  ret = aci_hal_write_config_data(CONFIG_DATA_PUBADDR_OFFSET, CONFIG_DATA_PUBADDR_LEN, bdaddr);

结果演示

通过手机和STM32WB建立连接和断开连接可以查看到BLE地址如下。

在这里插入图片描述

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

    关注

    112

    文章

    5534

    浏览量

    166894
  • BLE
    BLE
    +关注

    关注

    12

    文章

    626

    浏览量

    58996
  • 地址
    +关注

    关注

    1

    文章

    31

    浏览量

    10666
  • STM32WB55
    +关注

    关注

    0

    文章

    25

    浏览量

    1213
收藏 人收藏

    评论

    相关推荐

    STM32WB55开发(1)----套件概述

    所使用的器件是我们自行设计的开发板,该开发板是基于 STM32WB55 系列微控制器所构建。STM32WBXX_VFQFPN68 不仅是一款评估套件,它还集成了众多现代化的无线通信技术
    的头像 发表于 12-01 15:40 742次阅读
    <b class='flag-5'>STM32WB55</b><b class='flag-5'>开发</b>(1)----套件概述

    STM32WB55开发(4)----配置串口打印Debug调试信息

    STM32WB55系列微控制器上进行开发时,实时监控应用程序的运行情况和调试潜在问题是至关重要的。使用串口(USART/UART)进行Debug信息打印是一种简便、高效的方法。下面是如何在STM32WB55上配置串口来打印调试
    的头像 发表于 12-01 15:48 650次阅读
    <b class='flag-5'>STM32WB55</b><b class='flag-5'>开发</b>(4)----配置串口打印Debug调试信息

    STM32WB55开发板单板设计

    STM32WB55开发板(一)单板设计-硬件介绍目录STM32WB55开发板(一)单板设计-硬件介绍前言简介参数介绍MCU方面开发板方面
    发表于 08-06 08:15

    STM32WB55是如何在RT-Thread系统上移植的

    STM32WB55在RT-Thread系统上移植官方蓝牙BLE功能硬件环境:(1)开发板:ST官方的stm32wb55-st-nucleo开发
    发表于 08-24 07:20

    STM32WB55开发板的功能是什么?

    STM32WB55开发板的功能是什么?
    发表于 11-08 06:36

    STM32WB55的相关资料推荐

    STM32WB55 蓝牙协议栈运行流程解析简介STM32WB55是ST公司近期推出的一颗双核(M0+M4)无线MCU,主要应用在BLE领域,同时也可以运行thread和zigbee等无线协议栈。协议
    发表于 02-07 08:47

    如何控制stm32wb55的电源呢

    我想了解如何控制 stm32wb55 的电源。我正在运行来自最新 stm32cube 的 PWR_STANDBY_RTC 示例。在待机状态下,我正在读取 900 uA。这似乎很高。我应该期待什么?
    发表于 12-20 07:24

    请问STM32WB55如何修改CPU2区?

    STM32WB55如何修改CPU2区?
    发表于 12-28 13:18

    求助,谁能指出STM32WB55 Nucleo的蓝牙5.2堆栈?

    STM32WB55 Nucleo 的文档指出 5.2 堆栈可用(“附带”),但 STM32Cube_FW_WB_V1.11.0 中提供的 BT 堆栈是 5.0 堆栈...
    发表于 01-05 07:01

    stm32wb55 待机stop睡眠 唤醒后蓝牙工作不正常

    stm32wb55 待机stop睡眠 唤醒后蓝牙工作不正常? 进入待机睡眠,待机电流80微安那样,通过外部io口唤醒后,接着用手机的蓝牙连接上stm32wb55
    发表于 06-16 21:14

    STM32WB55单片机的PCB和电路图合集免费下载

    本文档的主要内容详细介绍的是STM32WB55单片机的PCB和电路图合集免费下载。
    发表于 12-16 08:00 67次下载
    <b class='flag-5'>STM32WB55</b>单片机的PCB和电路图合集免费下载

    STM32WB55开发板(一)单板设计-硬件介绍

    STM32WB55开发板(一)单板设计-硬件介绍目录STM32WB55开发板(一)单板设计-硬件介绍前言简介参数介绍MCU方面开发板方面
    发表于 12-01 18:06 16次下载
    <b class='flag-5'>STM32WB55</b><b class='flag-5'>开发</b>板(一)单板设计-硬件介绍

    STM32WB55 蓝牙协议栈运行流程解析

    STM32WB55 蓝牙协议栈运行流程解析简介STM32WB55是ST公司近期推出的一颗双核(M0+M4)无线MCU,主要应用在BLE领域,同时也可以运行thread和zigbee等无线协议栈。协议
    发表于 12-04 12:36 17次下载
    <b class='flag-5'>STM32WB55</b> <b class='flag-5'>蓝牙</b>协议栈运行流程解析

    STM32WB55在RT-Thread系统上移植官方蓝牙BLE功能

    STM32WB55在RT-Thread系统上移植官方蓝牙BLE功能硬件环境:(1)开发板:ST官方的stm32wb55-st-nucleo开发
    发表于 12-04 12:51 17次下载
    <b class='flag-5'>STM32WB55</b>在RT-Thread系统上移植官方<b class='flag-5'>蓝牙</b>BLE功能

    stm32wb55 基于rtt的ble sample制作过程

    stm32wb55 基于rtt的ble sample制作过程准备活动硬件stm32wb55 nucleo开发stm32wb55 dangle软件rtthread
    发表于 12-20 19:39 13次下载
    <b class='flag-5'>stm32wb55</b> 基于rtt的ble sample制作过程