NCS初探--搭建Linux下VSCode开发环境

笔者使用的是Ubuntu18.04版本,推荐使用更高版本的Ubuntu。

1.IDE与插件

笔者使用的Ubuntu 18.04,先下载VSCode,然后在拓展中搜索nRF:

直接安装nRF Connect for VS Code Extension Pack这个插件,注意VSCode的版本要新。否则会提示版本低无法安装。这个安装包其实是一个拓展集合,里面包含了8个NCS需要的拓展插件。安装完之后可以在侧边栏看到它:

2.开发工具

开发NCS需要使用git、cmake、python、gcc、等等很多工具,安装这些工具可以使用以下指令:

wget https://apt.kitware.com/kitware-archive.sh
sudo bash kitware-archive.sh

sudo apt install --no-install-recommends git cmake ninja-build gperf \
  ccache dfu-util device-tree-compiler wget \
  python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file \
  make gcc gcc-multilib g++-multilib libsdl2-dev

安装完成后,可以查看主要几个工具的版本:

cmake --version
python3 --version
dtc --version 

如果你的工具安装的很慢,换国内源可以快很多:

 在软件和更新中选择其他国内站点:

比如我这里选择的aliyun的国内镜像站点,可以根据你自己IP所在地就近选择站点:

更改后最好重启一下,否则有可能不生效。 

然后安装west工具,它是专门用作Zephyr项目的管理工具,有很多方便的功能,安装步骤如下:

pip3 install --user -U west
echo 'export PATH=~/.local/bin:"$PATH"' >> ~/.bashrc
source ~/.bashrc

因为west里面封装的有git,所以可以使用west更新项目,首先在~目录创建ncs文件夹,然后更新代码:

mkdir ~/ncs

west init -m https://github.com/nrfconnect/sdk-nrf --mr main

这里 --mr 后面跟的是版本tag,比如你要基于1.9.1版本开发,可以使用:

west init -m https://github.com/nrfconnect/sdk-nrf --mr v1.9.1

这个更新速度要看你的具体网速,因为这个项目初始化并不完整,所以一半不会很慢。在初始化完成后,才是下载项目具体文件:

west update

这个更新就比较慢了,更新完成后,整个文件夹我压缩zip有1.7G,如果你的网速很慢,建议用其他方法:

https://www.cnblogs.com/iini/p/14174427.html

但是注意,如果想使用最新的NCS,只能由github上更新。

安装完成后,需要安装python相关模块,在ncs文件夹下使用:

python3 -m pip install --upgrade pip

pip3 install --user -r zephyr/scripts/requirements.txt
pip3 install --user -r nrf/scripts/requirements.txt
pip3 install --user -r bootloader/mcuboot/scripts/requirements.txt

我第一次使用Ubuntu18.04自带的python3.6.9会有很多问题,感觉python版本最好高一点,否则会有很多错误。但是更新python版本也可能带来其他问题。所以推荐使用的Ubuntu版本高一点。

最后是安装工具链:

下载工具链:

Arm GNU Toolchain | Arm GNU Toolchain Downloads – Arm Developer

比如我这里下载的:

下载完成后解压到用户根目录下:

在用户目录下创建一个文件:

touch ~/.zephyrrc

在这个文件内输入:

export ZEPHYR_TOOLCHAIN_VARIANT=gnuarmemb
export GNUARMEMB_TOOLCHAIN_PATH="~/gnuarmemb/gcc-arm-11.2-2022.02-x86_64-arm-none-eabi"

这里第一个变量不要变,第二个变量随你的工具链安装目录来。 

这个文件会被ncs/zephyr/zephyr-env.sh所使用。但是这里有很坑的一点,这个脚本每次要编译前都要运行一遍。当然如果加入到系统环境变量中:

sudo vi /etc/environment

这样是可以永久生效,但是使用VSCode在编译工程时会显示在~/gnuarmemb/gcc-arm-11.2-2022.02-x86_64-arm-none-eabi/这个文件夹下找不到对应工具。所以这样修改无效,而想要使用VSCode,必须要在使用:

source ~/ncs/zephyr/zephyr-env.sh

的窗口内启动一个VSCode:

code 

3.IDE使用

在侧边栏点击插件,然后打开一个起始页,如果自动打开了一个起始页就不用再打开一个了,然后点击快速启动。 

 

可以看到dtc版本比要求版本低,但是这个是内核自带的版本,如果更改版本不知道会不会有问题,所以就将就着使用了。 而gn这个工具是使用matter才用得上,我这里没有安装。

然后在左侧的APPLICATIONS那里打开一个项目:

选择文件夹:

然后点击构建配置:

主要就是选择开发板和配置文件:

点击应用后会自动构建一次。 

然后烧写进单片机即可:

点击连接开发板,一个开发板可能有多个串口,请根据实际情况选择:

在底下终端窗口那里选择对应的终端:

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值