nrf ncs环境安装(nrf connect sdk)

开发你的第一个nRF Connect SDK(NCS)/Zephyr应用程序 - iini - 博客园

nRF Connect SDK安装与入门 - Nordic Semiconductor中文官网

[VS Code系列] VS Code 1: 安装_哔哩哔哩_bilibili

ncs v2.7.0安装教程与开发环境搭建 附带toolchain离线安装包与sdk离线安装包_ncs开发环境搭建-CSDN博客

JFrog

主页 | OLIB

 

一、使用vscode

Nordic nRF Connect SDK(NCS) && VS Code 安装记录 - K_Code - 博客园

按照该方法安装时,从百度网盘下载SDK:开发你的第一个nRF Connect SDK(NCS)/Zephyr应用程序 - iini - 博客园

 文章中提到的设置NCS SDK路劲时:

 新版本的nRF Connect for VS Code插件已经没有这个设置项了,通过如下方式指定自定义NCS SDK路劲:

 点击:

 来设置自定义SDK路劲:

 工具链可以使用vscode下载或者使用离线工具链:

 这里设置的工具链的上一级路劲:

toolchains.json的内容如下:

复制代码
[
  {
    "default_toolchain": {
      "ncs_version": "v2.8.0"
    },
    "schema": 1,
    "toolchains": [
      {
        "identifier": {
          "bundle_id": "2d382dcd92"
        },
        "ncs_versions": [
          "v2.8.0"
        ]
      }
    ]
  }
]
复制代码

toolchains.json文件要和工具链匹配,vscode会读取该json文件内容来找工具链,整个安装完成后重启vscode,如果ncs插件没起作用,那么把插件卸载后重装

更改工具链目录后重启vscode

 

要查看ncs的工具链使用的zephyr sdk版本可以在编译信息中找到:

 可以看出当前ncs2..8.0工具链中使用的zephyr sdk版本是0.16.8

 

如果设置了环境变量,那么环境变量也需要修改为对应的路劲,否则出错:

 

 其中ZEPHYR_SDK_INSTALL_DIR用来设置Zephyr自定义工具链地址,在编译项目时可以选择使用zephyr的工具链还是ncs的工具链:

当然zephyr sdk的工具链最好和ncs中zephyr sdk的工具链保持一致,这样两个工具编译出来的hex文件保持一致。

 

 编译的时候可以选择使用sysbuild或者no sysbuild:

 

二、west命令行方式(以v2.8.0为例)

1)下载nrf connect sdk,使用nrf编译好的网盘中的版本

链接: https://pan.baidu.com/s/1FKTfY3Q_zBVvviO7KC7Gyg#list/path=%2Fblog   密码: y8fb

解压后放在任意盘符:

 

2)下载window环境下zephyr编译工具链

https://github.com/zephyrproject-rtos/sdk-ng/releases/

 解压后放在C盘:

 

3)设置环境变量

 

 4)按照文章开发你的第一个nRF Connect SDK(NCS)/Zephyr应用程序 - iini - 博客园中的步骤安装工具:

 其中python使用 choco install python312方式安装特定的版本,不能安装最新版本

 

5)打开cmd/power shell进入到ncs仓库,按照文章开发你的第一个nRF Connect SDK(NCS)/Zephyr应用程序 - iini - 博客园中的方式安装其它软件包:

 第一个与第二个依赖包安装的较久,第三个所需的包在第一二个安装完成后基本已经满足

 

6)测试验证

复制hello world到任意位置,在hello world中打开cmd/ps使用west build -b nrf5340dk_nrf5340_cpuapp_ns -d build -p编译工程,稍微修改了下原工程的代码:

复制代码
/*
 * Copyright (c) 2012-2014 Wind River Systems, Inc.
 *
 * SPDX-License-Identifier: Apache-2.0
 */

#include <zephyr/kernel.h>
#include <zephyr/logging/log.h>
#include <stdio.h>
#include "myfunc.h"

LOG_MODULE_REGISTER(main,  LOG_LEVEL_DBG);

int main(void)
{
    int count1 = 20;
    int count2 = 30;

    while (1)
    {
        count1++;
        int sum = mysum(count1, count2);
        // printf("Hello World! %s, sum = %d\n", CONFIG_BOARD_TARGET, sum);
        LOG_INF("Hello World! %s, sum = %d", CONFIG_BOARD_TARGET, sum);
        // LOG_ERR("hello error");
        // LOG_WRN("hello warning");
        // LOG_DBG("hello debug");
        k_sleep(K_SECONDS(1));
    }

    return 0;
}
复制代码

 

 

 编译成功后使用west flash下载:

 打开串口查看数据输出:

 

其它:

 zephyr工具链最新0.18版本的目录结构与早期的不同:

 如果使用0.18版本的工具链会导致编译出错,原因是generic.cmake的路劲不同

 ncs仓库中的zephyr中定义的工具链路劲为:

 如果不修改zephyr仓库中定义的工具链路劲的话,那么需要使用0.17版本,不能使用0.18版本,或者更新zephyr仓库,看看最新版本的zephyr是否重新定义了工具链的路劲

 

安装问题汇总:

zehpyr 搭建开发环境遇到的一些问题_west build-CSDN博客

 

cmake注册表信息:

 

posted @   yeshenmeng  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示