hardfault保存数据总结
nodic NRF52840的内存分析
https://blog.csdn.net/wanjietiam/article/details/104575622
NORDIC nRF52840 ROM与RAM 开始地址及大小设置 (keil 环境)
Nordic系列芯片讲解二(Nordic协议栈以及应用层存储分布)
https://blog.csdn.net/wulazula/article/details/80277590
初识Nordic 52840
https://blog.csdn.net/xiaolongba/article/details/80580559
ARM Cortex-M底层技术(1)—程序在Flash和SRAM的空间分配
https://www.cnblogs.com/39950436-myqq/p/11387179.html
ARM指令集中经常使用的存储和载入指令
https://www.cnblogs.com/mfrbuaa/p/4354591.html
ARM汇编,将1~10连续存入以0x04005000起始的地址空间。
https://zhidao.baidu.com/question/1733533238262325027.html
Code 代表执行的代码,程序中所有的函数都位于此处。
RO-data 代表只读数据,程序中所定义的全局常量数据和字符串都位于此处。
RW-data 代表已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。
ZI-data 代表未初始化的读写数据,程序中定义了但没有初始化的全局变量和静态变量位于此处。
ROM size:也就是下载到单片机FLASH中的数据为Code +RO-data +RW-data 和的大小。为什么不把ZI-data 也下载进去呢? 其实是没有必要的,这是浪费空间,只要程序一上电运行就会把ZI-data 自动清0。
RAM size: 程序运行时所需要的大小空间为 RW-data+ ZI-data
Cortex-M4架构https://www.veryarm.com/113730.html
cortex-m4知识点总结 https://www.docin.com/p-2217547484.html
Cortex-M3的工作模式和特权级别
https://blog.csdn.net/SlowIsFastLemon/article/details/104674031
ARM——汇编指令集
https://blog.csdn.net/wangguchao/article/details/98475680
Cortex-M4有两个堆栈指针寄存器MSP和PSP,具体用哪一个寄存器作为
堆栈指针是由CONTROL寄存器的SPSEL位决定的
SPSEL = 0时,MSP作为堆栈指针
SPSEL = 1时,PSP作为堆栈指针
MSP异常模式下使用的堆栈指针,
PSP是在线程模式(也就是正常模式)下使用的堆栈指针