你好!
我需要在分区中存储一些自定义数据(大约1500字节)nvms_generic_part。我的自定义配置是
的#define SUOTA_VERSION SUOTA_VERSION_1_3的#define SUOTA_PSM 0×81#定义USE_PARTITION_TABLE_1MB_WITH_SUOTA的#define dg_configSUOTA_SUPPORT(1)的#define dg_configFLASH_ADAPTER 1的#define dg_configNVMS_ADAPTER 1的#define dg_configNVMS_VES 1的#define CONFIG_BLE_STORAGE的#define defaultBLE_MAX_BONDED(8)的#define defaultBLE_MAX_CONNECTIONS(1)
据我所知,BLE还存储NVMS_GENERIC_PART中最多8个设备的自定义键。所以我需要知道ad_nvms_write和ad_nvms_read的正确偏移,以存储我的自定义数据,以避免与绑定设备产生的数据生成的数据。
在示例中,WSP_WEIGHTSCale BLE使用#define config_wsp_storage_offset(0x00001000)的偏移量。但我现在已经Clue如何计算这个值,或者它是什么,但没有什么是好的猜测。
所以我的第一个问题:如何计算偏移来存储我的自定义数据?
PS:我已经用CLI_Programmer直接读取了内存,并不缺货如何与所写的数据的真实地址相关联。这可能是因为dg_confignvms_ves 1.但是我想知道为什么并且找不到文档中的任何东西。即使是新的书面数据也被放置在前一个位置上的不同位置。它接缝有某种管理,即Enabale /禁用64字节块。
所以我的第二个问题:如何在VES模式下组织和管理数据?
谢谢!
托马斯
设备:
托马斯唐豪瑟。
该机制由NVMS VES自动处理。用户不知道该机制如何由SDK交换。
通常,通用分区(NVMS_GENERIC_PART)用于:
在NVMS_GENERIC_PART分区内搜索并查找存储的/在哪里,因此您无法使用它来存储自定义数据。我不会建议这种方法。
根据您的描述,我建议将自定义数据存储到另一个分区中。例如,日志分区(NVMS_LOG_PART)可用于此范围。
下列的DA1469X教程闪存适配器(非易失性存储器存储)教程直截了当地使用NVMS_LOG_PART并存储自定义数据。
谢谢,PM_DIALOG.
你好pm_dialog,
谢谢你的答案,但它没有帮助!由于我必须存储数据,我必须了解这个机械的工作原理。因此,我需要一种可靠的方法来做,这是完全不可接受的,告诉我“用户不知道”!你有没有得到我不是用户,因为我是开发人员?
您正在提供具有SDK的开发人员。这就是为什么你必须能够解释每个细节。所以请不要充实你是微软的。谢谢!
所以首先:我需要解释这有效的文档,
第二:正如我所提到的那样,WSP_WeightScale正在使用#define config_wsp_storage_offset(0x00001000)的偏移量存储此分区中的数据。所以请解释我如何计算这个偏移量。
我有一个1MB的闪存,NVMS_GENERIC_PART的大小是126.976字节,您将告诉我所有这些都用于8个配对设备?
我有一个为我所开发的东西支付的客户,我无法解释所有内存对的东西,或者在那里发生了什么。如果这是真的,那么da1468x的整个sdk是废话!所以请不要告诉我我不知道的东西!因为这是我问你的原因!
如果它达到了结论,最好将其存储在NVMS_LOG_PART中,因此我需要确保没有其他机制在那里存储数据。在用uota更新应用程序的情况下发生了什么?我要考虑什么来保护我的客户数据?
我非常感谢我,你可以在我问你的方式回答我的问题!
谢谢!
ps.:你提到的链接是ub the1469x。正如您所看到的,我正在研究DA1468x。
嗨托马斯唐豪斯,
抱歉错误的链接,我再次在DA1468x产品系列中重新安装。
http://lpccs-docs.dialog-semicondiond.com/da1468x_adapters_concept/index.html.
如前所述,通用分区(NVMS_GENERIC_PART)用于:
此外,通用分区标记为VES。请参阅第2.4.2节。来自上述文件的ves,了解有关VES的更多信息。VES将数据写入闪存中的随机位置。
我会在内部询问CONFIG_WSP_STORAGE_OFFSET如何计算。
但是,由于客户想要存储自定义数据,我们建议使用以前所建议的另一个分区(例如日志或自定义分区)。
如果您对Suota机制感兴趣,请从以下文档中查看图44:
https://www.dialog-seminile.com/sites/default/files/um-b-056-da1468x_software_developers_guide_6v0.pdf.
根据该文件,
日志分区与Suota无关,因此您可以存储自定义数据。Suota机制将仅修改FW相关分区。
关于绑定设备的持久存储,请读取SDK \ Interfaces \ BLE \ README.MD文档。
谢谢,PM_DIALOG.