nrf52810为nordic支持蓝牙 5.0性价比最高的一款芯片,不过这个芯片的rom不得不吐槽下,只有192KB,不知道为什么定了个192,而不是大家所熟悉的256KB,估计价格是个原因吧,15.2的协议栈中S112 softdevice占用了100KB,只剩92KB了,后面还要减掉bootloader的大小,所以给用户使用的空间并不大,15.2中pca10040e为52810的工程

原文:https://blog.csdn.net/htaijqq/article/details/84178119

nRF52832, 可以通过蓝牙、串口,USB 升级。

nRF52832 内存布局中,包含MBR,Soft device,Application, Application data, Bootloader, Bootloader Settings.

具体Flash布局参考: http://www.sunyouqun.com/2017/05/nordic-dfu-study/

编译环境和升级过程参考:https://blog.csdn.net/wulazula/article/details/78130954

nRF52832 对升级过程中的数据进行了加密和认证处理,具体过程参考:https://blog.csdn.net/oqqdake12/article/details/53928601

要启动bootloader,需要设置芯片的UICR 区域,UICR.BOOTLOADERADDR. 将bootloader 地址写入此区域。

具体命令:nrfjprog.exe --memwr 0x10001014 --val 0x00078000.

nrfjprog 一个python 的程序,安装过程参考上面所提文章。0x10001014  是 UICR.BOOTLOADERADDR 地址。0x00078000 是14.2.0 SDK版本中bootloader 区域地址。

原文:https://blog.csdn.net/weixin_38051349/article/details/80074799

nRF52832的UICR
UICR(User information configuration registers)是保存用户特殊设置的非易失存储寄存器(NVM:Non-volatile memory),UICR与Flash的不同的是只有通过全片擦除后才能重新写入,不能单独擦除。

UICR寄存器组:
NRFFW[14:0]:为Nordic固件保留,与DFU的设计有关。
NRFHW[11:0]:为Nordic硬件件保留。
CUSTOMER[31:0]:为用户保留。
PSELRESET[1:0]:选择nReset连接的引脚位置(并不是所有引脚都支持),两个寄存器值必须一致nReset才有效,否则没有nReset引脚。
APPROTECT:使能或禁止Access Port 保护功能。
NFCPINS:设置NFC引脚为GPIO还是NFC。
nRESET和NFC PIN
默认在system_nrf52.c中通过宏CONFIG_NFCT_PINS_AS_GPIOS和CONFIG_GPIO_AS_PINRESET控制打开或关闭nRESET和NFC PIN的功能。在擦除和烧写后的首次程序运行的时候,SystemInit()函数根据宏定义设置会先根据宏定义写UICR寄存器。

Bootloader
在Bootloader的程序中NRF_UICR->NRFFW[0]储存的是Bootloader的地址。

原文:https://blog.csdn.net/weixin_40643581/article/details/78980997

最新文章

  1. 配置Spark on YARN集群内存
  2. LeetCode之Binary Tree Level Order Traversal 层序遍历二叉树
  3. 最大乘积 Maximun Product
  4. Asp.net Core WebApi 全局异常类
  5. HashMap的key装换成List
  6. application/xml和text/xml的区别
  7. webform 转 MVC 飞一般的感觉
  8. Java如何让异常处理机制更完备规范
  9. Scala-循环
  10. spring、struts整合
  11. Java经典案例之-“最大公约数和最小公倍数”
  12. Codility---EquiLeader
  13. tensorflow l2_loss函数
  14. [HNOI 2003]激光炸弹
  15. JMeter3.0启动日志报错WARN - org.jmeterplugins.repository.Plugin: Unable to load class解决方法
  16. python print 在windows上 出现 Bad file descriptor error
  17. GWAS: 曼哈顿图,QQ plot 图,膨胀系数( manhattan、Genomic Inflation Factor)
  18. codeforces 777C
  19. css 渐变动画
  20. Python3.5 学习十九 Django分模块讲解 MTV+URL

热门文章

  1. SSIS 抽取excel出错:所请求的 OLE DB 访问接口 Microsoft.ACE.OLEDB.12.0 尚未注册
  2. Zeppelin的入门使用系列之使用Zeppelin运行shell命令(二)
  3. MapReduce错误之Error: java.lang.RuntimeException: java.lang.NoSuchMethodException的解决方法
  4. C# Mutex互斥锁
  5. MYSQL查询~ 存在一个表而不在另一个表中的数据
  6. web标准、可用性、可访问性
  7. npm使用快速的安装源(nrm)
  8. python之元组,列表和字典的区别
  9. github的pull Request使用
  10. 一点对原生HTTP请求的理解与总结