本应用笔记将指导用户完成基于 STM32WL 系列微控制器构建特定 LoRa®应用程序所需的所有步骤。
LoRa®是一种无线通信网络,旨在以极低的比特率进行远距离通信,并延长电池供电型传感器的寿命。LoRaWAN®定义了通信和安全协议,此协议会确保与 LoRa®网络的互操作性。
STM32CubeWL MCU 软件包中的固件兼容 LoRa Alliance®规范协议 LoRaWAN®,并具有以下主要特性:
-可直接集成应用程序
-低功耗 LoRa®解决方案的简易附加组件
-CPU 负载极低
-无延迟要求
-STM32 存储器占用空间小
-低功耗定时服务
STM32CubeWL MCU 软件包的固件基于 STM32Cube HAL 驱动程序。
本文提供了有关带 STM32WL55JC 的 NUCLEO-WL55JC 开发板(适于高频段的订购代码为 NUCLEO-WL55JC1,适于低频段的订购代码为 NUCLEO-WL55JC2)和带 STM32WL5M 的 B-WL5M-SUB1 连接扩展板的客户应用程序示例。
为了充分利用本应用笔记中的信息并创建应用程序,用户必须熟悉 STM32 系列微控制器、LoRa®技术,并了解低功耗管理和任务排序等系统服务。
STM32CubeWL 在基于 Arm® Cortex®-M 处理器的 STM32WL 系列微控制器上运行。
STM32CubeWL 概述
STM32CubeWL MCU 软件包的固件包括以下资源:
板级支持包:
‒STM32WL_Nucleo 驱动程序
‒B-WL5M-SUBG1 驱动程序
STM32WLxx_HAL_Driver
中间件:
‒LoRaWAN 包含:
LoRaWAN 层
LoRa 实用程序
LoRa 软件密码引擎
LoRa 状态机
‒包含无线电和 radio_driver 接口的 SubGHz_Phy 层中间件
LoRaWAN 应用程序:
‒LoRaWAN_AT_Slave(单核及双核)
‒LoRaWAN_End_Node(单核、双核、使用 FreeRTOS 的单核以及使用 FreeRTOS 的双核)
SubGHz_Phy 应用程序:
‒SubGHz_Phy_PingPong(单核及双核)
‒SubGHz_Phy_Per(单核)
‒SubGHz_Phy_AT_Slave(单核)
‒SubGHz_Phy_LrFhss(单核)
另外,此应用程序还提供与以下设备的高效系统集成:
调度器,用于在后台执行任务并在没有活动时进入低功耗模式
定时器服务,为应用提供在 RTC 上运行的虚拟定时器(在停止和待机模式下)