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.

[参考译文] CCS/CC2564MODA:CC2564MODA -向现有 Bluetopia Sample 工程添加 NVS 时出现问题

Guru**** 1482555 points
Other Parts Discussed in Thread: BOOST-CC2564MODA, CC256XMS432BTBLESW
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/606347/ccs-cc2564moda-cc2564moda---problem-adding-nvs-to-existing-bluetopia-sample-project

器件型号:CC2564MODA
主题中讨论的其他部件:MSP432P401RCC256XMS432BTBLESW

工具/软件:Code Composer Studio

大家好、

我最近开始将 MSP432P401R LaunchPad 与 BOOST-CC2564MODA 插件模块结合使用。

我将测试蓝牙堆栈(CC256XMS432BTBLESW)提供的一些示例(例如 SPPLEDemo)。 我发现的第一个"问题"是、关闭模块电源后、之前配对的器件不会存储。 因此、我开始计划使用 SimpleLink SDK 已提供的 NVS API 开发一些代码。 我遇到了阻止问题。

我正在尝试在 Bluetopia 样片项目"SPPLEDemo"中包含用于 NVS 的 TI 驱动程序。 但我在构建时出错了。

我所做的是:

-在项目属性>常规>产品中添加了 Simplelink SDK

-将 NVS.h 头文件包含在 SPPLDemo.c 文件中、并使函数调用方法如 NVS_init()、NVS_read(...)等...

但是、当我构建时、我遇到5个错误:

有人能告诉我发生这种情况的原因以及如何解决它吗?

我可以在  Bluetopia 中使用 Simplelink SDK 吗?

非常感谢、

João Freire

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此时会出现、您可能需要在链接器声明中添加 NVS 库和库路径。

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    你(们)好、Hari。 感谢您的回答。
    NVS 库是什么意思? NVS 是否有任何库文件(以及所有其他 Simplelink 驱动程序)?
    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因为、您的链接器会抱怨缺少符号。 我建议您在链接期间可能缺少相应的库。 您是否从 TI-RTOS 发行版中获取此 NVS 头文件?

    无论如何、我建议您查看以下主题、以存储和检索用于配对的链接密钥。

    e2e.ti.com/.../574437

    谢谢
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Hari、

    不是来自 TI-RTOS 发行版、而是来自 NoRTOS。 我从 SimpleLink 示例中提供的以下示例中获得了"灵感":

    对于我正在编辑的项目、我只需使用以下链接的资源和代码:

    我的测试代码就是这样:  

    您是否看到任何缺失?

    谢谢你。

    此致、

    João μ A

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    João μ A、

    是否有必要使用 NVS 来实现您的目标? 如上所述、只有使用现有 SDK 中包含的 driverlib 才能存储链接密钥、而不必将 Simplelink 引入到混合环境中。

    该解决方案的一般理念是、struct LinkKeyInfo 会将来自链接的所有信息存储在 RAM 中、因此不会在下电上电时保留。 但是、该解决方案建议您使用内置的 driverlib 函数将此数据写入闪存、并在启动时将这些值从闪存复制回 RAM。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 DFZ、

    嗯、该线程肯定会帮助实现这一点。 非常感谢您、Hari 和 DFZ
    不、我真的不关心它是 NVS 还是闪存(但要清楚一点、我认为它们是一样的。 也许只是不同的库名称或函数结构? 如果是闪存、它应该位于非易失性闪存中、对吧? )。 正如我所解释的、我想保存下电上电后配对所需的必要信息。
    顺便说一下、使用 driverlib 和 Simulink 驱动程序的目的是什么? 我是 TI 开发工具的新用户。


    谢谢你。

    最棒的

    João μ A