Silicon Labs Proprietary Flex SDK v3.x 为开发者提供了两条应用开发路径:一是基于 RAIL(Radio Abstraction Interface Layer)直接开发自定义无线协议,二是基于 Silicon Labs Connect protocol stack 快速构建低功耗简单网络应用。本文档聚焦于使用 Simplicity Studio 5(SSv5)和 Flex SDK v3.x 在 EFR32 器件上创建、配置和运行 RAIL 示例应用的完整流程。Documentation Index
Fetch the complete documentation index at: https://mintlify.com/dsyx/docs.silabs.com_zh/llms.txt
Use this file to discover all available pages before exploring further.
产品概述
Silicon Labs RAIL
直观、通用的无线电接口层,支持 proprietary 或 standards-based 协议实现。作为库提供,链接到应用程序中使用。
Silicon Labs Connect
功能全面、易于自定义的无线网络解决方案,针对低功耗简单网络拓扑优化,包含完整 MAC 层功能。
Gecko Bootloader
可配置的 bootloader,支持通过内部或外部存储器中的更新映像(
.gbl 格式)执行固件更新。Gecko Platform
包含 EMLIB、EMDRV、RAIL Library、NVM3 和 mbedTLS 等底层驱动和组件,直接与 Silicon Labs 芯片交互。
选择开发路径
如果您需要以下功能,建议从 Connect 示例开始:- MAC 层功能(跳频、安全性)
- 网络形成和星型网络、路由支持
- Application-level 功能(诊断、I/O、邮箱、sleepy end device 管理)
- 引导加载(包括 serial 和 OTA)
先决条件
在开始之前,请确认:- 已购买 Wireless Gecko (EFR32) Portfolio Wireless Kit
- 已安装 Simplicity Studio 5 和 Flex SDK v3.x
- (可选)已安装 IAR Embedded Workbench for ARM(IAR EWARM),用于替代默认的 GCC 编译器
要获取 IAR 30 天评估许可证,请访问 Silicon Labs 支持门户,进入 Software Releases > Development Tools 下载对应版本,安装后通过 License Wizard 注册评估许可证。
RAIL 示例应用说明
Flex SDK 包含以下主要 RAIL 示例应用:(RAIL) RAILtest
(RAIL) RAILtest
RAIL 库的通用测试工具,包含所有 RAIL 功能的串行命令,支持:
- 发送和接收数据包
- 在 RAIL 时基中调度传输
- 配置地址过滤
- 启用 CCA 机制(CSMA/LBT)
- 更改传输信道和功率级别
- 输出连续 unmodulated tone 或 modulated PN9 stream
- 进入 Direct Mode(使用异步 GPIO 收发数据)
(RAIL) Simple TRX
(RAIL) Simple TRX
演示基于 RAIL 的最简单发送和接收功能,适合快速验证基本无线连通性。
(RAIL) Simple TRX with Auto-ACK
(RAIL) Simple TRX with Auto-ACK
演示两个节点之间最简单的交换发送和确认操作。
(RAIL) Simple TRX Multi-PHY
(RAIL) Simple TRX Multi-PHY
演示使用可通过信道选择的多个 PHY。默认信道 0 配置为 2.4 GHz/250 kbps,信道 1 配置为 915 MHz/500 kbps。
(RAIL) Range Test
(RAIL) Range Test
在两个设备之间使用 user-defined 参数进行无线范围测试,设计为在 WSTK 硬件上独立运行(无需 host computer 命令),支持测试期间移动。
(RAIL) Energy Mode
(RAIL) Energy Mode
演示 EFR32 的低功耗模式(EM0 活动、EM1 睡眠、EM2 深度睡眠)。
(RAIL) Empty Example
(RAIL) Empty Example
最小化 RAIL 项目结构,用作自定义应用程序的起点。
创建 RAIL 项目
打开项目向导
打开 SSv5 的 File 菜单,选择 New > Silicon Labs Project Wizard,打开 Target, SDK, and Toolchain Selection 对话框。如需将编译工具链从默认 GCC 切换为 IAR,请在此处操作。确认配置后点击 NEXT。
选择示例应用
在 Example Project Selection 对话框中,使用 Technology Type 和 Keyword 过滤器搜索目标示例(如 RAILtest)。选中目标示例后点击 NEXT。
配置项目信息
在 Project Configuration 对话框中,可重命名项目、更改默认项目文件位置,以及选择是否链接或复制项目文件。点击 FINISH,开始生成项目文件。
如果更改任何链接的资源,引用该资源的其他项目也会同步变更。
查看和配置组件
项目将在 Simplicity IDE Perspective 中打开,同时 Project Configurator 显示在 OVERVIEW 选项卡。点击 SOFTWARE COMPONENTS 选项卡查看组件库。Flex SDK v3.x 采用 Gecko Platform component-based 架构,安装组件时会自动:
- 将 SDK 文件复制到项目文件夹
- 复制所有依赖项
- 添加新的 include 目录到项目设置
- 将配置文件复制到
/config文件夹 - 修改 auto-generated 文件以集成组件
配置无线电 PHY
在 SOFTWARE COMPONENTS 选项卡中,展开 Advanced Configurators 组件分组,选择 Radio Configurator,点击 Open。在 Radio Configurator 中:
- 选择无线电配置文件(profile)
- 选择预定义的无线电 PHY
- 如需自定义,打开 Customized 选项进行调整
radio_settings.radioconf 时,无线电配置将自动生成并保存到 /autogen/rail_config.h 和 /autogen/rail_config.c。Radio Configurator 中的更改不会自动保存,需要手动保存
radio_settings.radioconf 文件。编译和烧录应用程序
- 自动编译和烧录
- 手动编译和烧录
在 Simplicity IDE 中,直接点击 Debug 控件,系统将自动编译并将应用程序烧录到已连接的开发硬件。烧录完成后进入 Debug perspective,点击 Resume 启动应用程序运行。调试控件说明:
| 控件 | 功能 |
|---|---|
| Resume | 启动/继续运行 |
| Suspend | 暂停运行 |
| Disconnect | 退出调试模式 |
| Reconnect | 重新连接 |
与示例交互
根据示例应用,可以通过 WSTK 主板的按钮、LED、LCD 或 Console 界面(CLI)与应用程序交互。 启动 Console 界面:- 在 Simplicity IDE perspective 中,右键 Debug Adapters 视图中的调试适配器
- 选择 Launch Console(或从 Tools 图标选择 Device Console)
- 选择 Serial 1 选项卡,按回车键获取 CLI 提示符
在 RAILtest 应用中输入
help 可获取完整的 CLI 命令列表。
使用自定义板
使用自定义硬件板时,可采用以下两种方法:- 方法一:基于 WSTK 示例修改
- 方法二:仅选择器件
在 WSTK 上创建示例后,使用 Project Configurator OVERVIEW 选项卡中的 Change Target/SDK 控件移除 WSTK。这样保留原有套件接线,再通过 Pin Tool 按需修改引脚配置。
进阶工具
Multi-Node Energy Profiler
轻松测量设备运行时功耗。在 Simplicity IDE 中通过 Profile 菜单选择 Profile as / Simplicity Energy Profiler target 启动。支持同时测量多个设备,可查看峰值和平均功耗及睡眠模式电流。
Network Analyzer
免费的数据包捕获和调试工具,直接从 EFR32 SoC/Module 的 PTI(Packet Trace Interface)捕获数据包,提供网络流量的图形化视图,比 air-based 捕获更准确。
Simplicity Commander
通过 J-Link 接口刷写固件映像、擦除 flash、锁定/解锁调试访问及写保护 flash 页。提供 GUI 和 CLI 两种使用方式。
Radio Configurator
Simplicity Studio 内置工具,用于配置无线电 PHY 参数。配置结果自动生成
rail_config.c 和 rail_config.h 文件。