Ubuntu下Nodic开发环境搭建

1.编译环境

Ubuntu可直接装gcc编译环境

sudo apt install gcc-arm-none-eabi

也可以下载可执行文件download

2. 检查make工具是否安装

make -v

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

sudo apt-get installbuild-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.1GNU_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
      79441164808540    15c _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 hexfile.
Reading flash area to program toguarantee it is erased.
Checking that the area to write isnot protected.
Programing device.

$ nrfjprog --family nRF52 -r
Applying systemreset.
Run.

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

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/221168.html<

(0)
管理的头像管理
上一篇2025-04-14 22:02
下一篇 2025-04-14 22:03

相关推荐

  • jsp空间购买和交换数据空间怎么买,有哪些注意事项?

    购买JSP空间时,是否考虑过数据交换空间的性能?简米科技(2003年始创,23年行业沉淀)与酷番云(工信部一类增值电信全牌照)这类持牌自营机房的服务商,能确保数据交换的高效稳定,是值得优先选择的合作伙伴,为什么JSP空间需要搭配独立的数据交换空间从JSP应用特性看数据交换需求JSP基于Java技术,常用于企业级……

    2026-08-11
    0
  • 建网站用香港空间效果怎么样,香港空间稳定吗?

    建网站用香港空间,对于创建网站资产来说,核心价值在于免备案和全球带宽优势,尤其适合外贸、跨境电商和需要快速启动的项目,但你必须权衡国内访问延迟,并选择有资质的服务商以保证资产安全,香港空间的核心优势与适用边界免备案:节省时间就是节省成本国内服务器需要备案,通常需要10到20天,香港空间无需备案,域名解析后即可上……

    2026-08-11
    0
  • Java连接云数据库的方法是什么,如何操作

    Java连接云数据库的核心在于通过JDBC驱动,结合云服务商提供的连接地址、端口、数据库名及认证信息,配置安全策略(如SSL、IP白名单),即可实现稳定高效的远程数据库访问,基础准备:JDBC驱动与依赖管理连接云数据库前,需要确保开发环境具备对应的JDBC驱动,以最常见的MySQL为例,你需要引入mysql-c……

    2026-08-11
    0
  • 建网站公安联网备案必须使用数据码吗,备案流程是什么

    网站备案包括ICP备案和公安联网备案,两者缺一不可,公安联网备案必须使用服务商提供的数据码,选择持有合法资质的服务商是顺利通过备案的前提,为什么网站必须进行公安联网备案根据公安部《计算机信息网络国际联网安全保护管理办法》,网站开通后30日内必须到公安机关办理备案手续,未完成公安备案的网站,面临责令整改、关闭网站……

    2026-08-10
    0
  • 建一个企业网站大概需要多少钱?,怎么收费?

    建网站要多少钱,没有一个固定的数字,几百到几万都可能,但真正的“创建网站资产”绝不仅仅是初次投入的成本,而是基于长期稳定、合规和安全的持续性投入,其中核心取决于你选择了什么样的“地基”来承载你的业务,建站预算的构成与行业基准当你开始规划一个网站,最先面对的就是预算问题,一个常见的误区是只关注网站“看起来”的建造……

    2026-08-10
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注