找回密码
 立即注册
  • QQ空间
  • 回复
  • 收藏

ubuntu下编译烧录nordic芯片

admin 2019-4-16 05:07 118人围观 Linux相关



点击蓝字关注我们

#ubuntu下编译烧录nordic芯片

具体参考官方说明:

http://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.meshsdk.v2.0.1%2Fmd_doc_getting_started_getting_started.html

##一 操作环境
        目标系统: ubuntu16.4
        开发板: PCA10040nordic52832

##二 环境安装

###安装 nRF5x Command Line  Tools 工具:
1,下载 https://www.nordicsemi.com/eng/nordic/download_resource/58852/27/55084982/94917
2,解压 /usr/nRF5x-Command-Line-Tools_9_7_2_Linux-x86_64/
3, 设置环境变量:
$ sudo gedit /etc/profile
把path添加到文件中
export PATH=/usr/nRF5x-Command-Line-Tools_9_7_2_Linux-x86_64/mergehex:$PATH
export PATH=/usr/nRF5x-Command-Line-Tools_9_7_2_Linux-x86_64/nrfjprog:$PATH
$ source /etc/profile
$ nrfjprog -v
nrfjprog version:9.7.2
JLinkARM.dll version:6.22d

###安装SEGGER J-Link Software Package 工具:
1,下载 https://www.segger.com/downloads/jlink/JLink_Linux_x86_64.tgz
2,解压 /usr/JLink_Linux_V632_x86_64
3,设置环境变量 同上把变量添加到文件中去
export PATH=/usr/JLink_Linux_V632_x86_64:$PATH
4,添加软链接 ln -s /usr/JLink_Linux_V632_x86_64/libjlinkarm.so /usr/lib/libjlinkarm.so
(目的是为了防止使用nrfprog的时候报错提示没有JLinkarm.dll文件)
5,source /etc/profile 更新源
6,验证

###安装cmake工具
1,下载 https://cmake.org/files/v3.11/cmake-3.11.1-Linux-x86_64.sh
2,解压到 /usr/cmake-3.11.1-Linux-x86_64/
3,添加环境变量 xport PATH=/usr/cmake-3.11.1-Linux-x86_64/bin:$PATH
4,source /etc/profile 更新源
5,验证 cmake --version

###安装toolchain工具链
$ sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa
$ sudo apt-get update
$ sudo apt-get install gcc-arm-embedded

###安装Python 首先安装 virtualenv (类似于沙盒 )
$sudo apt-get install virtualenv
$ mkdir /usr/virtualenvs
$ virtualenv -p python3 /usr/virtualenvs/mesh
切换环境
$ source /usr/virtualenvs/mesh/bin/activate
检查
$ which python
-- /home/<user-name>/virtualenvs/mesh/bin/python
$ which pip
-- /home/<user-name>/virtualenvs/mesh/bin/pip
取消切换环境
$ deactivate
如果需要开机就切换的话, 把他加入到 /home/jhe/.bashrc 中

###安装用于构建单元测试的其他工具
sudo apt-get install gcc-multilib
sudo apt-getinstall ruby

###================环境搭建完毕================###

##三,编译文件
下载 nrf5_SDK_for_Mesh_v2.0.1_src nRF5_SDK_15.0.0_a53641a 到/home/jhe/file/mesh/下解压
$cd /home/jhe/file/mesh/nrf5_SDK_for_Mesh_v2.0.1_src
$ mkdir build & $ cd build
$ cmake -DGENERATE_SES_PROJECTS=ON -DPLATFORM=nrf52832_xxAA -DSOFTDEVICE=s132_6.0.0 ../
# make
或者生成 codeblock工程文件
$ cmake ../ -G "CodeBlocks - Unix Makefiles"
     用codeclock软件打开工编译。[具体参考本博客写的codeblock工程环境搭建]
最后生成的hex文件在 /home/jhe/file/mesh/nrf5_SDK_for_Mesh_v2.0.1_src/build/examples/xxx/xxx.hex 下面。

###================程序编译完毕================###

###烧录程序
链接开发板
$ nrfjprog --family nRF52 -e //擦除芯片
$ nrfjprog --family nRF52 --program softdevice_xxaa.hex //烧录softdevice
$ nrfjprog --family nRF52 --program ap_xxaa.hex //烧录ap程序
$ nrfjprog --family nRF52 -r //Applying system reset. run ...

###=============番外篇之======================###

###A 合成一个hex文件

###B 生成bin文件

###note



物联网信息交流群 QQ:985441916


喜欢这篇文章可以点击下方在看让更多人看见


----------------------------------------------------------------------------------------------------------------------
我们尊重原创,也注重分享,文章来源于微信公众号:灵思科,建议关注公众号查看原文。如若侵权请联系qter@qter.org。
----------------------------------------------------------------------------------------------------------------------

鲜花

握手

雷人

路过

鸡蛋

yafeilinux和他的朋友们微信公众号二维码

微信公众号

专注于Qt嵌入式Linux开发等。扫一扫立即关注。

Qt开源社区官方QQ群二维码

QQ交流群

欢迎加入QQ群大家庭,一起讨论学习!

我有话说......


关于进行手机实名认证的紧急通知!
按照有关部门要求,论坛类网站必须完成手机实名认证才可以进行发帖等操作。希望大家积极配合,为创建一个和谐文明的社区而贡献自己的力量。我们会对会员的隐私进行严格保密,对大家造成的不便深表歉意! 我知道了