nRF52840是Nordic Semiconductor推出的一款功能强大的多协议SoC,广泛应用于物联网设备、可穿戴设备和低功耗蓝牙产品开发。本篇文章将详细介绍如何在VSCode中搭建完整的nRF52840开发环境,让您能够高效地进行嵌入式开发。
一、准备工作
稳定的网络环境
nRF52840开发板
安装J-Link 8.42版本
二、环境搭建
打开VSCode插件市场,搜索并安装"nRF Connect for VS Code Extension Pack"。这是由Nordic Semiconductor开发的扩展包,包含四款定制扩展和多个对nRF Connect SDK开发至关重要的工具:
扩展 | 用法 |
---|---|
nRF Connect | 开发、构建和测试 nRF Connect SDK 应用程序。 |
nRF DeviceTree | 以树状结构显示自定义硬件布局,并使用 Devicetree Visual Editor 进行编辑。 |
nRF Kconfig | 使用 Kconfig 图形界面查看和自定义配置选项。 |
nRF Terminal | 使用基于 UI 的接入点通过串行端口或 RTT 进行连接。 |
扩展包中还包括两个重要的插件,分别是:
- C/C++: C/C++ 语言支持,包括 IntelliSense、调试和代码浏览功能
- GNU Linker Map Files: 语法高亮和符号列表显示适用于 GNU 链接器.map 文件
三、设置SDK和工具链
1)设置SDK以及工具链的安装目录
首先,我们可以先设置一下SDK和工具链的安装目录(默认安装目录:c:\ncs
):
打开设置,搜索nRF Connect,找到
Nrf-Connect>Toolchain Manager:Install Directory
输入目录即可。
重启VSCode。
ℹ️ 如果目录中已安装工具链和SDK,重启VSCode后nRF Connect插件将自动识别它们。如果您的网络情况不佳,可以直接下载成品包,解压到此目录即可。
2)安装工具链
打开nRF Connect扩展,点击“Install Toochain”按钮
等待操作列表出现:
我们选择最新版,点击安装即可。根据网络情况,下载安装时间可能会有所不同:
⚠️ 注意:下载过程中请不要切换网络,否则会文件将重新下载并且最后会报错!(别问我怎么知道的…)
3)安装SDK
打开nRF Connect扩展,点击“Manage SDKs”
等待操作列表出现,点击所需要的版本:
设置下载安装目录:
开始下载安装,根据网络情况,下载安装时间可能会有所不同:
⚠️ 注意:下载过程中请不要切换网络,否则会文件将重新下载并且最后会报错!(别问我怎么知道的…)
四、创建工程
打开nRF Connect扩展,点击"Create a new application"
在弹出的菜单中,选择以下选型之一:
- 创建空白应用:这将创建一个应用,其代码结构需要您从头开始填充。
- 复制示例(推荐) :基于官方 SDK 示例快速启动开发。
- 浏览 nRF Connect SDK 附加组件:这将基于nRF Connect SDK的外部参考应用创建应用程序。这些参考应用遵循独立版本管理方案并使用自定义west工作区配置。您可以在在线应用索引中查看可用参考应用列表。
输入工作目录,工程文件将被创建在这里。
⚠️ 注意:在所选位置中不能已存在同名文件夹
完成后,VSCode将显示提示框,提供以下选项:
- Open:在当前VSCode窗口打开工程
- Open in New Window:在新VSCode窗口打开工程
- Add to Workspace:将新工程添加到当前工作区(仅在应用程序视图中已存在其他应用程序时可用)
ℹ️ 您可以通过配置
nrf-connect.defaultOpenAction
设置来指定VSCode打开应用程序时的默认操作。
五、构建、编译程序
工程创建完成后,接下来就是构建它了:
打开nRF Connect扩展,展开“APPLICATIONS”这一栏,点击“Add build configuation”:
此时右边会弹出“Add Build Configuration”页面:
在Board target中选择“nrf52840dk/nrf52840”:
可选操作:添加Kconfig片段和Devicetree覆盖文件。若未指定基础文件,构建系统将自动选择。
ℹ️ 对于第一个项目,我们可以什么也不做,等后面再熟悉。
可选操作:添加代码片段或CMake参数。有关CMake参数语法的详细信息,请参阅文档 Adding files and configuring CMake
在优化级别(大小、速度或调试) 中,选择使用项目默认值 。
⚠️ 注意:如果您需要调试,需要选择
Optimize for debugging (-Og)
然后我们点击最下面的“Generate and Build”按钮:
ℹ️ 这一过程可能需要一些时间,您可以在通知中或者终端里查看其进度。
构建完成后将显示操作界面,您可在此执行以下操作:
- 重新触发构建流程
- 烧录已生成的示例程序
- 启动调试会话
- 生成内存分析报告
构建文件将显示在以应用程序命名的详细信息视图中。
六、烧录和调试