Thread 中讨论的其他器件: Z-stack
我有 CC2530协调器组成的网络。 为了进行备份、我想备份网络参数、如果此协调器死了、我将用相同的固件刷写另一个、并恢复网络参数。
哪个 NV 参数(PAN、Channel、Extended PAN、...) 我需要备份才能实现这一点?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
您好、Zarko、
除了由 YK 提供的信息外,以下是所需的网络属性及其项目 ID:
ZCD_NV_PANID:0x0083
ZCD_NV_EXTADDR:0x0001
ZCD_NV_DEPAND_ID:0x002D
ZCD_NV_BDBNODEISONANETWORK:0x0055
ZCD_NV_NIB:0x0021
ZCD_NV_NWK_ACTIVE_KEY_INFO:0x003A
ZCD_NV_NWK_ALTERN_KEY_INFO:0x003B
ZCD_NV_EX_NWK_SEC_materie_table:0x0007
ZCD_NV_EX_TCLK_TABLE:0x0004
ZCD_NV_EX_TCLK_IC_TABLE:0x0005
ZCD_NV_Group_table:0x0042
项目 ID 可在 Stack/Sys/zcomdef.h 中找到
为了正确读取表、您需要在项目中包含 FITY_NVEXID 预定义符号。
存在一个已知问题(ZigBee-698: http://dev.ti.com/tirex/explore/content/simplelink_cc13x2_26x2_sdk_4_10_00_78/docs/zigbee/release_notes_zigbee_4_10_00.html)、即包含 feature_NVEXID 会导致编译错误。 这将在下一个 SDK 版本中得到更正。 在此之前、您可以添加以下代码以消除编译器错误:
在'nvintf.h'中的 nvintf_nvfuncts_t 结构内添加以下内容:
//! 编写扩展项函数
NVINTF_writeItemEx writeItemEx;
在 nvocmp.c 中、将以下函数声明添加到'nv API 函数类型'部分:
静态 uint8_t NVOCMP_writeItemExApi (NVINTF_ItemID_t id、uint16_t dataOfs、uint16_t length、void * buf);
使用 sys_nv_read/sys_nv_update 命令而不是 sys_osal_nv_read 和 sys_osal_nv_write 命令来读取 TCLK 和 NWK 安全表等表。
对于表/列表、NV 驱动程序使用系统 ID (0x01)、项目 ID (在 zcomdef.h 中找到)和子 ID (从0x0000开始、此值表示表/列表中项目的索引)来正确访问内容。
希望这对您有所帮助、如果您有任何疑问、请告诉我。
此致、
Marlyn