iar保存某页不被擦除
cc2530最大页128页 每页2K 256KB的地址是从0x00000H ------0x3FFFFH 0x0000-0x0089 存放中断向量ISR 0x0090-0x3F7FF是Application Code 其中 0x3C800-0x3F7FF是NV空间 (页121-126) 0x3F800-3FFFF是Lock page
NV空间0x0401到0xFFF是ItemID,并不能映射到flash上,在页121-126随机存放,所以想保留只能把这几页全保留了
Nv条目(item),每一个item都有自己的ID:
0x0000 保留
0x0001~0x0020 操作系统抽象层(OSAL)
0x0021~0x0040 网络层(NWK)
0x0041~0x0060 应用程序支持子层(APS)
0x0061~0x0080 安全(Security)
0x0081~0x00A0 Zigbee设备对象(ZDO)
0x00A1~0x0200 保留
0x0201~0x0FFF 应用程序
0x1000~0xFFFF 保留
参考 : NV操作的机制,是通过追加的方式来实现的,每次需要写数据的时候写到之前写过的最后面,然后把原先那个标志为废弃,等到废弃的Flash等于一个page的时候,再一次性擦除。
之前写过应该是掉电前写的同一个item的内容,不是不同item的内容,否则六页只用一页就够了
如果生成可以烧录的hex,要选‘other’,但是不能打断点了