XIAO nRF54L15 with PlatformIO

PlatformIO 介绍
PlatformIO 是一个强大且高度可扩展的嵌入式系统开发生态系统。它无缝集成了对大量开发板和微控制器的支持,提供了无与伦比的灵活性。PlatformIO 的突出之处在于其卓越的可扩展性:即使您的特定开发板没有原生支持,其架构也允许直接进行自定义开发板定义。
至关重要的是,PlatformIO 为熟悉 Arduino 的开发者搭建了桥梁,通过简单地包含相关库,就能编译和部署 Arduino 风格的代码。本指南将引导您完成为 XIAO nRF54L15 设置 PlatformIO 的过程,并演示如何编译、上传和监控示例代码,使复杂的 Zephyr RTOS 开发变得非常容易上手。
为 XIAO nRF54L15 设置 PlatformIO
按照以下简化步骤配置您的开发环境,并在 XIAO nRF54L15 Sense 上部署您的第一个应用程序。
为 VS Code 安装 PlatformIO IDE 扩展
如果您还没有安装,请直接在 Visual Studio Code 中安装 PlatformIO IDE 扩展。这个强大的扩展将 VS Code 转换为一个全面的嵌入式开发环境。
-
打开 VS Code。
-
转到扩展视图(Ctrl+Shift+X 或 Cmd+Shift+X)。
-
搜索 "PlatformIO IDE" 并点击安装。
创建新的 PlatformIO 项目
这里您可以选择任何一个开发版本来创建项目文件,我以 XIAO ESP32 C3 为例。
操作一 | 操作二 |
---|---|
![]() | ![]() |
为 XIAO nRF54L15 Zephyr 支持配置 platformio.ini
一旦您的项目创建完成,请在项目根目录中找到 platformio.ini 文件(在左侧的 VS Code 资源管理器中可见)。此文件是您的 PlatformIO 项目配置的核心。

操作三 |
---|
您需要将 platformio.ini 文件的全部内容替换为以下配置:
[env:seeed-xiao-nrf54l15]
platform = https://github.com/Seeed-Studio/platform-seeedboards.git
framework = zephyr
board = seeed-xiao-nrf54l15

操作四 |
---|
您需要将 cMakeLists.txt 的内容替换为以下配置
set(BOARD_ROOT "$ENV{ZEPHYR_BASE}/../../platforms/Seeed Studio/zephyr")
cmake_minimum_required(VERSION 3.13.1)
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(blinky)
target_sources(app PRIVATE ../src/main.cpp) # If the main source file is.c, please change it to src/main.c
然后重新保存 platformio.ini 文件(Ctrl+S 或 Cmd+S)并等待其完全加载。
如果您之前下载了其他 XIAO 库,必须在修改 platform.ini 文件并重新下载所需库之前手动删除它们。
Mac 路径:
/Users/YourName/.platformio/platforms
Windows 路径:
C:\Users\000.platformio\platforms\Seeed Studio

编译并上传您的第一个闪烁示例
现在,让我们用经典的"闪烁"示例来测试您的设置。此代码将切换 XIAO nRF54L15 上的内置 LED。
将您的 src/main.cpp(或 src/main.c)文件的内容替换为以下与 Zephyr 兼容的 C 代码:
接下来我们使用此代码进行编译和烧录
/*
* Copyright (c) 2016 Intel Corporation
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/kernel.h>
#include <zephyr/device.h>
#include <zephyr/drivers/gpio.h>
#include <nrfx_power.h>
/* 1000 msec = 1 sec */
#define SLEEP_TIME_MS 1000
/* The devicetree node identifier for the "led0" alias. */
#define LED0_NODE DT_ALIAS(led0)
static const struct gpio_dt_spec led = GPIO_DT_SPEC_GET(LED0_NODE, gpios);
int main(void)
{
int ret;
bool led_is_on = true;
nrfx_power_constlat_mode_request();
if (!gpio_is_ready_dt(&led)) {
return -1;
}
ret = gpio_pin_configure_dt(&led, GPIO_OUTPUT_ACTIVE);
if (ret < 0) {
return ret;
}
while (1) {
ret = gpio_pin_set_dt(&led, (int)led_is_on);
if (ret < 0) {
return ret;
}
led_is_on = !led_is_on;
k_msleep(SLEEP_TIME_MS);
}
return 0;
}
现在,通过 USB 将您的 XIAO nRF54L15 连接到计算机。在 VS Code 中:
-
构建:点击 VS Code 底部 PlatformIO 工具栏中的"构建"图标(对勾),或使用 PlatformIO 侧边栏:PROJECT TASKS -> your_project_name -> General -> Build。
-
上传:构建成功后,点击 PlatformIO 工具栏中的"上传"图标(右箭头),或使用 PlatformIO 侧边栏:PROJECT TASKS -> your_project_name -> General -> Upload。

操作五 |
---|
终端中的输出应该显示成功的编译和烧录过程。
观察结果
上传成功后,您的 XIAO nRF54L15 的内置 LED 应该开始以 1 秒的间隔闪烁。

技术支持与产品讨论
感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。