参照官方文档,在 WSL on windows
和 Ubuntu
系统均成立。
一些板子默认的烧录工具为 nrfjprog
,访问nRF Command Line Tools安装
一些板子默认的烧录工具为 pyocd
,如无意外,会在安装依赖时自动安装上。
手动则使用 pip3 install pyocd
来安装。安装时,可使用 pip3 install -i <src>
指定国内源提升速度。
pip国内源
阿里源: https://mirrors.aliyun.com/pypi/simple/
清华源: https://pypi.tuna.tsinghua.edu.cn/simple/
中科大源: https://pypi.mirrors.ustc.edu.cn/simple/
Ubuntu 下安装 nrfjprog
Ubuntu 下使用 ln -s <src> <des>
命令在 /sbin
创建 nrfjprog
的软链接 (注意 src
应当使用绝对路径),支持安装 deb
包的系统可以直接使用 sudo dpkg -i <deb>
安装
WSL
环境下可能缺少依赖,需要手动安装 sudo apt install libtinfo5 libncurses5
使用 west init
的包可以拷贝至其他环境,避免重复下载耗费大量时间
west zephyr-export
在 WSL
环境可能无法使用,可以考虑按照官方给出的方式手动编译或者跳过此步。ps. Ubuntu下正常requirements.txt
里缺少 pyelftools
工具,需要手动安装 pip3 install pyelftools
,否则最后无法编译。WSL
无法识别到宿主机的 USB
,所以无法在 WSL
环境中烧录建议在 Ubuntu 环境下开发,免去许多奇怪的问题。
指定开发板为官方支持开发板 nrf52832_mdk
,使用 west
编译官方例程 blinky
如下:west build -p auto -b nrf52832_mdk samples/basic/blinky
指定开发板为官方支持开发板 nrf52840dongle_nrf52840
,使用 west
编译官方例程 blinky
,如下:west build -p auto -b nrf52840dongle_nrf52840 samples/basic/blinky
默认烧录工具为 pyocd
,Ubuntu上可以正常使用 pyocd
+ cmsis-dap
的组合直接运行 west flash
进行烧录。
默认烧录工具为 nrfjprog
,Ubuntu上可以正常使用 nrfjprog
+ jlink
的组合直接运行 west flash
进行烧录。
已知问题:pyocd
识别不到 jlink
,可以使用 pyocd
+ cmsis-dap
或者 nrfjprog
+ jlink
的组合进行烧录
使用 west debug
启动 GDB
使用 west debugserver
启动 GDB server