ubuntu下编译烧录nordic芯片-灵思科

#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
    开发板: PCA10040 nordic52832 

##二 环境安装

###安装 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//virtualenvs/mesh/bin/python
$ which pip
-- /home//virtualenvs/mesh/bin/pip
取消切换环境
$ deactivate
如果需要开机就切换的话, 把他加入到 /home/jhe/.bashrc 中

###安装用于构建单元测试的其他工具

sudo apt-get install gcc-multilib
sudo apt-get install 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

你可能感兴趣的:(ubuntu下编译烧录nordic芯片-灵思科)