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/CC3220:将 CC3200示例代码(如 TCP 套接字、LED 闪烁、SPI 等)迁移到 CC3220

Guru**** 2540720 points
Other Parts Discussed in Thread: CC3200

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/686837/ccs-cc3220-migration-of-cc3200-example-codes-like-tcp-socket-led-blink-spi-etc-to-cc3220

器件型号:CC3220

工具/软件:Code Composer Studio

您好!

我已经阅读了 SimpleLink_Gen1_TO_Gen2_SDK_Migration_Guide 并有一些疑问。 "附录一 参考移植代码"部分、其中讨论了包含一些文件以便于迁移。

附录一-1. Simplelink API 移植代码(sl_compat.h)

附录 I-2.1 OS 自适应接头(OSI.h)

附录 I-2.2 OS 自适应源(OS_POSIX.c)

我的问题是、我们是否只需将这些文件包含在 CC3200 SDK 的代码中? 它是否只能通过包含这些文件而不更改任何 API 来工作?

我还注意到 、CC3220 SDK 中的示例代码结构与 CC3200看起来截然不同。 那么、如果我只从 CC3200 SDK 导入示例、包括上述文件并进行编译、它会起作用吗? 或者需要进行一些其他更改? 我希望避免在新 的 CC3220 环境中从头开始编写应用代码。

另一个问题是、如果可以通过导入 CC3200 应用程序并包括上述文件(而不更改任何 API)直接迁移、可以在上面实施 AWS IoT 客户端吗? 或者、要实现 AWS 客户端、我们需要在新 的 CC3220 环境中从头开始编写应用程序?

此致
Sourajit

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

    CC3200和 CC3220 SDK 之间的主要变化如下:
    1."Simplelink"驱动程序接口已更改-大多数(但不是全部)更改在"sl_compat.h"中处理。 但是、建议使用该文件作为参考、并在应用程序代码中进行更改、而不是使用此转换层。 此外、如前所述、并非所有差异都由该标头处理、您应该会遇到一些需要特定修复的编译器错误/警告。
    2. CC3200使用 OSLIB (OSI_xxx)作为不同 RTOS (FreeRTOS、tirtos)的适应层。
    CC3220使用标准 POSIX。 "OSI.h"和"OS_POSIX.c"增加了另一个级别的自适应(OSI 到 POSIX)、允许您在新 SDK 上运行旧代码。 同样、建议将该代码用作参考(或作为临时补丁)并替换对 POSIX 的 OSI 调用。
    3. CC3200 SDK 示例通过 driverlib API 访问芯片硬件,而新的 CC3220 SDK 在物理层(driverlib)上添加了逻辑驱动程序层("TI driver")。 这简化了 CC3220 SDK 示例所示的应用接口。 如果您使用的是直接使用 driverlib 的传统应用程序、它仍然有效(因为 driverlib 仍是新 SDK 的一部分)、但外观和感觉以及应用程序和驱动程序之间的分区将不同于新 SDK 应用程序。
    结合使用从 TI 驱动程序和驱动程序库 API 访问硬件的代码会有很大的风险、因此除非移植代码以充分使用、否则您将无法参考 CC3220中的"驱动程序"示例
    TI 驱动程序。

    BR、
    Kobi