nrf52810学习笔记——二
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
最新文章
- 配置Spark on YARN集群内存
- LeetCode之Binary Tree Level Order Traversal 层序遍历二叉树
- 最大乘积 Maximun Product
- Asp.net Core WebApi 全局异常类
- HashMap的key装换成List
- application/xml和text/xml的区别
- webform 转 MVC 飞一般的感觉
- Java如何让异常处理机制更完备规范
- Scala-循环
- spring、struts整合
- Java经典案例之-“最大公约数和最小公倍数”
- Codility---EquiLeader
- tensorflow l2_loss函数
- [HNOI 2003]激光炸弹
- JMeter3.0启动日志报错WARN - org.jmeterplugins.repository.Plugin: Unable to load class解决方法
- python print 在windows上 出现 Bad file descriptor error
- GWAS: 曼哈顿图,QQ plot 图,膨胀系数( manhattan、Genomic Inflation Factor)
- codeforces 777C
- css 渐变动画
- Python3.5 学习十九 Django分模块讲解 MTV+URL
热门文章
- SSIS 抽取excel出错:所请求的 OLE DB 访问接口 Microsoft.ACE.OLEDB.12.0 尚未注册
- Zeppelin的入门使用系列之使用Zeppelin运行shell命令(二)
- MapReduce错误之Error: java.lang.RuntimeException: java.lang.NoSuchMethodException的解决方法
- C# Mutex互斥锁
- MYSQL查询~ 存在一个表而不在另一个表中的数据
- web标准、可用性、可访问性
- npm使用快速的安装源(nrm)
- python之元组,列表和字典的区别
- github的pull Request使用
- 一点对原生HTTP请求的理解与总结