本文讲介绍Nordic系列芯片的烧录方式

一、准备工作

1、硬件

首先需要准备一块Nordic的DK或者Jlink,但是需要注意的是x宝购买的盗版Jlink因为没有license,用一段时间可能会被锁,且有些低版本的Jlink可能无法烧录M33内核的芯片,如nRF5340和nRF91系列,因此建议使用官方DK做Jlink来烧录自己的板子。因为官方DK上带有一个Jlink,且DK上的Jlink有正版license,可以稳定使用。

nRF51/52系列,可以使用nRF52832的DK来烧录,DK代号是PCA10040。nRF5340和nRF91系列需要Jlink支持烧录M33内核的芯片,因此必须要nRF5340或者nRF9160的DK来烧录,这里推荐使用nRF5340的DK来烧录nRF5340和nRF91系列,DK代号是PCA10095。

DK上的Jlink默认连接的是DK上的芯片,如果要做Jlink外接烧录自己的板子,需要在DK的VDC和VTG插针上插一个跳帽即可。

需要在DK的VDC和VTG插针上插一个跳帽后就可以将2.54mm的杜邦线或者1.27mm的排线插在DK上,然后将VCC、GND、SWD、SWC四个脚接到自己的板子上即可。

2、软件

烧录程序有两种方法,一种是使用nRF Connect for Desktop中的Programmer插件。nRF Connect for Desktop。

注意:老的nRFgo Studio已经停止更新,DTM控制,程序下载等功能已经全部迁移到nRF Connect for Desktop中,因此建议使用nRF Connect for Desktop。

下载地址:https://www.nordicsemi.com/Products/Development-tools/nRF-Connect-for-desktop/Download?lang=en#infotabs

下载安装完成后,打开nRF Connect for Desktop,安装Programmer插件。

如果安装完成后存在界面不显示插件的问题,可参考此文章解决:https://blog.csdn.net/MEMORY_2016/article/details/117512713

另一种方法是使用nrf jprog命令来烧录,使用nrf jprog需要安装nRF Command Line Tools。

下载地址:https://www.nordicsemi.com/Products/Development-tools/nrf-command-line-tools/download

安装完成后打开 cmd 使用nrfjprog 命令来测试工具是否安装成功

在cmd界面输入 nrfjprog -v 可以看到 nrfjprog的版本

注意:使用nrfjprog需要安装J-Flash,若电脑没有安装J-Flash,烧录会提示报错。

二、程序烧录

1、 使用nRF Connect for Desktop

打开Programmer插件,点击SELECT DEVICE识别DK。

(1)点击ADD HEX file添加hex固件

(2)点击Erase & write,全片擦除并写入固件,这样应用程序的固件就烧录完成

2、使用nRF jprog烧录

将路径切换到固件的文件夹下。

使用 nrfjprog -f NRFxx --program xxxxxx.hex 即可下载固件,还可以后面加入校验命令 “--verify”。

所以输入 nrfjprog -f NRFxx --program xxxxxx.hex --verify 就可以实现下载并校验,下载完成后会提示Verified OK。

如上图所示

在上面这条命令中 NRFxx表示烧录的芯片对应的系列

如果要烧录nRF51系列 此处的参数应为“NRF51”

同理NRF52系列参数为“NRF52”

NRF5340参数为“NRF53”

NRF91系列参数为“NRF91”

而xxxxxx.hex为应用程序的固件名称

三、制作批处理实现一键烧录

因为可以使用nrfjprog命令行烧录程序,我们可以将这些命令打包成批处理的形式,实现一键烧录的效果。

1、新建一个文件夹,在文件夹下新建两个.txt的文本,并将.txt改为.bat,文件名称可以修改为批量烧录.bat和prohAll.bat

2、 以文本形式编辑批量烧录.bat文件,将以下代码拷贝到文件中。

@echo off

setlocal enabledelayedexpansion

set "a=0"

:loop

set /a "a=!a!+1"

echo 烧录总数:!a!

start "" /b /wait "progAll.bat"

goto loop

点击另存为以ANSI编码保存(使用UTF编码会出现乱码) 。

3、 以文本形式编辑prohAll.bat文件,将以下代码拷贝到文件中。

@echo off

echo ------------------------------------------------------------------

echo 已烧录完成,请更换模块并敲回车键!

echo ------------------------------------------------------------------

pause & exit

点击另存为以ANSI编码保存。

4、 接下来在prohAll.bat中添加要处理的nrfjprog命令

在@echo off下添加一条擦除Flash的命令

nrfjprog.exe –eraseall

保存后,将DK的SWD接口与需要烧录的板子接线连接,打开批量烧录.bat,将可以看到命令已经执行,重复敲击键盘上的任意按键,批处理文件可以记录已烧录的数量。

5、继续在prohAll.bat中添加烧录固件的nrfjprog命令:

nrfjprog.exe -f NRFxx --program xxxxxx.hex --verify(xxxxxx.hex为固件名称)。

此命令的详解已经在上面有详细介绍,此处不再做赘述。

这里需要的注意的是nRF91系列Modem的固件也可以通过此方式烧录,只需要把xxxxxx.hex换成xxxxxx.zip即可。(Modem固件为.zip,可以去Nordic官网下载)

Modem固件下载地址:

https://www.nordicsemi.com/Products/nRF9160/Download?lang=en#infotabs

然后将固件放在prohAll.bat的文件夹下。

以上截图中的文本实现了烧录nRF9160的Modem固件,然后擦除nRF9160的Flash,最后烧录nRF9160的application固件。

