nrf51822 DFU 空中升级教程
来源:互联网 发布:3d定制女仆2各项数据 编辑:程序博客网 时间:2024/05/17 01:05
使用SDK版本:nRF51_SDK_9.0.0_2e23562
测试软件: nrf master
本次使用的例程为 ble_app_hrs 心率例程,路径为 \nRF51_SDK_9.0.0_2e23562\examples\ble_peripheral\ble_app_hrs\pca10028\s110_with_dfu ;
这个实例已经添加好了dfu服务,所以不用自己再添加;实例中使用的芯片为32KB RAM的,如果用16 kb RAM 需要进行修改;
修改如下:
由于s110 已经占用8k的ram,所以此处的ram起始地址为0x20002000,应用程序剩下的只有8K,所以就将size改为0x2000;
下载程序到开发板上运行,首先下载蓝牙sofedevice,如出现错误,先将芯片进行擦除,再下载应用程序,打开软件,此时应该可以搜到蓝牙信号,连接蓝牙,此时可以
看到服务中有dfu服务,但此时进行升级会出现错误,是由于还没有烧录bootloader;
下面进行bootloader的修改和烧录:
打开例程:\nRF51_SDK_9.0.0_2e23562\examples\dfu\bootloader
编译下载:
如果使用的是AC型号的,此时就程序就可以正常运行;但此时AA,AB发现下载的时候发现收不到蓝牙信号。此时同样要进行修改:
编译下载,测试:
使用nrf master 搜索设备:此时可以搜到 DFU的设备名字,
连接:
点击右上角的DFU,弹出选项框
点击OK,弹出文件选择框
这里选择nordic安装目录下面自带的压缩文件,确定,弹出升级进程界面
升级结束后,提示断开连接
此时,重新搜索蓝牙信号发现现在显示的是
到这里,整个升级过程结束。
但还有一些问题,前面下载了应用程序,bootloader,softdevice,但是搜索蓝牙信号时发现应用程序没有启动,直接启动DFU程序,要想直接启动应用程序还得修改一个地方,
找到bootloader程序中的bootloader_setting.文件
修改结束!
接下来如何创建升级包:
使用的是nrfutil.exe 软件,将要升级的应用程序拷贝到同一目录下,新建批处理文件:
内容如下:
保存退出,双击批处理文件运行
- nrf51822 DFU 空中升级教程
- nrf51822 ---空中升级(DFU)
- nrf51822 DFU升级
- nrf51822空中升级资料
- 蓝牙nrf51822空中升级
- 蓝牙nrf51822空中升级
- NRF51822 SDK12的空中升级
- SDK 14 Secure DFU Procedure---nordic 52832空中升级笔记
- nrf51822-添加DFU服务
- nrf51822-添加DFU服务
- NRF518522 DFU升级步骤
- nRF52832 — DFU升级
- netduino制作dfu升级文件
- OAD 空中升级
- APP空中升级原理
- android 空中OTA升级
- da14580-SUOTA 空中升级
- nrf51822 创建DFU的镜像文件方法
- Google-hosts
- 继承和派生2
- JAVA中StringBuffer类常用方法详解
- IntelIj 使用
- 武士道的精神,就是死(转自知乎)
- nrf51822 DFU 空中升级教程
- LruCache缓存
- apk二次打包
- linux工具---用qemu调试linux内核
- DbgridEh数据导出到Excel的方法(Delphi)--适用Ehlib7.0+D7
- UINavigationController 界面跳转情况
- JS获取页面鼠标点击位置的坐标
- c++如何获取系统当前时间
- Kodi ——4 Windows窗口