如何构建 STM32WBx5 微控制器的低功耗蓝牙® mesh 应用
本帖最后由 sunsili 于 2023-4-1 09:48 编辑【STM32WBx5应用笔记】如何构建 STM32WBx5 微控制器的低功耗蓝牙® mesh
应用AN5292 STM32单片机 2023-03-31 18:06 发表于澳大利亚
低功耗蓝牙®技术(BLE)-mesh 通过物联网(IoT)解决方案的 mesh 网络功能来连接多个低功耗技术器件。它通过嵌入式低功耗蓝牙通信技术将 STM35WBx5 产品集成到一个支持双向无线通信的强大且范围可扩展的 mesh 网络中。
该解决方案不仅包含用于安全通信的所有核心功能,还提供了构建应用所需的所有灵活性。它使用了支持 mesh 栈 APIs 和相关事件回调的 STM32WBx5 器件。软件开发套件(SDK)以库形式提供了 mesh 栈并以源代码的形式提供示例应用程序,以演示如何使用库。
BLE mesh 可用于需要通过低功耗蓝牙®技术在 mesh 网络中进行不频繁的数据传输的多种应用,以创建诸如以下分布式控制系统:
• 智能照明 • 家居和建筑自动化 • 工业自动化本应用笔记中的示例将与带演示示例的 P-NUCLEO-WB55 pack 一起使用。
演示示例用于更改应用接口,使用库实现所需的硬件和软件功能。演示应用可用于 P-NUCLEO-WB55 pack。演示应用实现了智能照明控制方案,并可以修改,以满足特定要求。
目录预览1 概述2 入门指南
3 固件结构4 使用BLE mesh演示5 固件初始化和配置6 Mesh 网络信息
1. 概述本文档适用于基于 STM35WBx5 Arm® 的微控制器。
2.入门指南本文档中的示例应用实现了智能照明控制方案。要修改应用,按顺序执行以下步骤:
第 1 步.将板连接到 PC
第 2 步.在 IDE 中编译固件
第 3 步.将固件刷写到板中
第 4 步.在 STM32WB-mesh 应用中配置板
第 5 步.使用应用程序切换板载 LED。
2.1 板接口
下表详细列出了 P-NUCLEO-WB55 pack 电源管理应用和用户接口,例如 LED 和按钮。
2.2 P-NUCLEO-WB55 套件板设置
使用 USB 线将主 P-NUCLEO-WB55 pack 板连接到主机 PC。该线缆用于两个目的: • 用于为 P-NUCLEO-WB55 pack 板供电;
• 在 PC 和 P-NUCLEO-WB55 pack 板之间建立一个串行数据链路。
P-NUCLEO-WB55 pack 板集成 ST-LINK/V2-1 调试工具/编程工具。可在 www.st.com 上获得 Microsoft®Windows®版的相关 STSW-LINK009 ST-LINK/V2-1 USB 驱动器版本。通用板布局如图 1. STM35WBx5 板与 PC 的连接中所示。
提示:确保将 STM35WBx5 升级为 BLE 栈版本 1.0.0 或更高版本。STM32 ST-LINK 实用程序 GUI 可用于管理更新。
图1. STM35WBx5 板与 PC 的连接
2.3 系统要求
设置和运行 BLE mesh 智能照明应用的最低系统要求为:
• 采用 Intel 或 AMD 处理器并运行以下 Microsoft 操作系统之一的 PC: – Windows®XP®– Windows®VISTA® – Windows 7® – Windows 10®
• 至少 128 MB RAM
• 2 个 USB 端口
• 有 40 MB 硬盘空间
• 开发工具链和编译器: – Keil® µVision® v5.23 – IAR Embedded Workbench v8.20.2
2.4 安装BLE mesh
安装BLE mesh,请执行以下步骤:
[*]将数据包的内容解压到临时目录中。
[*]启动安装程序并按照屏幕上的说明进行操作
[*]安装在磁盘驱动器上的适当文件夹中。
3.固件结构图2. 固件结构
固件包用以下结构构建,如上图所示:
• 文档文件夹,其中包含通过源代码生成的一组已编译的 HTML 文件以及所有软件组件和 API 的详细描述;
• 驱动文件夹,其中包含硬件抽象层(HAL)、用于支持硬件平台和组件的板特定驱动,以及 Cortex®-M 处理器系列与供应商无关的 CMSIS 硬件抽象层。
• 中间件文件夹,其中包含 mesh 和 BLE 通信库: – 层组件之间的水平交互是通过调用特征 APIs 来直接执行的,而与底层驱动程序的垂直交互是通过库系统调用接口中实现的特定回调函数和静态宏来管理的;– BLE mesh 库 v1.09.000 根据蓝牙 SIG mesh 配置文件 v1.0 和 mesh 模型 v1.0 规范构建,如图 3. BLEmesh 库架构中所述。
• 项目文件夹,其中包含 P-NUCLEO-WB55 pack 板的 IAR Embedded Workbench 集成开发环境的工作区;
• EWARM 文件夹,其中包含 IAR Embedded 工作区。文件夹中的源文件通过绑定固件层来实现演示 BLEmesh 的功能。
图 3. BLE mesh 库架构
图 4. 文件夹、子文件夹和数据包内容
页:
[1]