最近在collector端想要实现白名单的功能,根据预先设置的mac可以屏蔽sensor的加入。目前我使用了一个二维数组,基本实现了这个要求。但是我想把mac信息放入NV中,昨天跟了一下代码,发现有些问题不知道怎么解决。
1.在使用 pfn->readItem = &NVOCOP_readItem;读NV寄存器,其中NVOCOP_readItem( NVINTF_itemID_t nv_id, uint16 offset, uint16 len, void *pBuf );pfn->writeItem = &NVOCOP_writeItem;写nv寄存器,其中NVOCOP_writeItem( NVINTF_itemID_t nv_id, uint16 len, void *pBuf );这里面有个NVINTF_itemID_t nv_id,参照updateDeviceListItem()和Csf_getNetworkInformation这个两个函数,发现其中的id有些不同
id.systemID = NVINTF_SYSID_APP;
id.itemID = CSF_NV_NETWORK_INFO_ID; —————–> 这几个都有对应的ID号。
id.subID = 0;
对于这些ID号,是专门对某种数据存储的识别号吗?
2.如果我只想在NV中存,取mac地址,不存其他的信息,要怎么定义这个id号。
3.在sensor入网的时候,会将相关信息写入NV中,其中包括mac,这会与自己存的mac冲突吗?
对于这个内存的操作不是很熟悉,看了Ti 15.4-stack中的资料也没有详细说明,就说了几个函数。请大神们赐教!
Alvin Chen:
请使用nvsinternal
C:\ti\simplelink_cc13x0_sdk_3_20_00_23\examples\rtos\CC1310_LAUNCHXL\drivers\nvsinternal
lin shi chang:
回复 Alvin Chen:
好的,那关于id.systemID = NVINTF_SYSID_APP;id.itemID = CSF_NV_NETWORK_INFO_ID;id.subID = 0;有什么特殊说明吗?我看不同的数据存入到NV中,使用的id也不一样。
这个id可以自己定义吗?
Alvin Chen:
回复 lin shi chang:
可以的,不能和Stack预留的冲突
lin shi chang:
回复 Alvin Chen:
好的,只要在预留的NV中操作即可