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博客
一、使用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注册表信息:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具