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.

[参考译文] SIMPLELINK-WIFI-CC3120-SDK-PLUGIN:问题从 CC3100 Nonos 端口移植到 CC3120 Nonos 端口

Guru**** 2555630 points
Other Parts Discussed in Thread: CC3120, CC3100, AM3359

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/641488/simplelink-wifi-cc3120-sdk-plugin-issues-porting-from-cc3100-nonos-port-to-cc3120-nonos-port

器件型号:SIMPLELINK-WIFI-CC3120-SDK-PLUGIN
主题中讨论的其他器件:CC3120CC3100AM3359

我有 CC3100 Nonos 端口的工作版本。  但是、当我尝试移植到 CC3120的 Nonos 端口时、我在构建过程中会遇到很多错误。  大多数问题都与信号量和互斥量等操作系统类型有关、 cc_pal.h 文件中甚至引用的 include 目录不存在、例如 ti/drivers/ddl/...  在 SDK 插件中的任何位置都找不到.DPL 目录。

我看到过与 CC3120移植相关的其他帖子、但其中大多数都是旧的、SDK 的更新版本应该可以解决他们的问题。  我使用的是 SDK 的版本1.50.00.38。

我对这些构建错误感到困惑。  我希望该端口在获得正常工作的 CC3100端口后能够顺利运行。  但是。 但事实并非如此。   

我确定我的操作有误、因为不像 TI 引用不存在的 include 目录。  此外、我不知道为什么在 Nonos 端口中有对信标和互斥量的引用。  我们是否缺少一些禁用这些函数的#define?

请帮助、因为我花了很多时间尝试使该端口正常工作、我所得到的只是意外错误。  

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

    您好!

    我同意、这并不像一开始看起来那样简单、主要是因为 SDK 的 wntire 结构在两代产品之间发生了变化、而且也因为没有提到旧平台(仅指新的 MSP432)。

    您可以使用 http://dev.ti.com/tirex/content/simplelink_cc32xx_sdk_1_40_00_03/docs/simplelink_mcu_sdk/SimpleLink_Gen1_to_Gen2_SDK_Migration_Guide.html 获取迁移指南

    除此之外、您还需要更具体一些。

    此致、

    Shlomi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我喜欢更具体一点、但由于 SDK 文件中缺少目录、因此我无法提供更多内容。 即使这些示例也需要 SDK 中没有的 NoRtos.h 文件。

    cc_pal.h 指的是:
    #include
    #include
    #include

    同样、这些 include 文件在 SDK 中没有位置。 而且、我不知道为什么 Nonos 端口需要它们。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我现在明白你的观点。

    插件 SDK 只是一个插件。 它需要附带基本 SDK、在本例中为1.50.00.12。

    您可以在插件 SDK 的用户指南文档下看到它。

    基本 SDK 的链接 是 http://www.ti.com/tool/download/SIMPLELINK-MSP432-SDK

    此致、

    Shlomi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    现在我有了这些目录、但我仍然感到困惑。 为什么 CC3100 SDK 中没有类似的非 RTOS 示例? 我似乎无法获得构建。 我必须不断添加更多与 RTOS 相关的文件、这反过来又会造成越来越多的错误。 怎么了?

    我已经查看了移植指南。 我想它没有提到任何关于非 RTOS 版本的编译中必须包含的内容。

    我肯定缺少一些内容、或者我包含的内容太多、或者包含了错误的文件。 我几乎要对这件事感到很痛苦...
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您将什么平台与 CC3100结合使用?

    如果您还迁移到了新平台(即 MSP432)、我甚至不会从 CC3100到 CC3120开始、因为这是您遇到的最少问题。

    正如我提到过的、两个 SDK 之间发生了很大变化、因此首先、我将尝试了解如何迁移主机应用程序、而不是 CC3120。

    您能告诉我们您使用的是哪个平台吗?

    Shlomi

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

    我使用 TI-AM3359通过 SPI 接口连接到 C3100。  但是、C3100在 AP 模式下仅允许一个连接。  我需要更多连接。  这就是我进入 C3120的原因。  C3100的 WiFi 驱动程序在 Nonos 环境中与我的应用程序代码进行编译和链接。  

    是的、我可以看到 SDK 中发生了很多变化。  我不理解的是、如果我选择 Nonos、为什么驱动程序包的构建方式与 C3100中的构建方式不同。

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

    因此、如果您使用的平台不是原始 SDK 或新 SDK 中提到的平台、移植应仅侧重于 simpellink 主机驱动程序。

    CC3100确实仅支持单个连接、CC3120上最多可支持4个连接。

    正如我提到的、整个设计与以前不同、即使对于 NORTOS 也是如此。

    现在、NORTOS 类似于 RTOS 类型、它们共享相同的 API。

    例如、如果您调用对信标进行等待(在 user.h 中、请参阅 SL_SyncObjWait)、它会映射到 SemaphoreP_pend ()、该函数在相应的 DPL 移植层(内核/nortos/DPL 和内核/tirtos/packages/ti/DPL 和内核/freertos/DPL/DPL)下实现。

    您应专注于 simplelink_sdk_wi_plugin_1_50_00_38\sources\ti\drivers\net\wi\porting 下的文件移植。

    Shlomi

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

    同意您所说的一切。  我已经在 C3100上有一个正常工作的主机端口。  我以为 我只专注于 simplelink 主机驱动程序。  也许不是。  这话到底是什么意思? SDK 中的路径是什么?

    我尝试链接来自 c3120 SDK 的相同文件、正如我使用 C3100 SDK 时所做的那样、加上内核非文件目录中的任何文件以及我的主机接口移植文件。  这样、我就无法成功构建。   至少可以说是非常有果味的。

    我在程序员指南中注意到的另一件事。  看起来从驱动程序返回的状态 已更改。  C3100驱动程序出错时返回负数。  c3120 指南指示非零表示错误。  但我从未如此失望过、因为我无法成功构建。

    您能告诉我需要从432 SDK 和 Wi-Fi 插件 SDK 中包含哪些目录来成功构建驱动程序文件吗?

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

    嗯、 我最终放弃了尝试构建 CC3120 SDK 的北核版本。  没有足够的信息让我能够在不同的平台上工作。

    CC3100 SDK 中的 NOS 实现比 CC3120 Nortos 版本简单得多。  较新的版本似乎非常依赖于432平台、而较旧的3100版本与器件的独立性要高得多。  为什么是这样?  为什么3120的 SDK 中没有任何独立于器件的示例?

    尽管我能够使用下面文章中的信息获得在 AM3359上运行的工作版本、但我讨厌关闭此主题、因为我的脑海中无法解决真正的问题。  这个问题是、我无法为非432主机获取 CC3120的北核版本的有效构建。

    感谢 Ed Ferrari 在 https://e2e.ti.com/support/wireless_connectivity/simplelink_wifi_cc31xx_cc32xx/f/968/p/578718/2157135#2157135上发表的文章