空中升级DFU 是什么 ??
答:就好比你的现在的微信或者QQ 在线升级,原理是一样的 就是让产品有更好的 用户体验!
如果觉得对你有帮助就关注一下 ,不懂得留言一下,我会把我知道的都告诉大家。
协议栈版本:SDK11.0.0
编译软件:keil 5.16
硬件平台:nrf51822最小系统
例子:examples\ble_peripheral\ble_app_hrs\pca10028
思路就是: 把程序生成的hex文件 通过 hex2bin.exe 变成bin文件
Bin文件通过mastercontrolpanel.3.10.0.14 生成zip
之后通过APP手机把zip发给mcu
准备环境:
51822 我所用的是 16 KB 的
B:\SDK11.0\SDK11.0\examples\ble_peripheral\ble_app_hrs\pca10028\s130_with_dfu\arm5工程 配置如下: 32位的
Ram 16kb 如下图
之后编译 :找到.HEX文件 目录 (这里我是自己手动生成的)
nRF5_SDK_11.0.0_89a8197\examples\ble_peripheral\ble_app_hrs\pca10028\s130_with_dfu\arm5_no_packs
之后把这个hex 的文件 拖到hex2bin.exe 就会直接生成一个 bin文件
c.安装mastercontrolpanel.3.10.0.14.x64文件 ,直接点下一步下一步就ok,如果你的电脑请下载32位的文件
d.在生成的nrf51422_xxac_s130.bin放到C:\Program Files (x86)\Nordic Semiconductor\Master Control Panel\3.10.0.14\nrf目录下面。如下:
e.进入pc的cmd的命令,进入C:\Program Files (x86)\Nordic Semiconductor\Master Control Panel\3.10.0.14\nrf目录。
cd C:\Program Files (x86)\Nordic Semiconductor\Master Control Panel\3.10.0.14\nrf进入这个目录。
然后,输入
nrfutil.exe dfu genpkg --application nrf51422_xxac_s130.bin --application-version 0xFFFFFFFF --dev-revision 0xFFFF --dev-type 0xFFFF --sd-req 0xfffe (100) nrf51422_xxac_s110.zip 点击回车,结果如下。
在 C:\Program Files (x86)\Nordic Semiconductor\Master Control Panel\3.10.0.14\nrf这个目录
f.开打nrfgo_studio工具。分别先擦除,然后下载在softdevice 和 bootload(如下图1,2,3步骤)
然后用手机打开nrf_tool工具。进入dfu,选择如下。、
点SELECT DEVICE选择要升级的器件。如下选择DfuTarg
然后点击Upload 如下
最后升级成功如下:
方法二:Nrf Connect 软件教程
2点击链接 connect
3上面会出现一个dfu的小圈圈 点击dfu
4.把开始生成的zip考到手机里面 ,现在着这里找到路径
等待几秒
到达百分之百就OK了
参考论坛 :http://blog.csdn.net/a369000753/article/details/51153882