zoukankan      html  css  js  c++  java
  • ubuntu下Nodic开发环境搭建

    ubuntu下Nodic开发环境搭建

    1.编译环境

    ubuntu可直接装gcc编译环境

    sudo apt install gcc-arm-none-eabi
    

    也可以下载可执行文件download

    2. 检查make工具是否安装

    make -v
    

    一般来说开发linux上的开发者都会安装,若没有安装的话,执行以下命令安装。

    sudo apt-get install build-essential checkinstall
    

    3. nRF5 SDK下载

    Nordic官方对nRF51、nRF52系列提供了SDK,SDK中提供了大量的BLE和ANT示例。可以在这里下载。我这边下在的是12.3.0版本的SDK。

    下载之后解压到自己习惯的目录中,然后修改Makefile.posix文件。

    vim  <SDK_PATH>/components/toolchain/gcc/Makefile.posix
    

    文件内容修改如下:

    GNU_INSTALL_ROOT := /usr/
    GNU_VERSION := 5.4.1
    GNU_PREFIX := arm-none-eabi
    

    需要注意的是,GNU_INSTALL_ROOT选项的目录指的是gcc-arm-none-eabi的安装位置(bin文件夹所在的目录),我直接用apt install安装的,所以直接用了"/usr/"。

    4. 编译一个示例

    在SDK的目录下打开一个示例文件夹

    cd nRF5_SDK_12.3.0/examples/peripheral/led_softblink/pca10040/blank/armgcc
    

    上面命令是打开一个led闪烁的例子,pca10040是我板子的版本.

    在该目录下运行"make",就会编译文件并生成二进制文件。

    $ make
    
    mkdir _build
    Compiling file: nrf_log_backend_serial.c
    Compiling file: nrf_log_frontend.c
    Compiling file: app_error.c
    Compiling file: app_error_weak.c
    Compiling file: app_timer.c
    Compiling file: app_util_platform.c
    Compiling file: led_softblink.c
    Compiling file: low_power_pwm.c
    Compiling file: nrf_assert.c
    Compiling file: sdk_errors.c
    Compiling file: boards.c
    Compiling file: nrf_drv_clock.c
    Compiling file: nrf_drv_common.c
    Compiling file: nrf_drv_uart.c
    Compiling file: nrf_nvic.c
    Compiling file: nrf_soc.c
    Compiling file: main.c
    Compiling file: RTT_Syscalls_GCC.c
    Compiling file: SEGGER_RTT.c
    Compiling file: SEGGER_RTT_printf.c
    Assembling file: gcc_startup_nrf52.S
    Compiling file: system_nrf52.c
    Linking target: _build/nrf52832_xxaa.out
    
       text    data     bss     dec     hex filename
          7944      116     480    8540    215c _build/nrf52832_xxaa.out
    
          Preparing: _build/nrf52832_xxaa.hex
          Preparing: _build/nrf52832_xxaa.bin
    

    如果执行make后输出跟上面一样,说明交叉编译gcc已经正确配置。下面就可以将文件烧录到板子中啦。

    5. Jlink驱动工具

    下载程序需要Jlink驱动工具,因此要先行安装。可以去这里下载J-link软件,并安装。对于ubuntu系统,可以直接下载deb安装包进行安装。

    6. nrfjprog工具下载

    这是Nordic提供的命令行固件烧录工具,既有windows版本也有linux版本。在这里下载。

    下载之后解压的到自己习惯的目录,然后将nrfjprog可执行文件所在路径添加到PATH路径中。之后输入"nrfjprog -v"查看是否配置正确。

    $ nrfjprog -v
    nrfjprog version: 9.7.2
    JLinkARM.dll version: 6.22d
    

    7. 下载程序到板子

    进入到这一步的话,需要的工具都已安装好,可以烧写程序进板子观察现象啦。

    $ nrfjprog --family nRF52 -e
    Erasing code and UICR flash areas.
    Applying system reset.
    
    $ nrfjprog --family nRF52 --program _build/nrf52832_xxaa.hex 
    Parsing hex file.
    Reading flash area to program to guarantee it is erased.
    Checking that the area to write is not protected.
    Programing device.
    
    $ nrfjprog --family nRF52 -r
    Applying system reset.
    Run.
    

    以上三个命令执行完毕,会看到板子上的四个led灯闪烁,说明烧写成功。现在整个编译烧写的流程也就走通啦。

  • 相关阅读:
    第六课 使用oflash软件烧写bin文件至开发板
    Linux查看、添加、修改PATH环境变量
    第七课 Linux裸机开发+SourceInsight3.5使用+notepad++使用
    第五课 Linux高级命令
    数组的方法总结
    浅谈 return false 和preventDefault stopPropagation stopImmediatePropagation 的正确用法
    实时统计输入的文字
    滚轮滚动事件
    window.onload和DOMReady
    JS获取浏览器可视区域的尺寸
  • 原文地址:https://www.cnblogs.com/gexin/p/8064582.html
Copyright © 2011-2022 走看看