6、保存后,将DK的烧录接口与需要烧录的板子接线连接,打开批量烧录.bat,将可以看到已经执行了烧录Modem和擦除Flash,烧录应用程序并校验的命令。

注:上面只是演示完整步骤,仅供参考。如果只是烧录nRF51\52\5340,或者nRF91系列没有更新Modem的需求,则无需执行Modem烧录步骤。

以上就是批处理的制作方法,使用批处理文件可以在产线上实现快速一键烧录,在4-6小节的基础上,可以继续添加其他的nrfjprog命令,添加的方式参考4-6小节即可。

Nordic芯片烧录指南的更多相关文章

  1. 芯片烧录器编程AT24C02

    网上买了两款芯片烧录器,因为项目用的到.芯片以后的类型可能是IIC 接口的.就选则了一个IIC接口的AT24C02EEPROM.进行尝试.手头上没有这款芯片. 就想起自己单片机上有这款芯片.然后就开始 ...

  2. nordic芯片开发——烧写方法记录

    在开发nordic芯片的时候,分为存外设开发和结合softdevice开发,另外还有结合mbr的开发(这个暂时没有深究)在裸机开发的时候,sdk里面称为blank,把芯片的程序erase之后,直接下载 ...

  3. Nordic nRF51/nRF52开发流程说明

    Nordic nRF51系列包括nRF51822/nRF51422/nRF51802等芯片,nRF52系列包括nRF52832/nRF52840/nRF52810等芯片,硬件工程师可以按照如下流程去评 ...

  4. nRF24LE1/nRF31512烧录驱动开发

    一丶协议分析 这两种芯片都是programming through SPI,烧录要用到的引脚有 SPI_MOSI_Port :数据输入: SPI_MISO_Port :数据输出: SPI_SCLK_P ...

  5. Nordic nRF51/nRF52开发环境搭建

    本文将详述Nordic nRF51系列(包括nRF51822/nRF51802/nRF51422等)和nRF52系列(包括nRF52832/nRF52810/nRF52840)开发环境搭建. 1. 强 ...

  6. 如何理解nRF5芯片外设PPI

    PPI,英文全称Programmable Peripheral Interconnect,是Nordic独有的外设,其设计目的是让CPU处于idle模式下外设与外设之间也能完成相应通信,从而降低系统功 ...

  7. STVP烧录教程

    可以运行独立的烧录软件ST Visual Programmer (STVP)进行STM8芯片烧录.运行“开始”->ST Toolset->Development Tools -> S ...

  8. NORDIC BLE升级

    NRF52832 SDK15.3.0 概述: 所谓DFU(Device Firmware Update),就是设备固件升级的意思,而OTA是DFU的一种类型,准确说,OTA的全称应该是OTA DFU, ...

  9. 基于STM32L4的开源NBIOT开发资料

    基于STM32L4的开源NBIOT开发资料 1. 参考路径:http://www.stmcu.org/module/forum/forum.php?mod=viewthread&tid=615 ...

  10. 走进STM32世界之Hex程序烧写

    多数51单片机(STC系列单片机)的初学者都知道,在51单片机初上电时,可以通过PC机上位机软件将程序引导至bootloader,从而将新程序的hex文件下载至单片机中,完成程序的升级或是更新.在32 ...

随机推荐

  1. HDFS相关问题处理

    机房搬迁后datanode启动失败,报错如下: 2022-10-21 10:28:40,551 INFO org.apache.hadoop.hdfs.server.common.Storage: L ...

  2. nginx二进制安装脚本

    #!/bin/bash NGINX_FILE=nginx-1.22.0#NGINX_FILE=nginx-1.20.2#NGINX_FILE=nginx-1.18.0NGINX_URL=http:// ...

  3. k8s配置ingress的https访问

    一.部署步骤 1.安装nginx-ingress-controller 2.创建secret绑定证书 3.创建测试服务 4.创建ingress 5.测试https访问 二.安装nginx-ingres ...

  4. 理解 Linux 文件权限

    理解 Linux 文件权限 缺乏安全性的系统不是完整的系统.系统中必须有一套能够保护文件免遭非授权用户浏览或修改的机制.Linux 沿用了 Unix 文件权限的办法,即允许用户和组根据每个文件和目录的 ...

  5. JXS的基本使用

    1.导入react和react-dom两个包 import React from 'react' import ReactDOM from 'react-dom' 2使用JSX创建react元素 3. ...

  6. 12.1linux学习第十二 天

    8.2 Iptables 在早期的Linux系统中,默认使用的是iptables防火墙管理服务来配置防火墙.尽管新型的firewalld防火墙管理服务已经被投入使用多年,但是大量的企业在生产环境中依然 ...

  7. 中值滤波 ordfilt2函数

    滤波是过滤掉信号中没用的波段 ordfilt2函数语法格式为:B=ordfilt2(A,order,domain)B=ordfilt2(A,order,domain,S)B=ordfilt2(..., ...

  8. .Net Core 前后端分离 DevOps 系列

    前言: 目录: Linux 安装脚本之乌班图版本 Linux Nginx部署 DevOps安装步骤

  9. 安装SQL Server 2008 R2出现的问题及解决方法(配合Visual Studio )

    学校的一个作业需要SQL Server,所以就安装一个,没想到还真是有不少问题 总结:遇到问题,取消安装,完全删除(注册表啥的,小心,细心),重新安装. tips:彻底删除SQL Server应用及组 ...

  10. OSS 解锁

    一.解开LSKEYF00的编辑锁定  进入SE30,点击Tips & Tricks按钮,输入以下代码     UPDATE PROGDIR SET EDTX = ''       WHERE ...