移植 TCP/IP 堆栈 - FreeRTOS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

移植 TCP/IP 堆栈

本节提供移植和测试板载 TCP/IP 堆栈的说明。如果您的平台将 TCP/IP 和 TLS 功能分载到单独的网络处理器或模块,您可以跳过此移植部分并访问移植网络传输接口

FreeRTOS+TCP 是 FreeRTOS 内核的原生 TCP/IP 堆栈。FreeRTOS+TCP 由 FreeRTOS 工程团队维护,是推荐与 FreeRTOS 配合使用的 TCP/IP 堆栈。有关更多信息,请参阅移植 FreeRTOS+TCP。或者,您可以使用第三方 TCP/IP 堆栈 lwIP。本节提供的测试说明使用适用于 TCP 纯文本的传输接口测试,并且不依赖于具体实现的 TCP/IP 堆栈。

移植 FreeRTOS+TCP

FreeRTOS+TCP 是 FreeRTOS 内核的原生 TCP/IP 堆栈。有关更多信息,请参阅 FreeRTOS.org

先决条件

要移植 FreeRTOS+TCP 库,您需要以下信息:

移植

在开始移植 FreeRTOS+TCP 库之前,请检查 GitHub 目录以了解是否已存在您的主板的移植。

如果移植不存在,请执行以下操作:

  1. 按照 FreeRTOS.org 上将 FreeRTOS+TCP 移植到不同微控制器的说明,将 FreeRTOS+TCP 移植到您的设备。

  2. 如有必要,请按照 FreeRTOS.org 上将 FreeRTOS+TCP 移植到新的嵌入式 C 编译器的说明,将 FreeRTOS+TCP 移植到新的编译器。

  3. 在名为 NetworkInterface.c 的文件中实施使用供应商提供的以太网或 Wi-Fi 驱动程序的新移植。访问 GitHub 存储库以获取模板。

在创建移植后,或者如果移植已存在,请创建 FreeRTOSIPConfig.h 并编辑配置选项,以使它们适合您的平台。有关配置选项的更多信息,请参阅 FreeRTOS.org 上的 FreeRTOS+TCP 配置

测试

无论您使用的是 freerTOS+TCP 库还是第三方库,请按照以下步骤进行测试:

  • 在传输接口测试中提供 connect/disconnect/send/receive API 的实现。

  • 在纯文本 TCP 连接模式下设置 Echo 服务器,然后运行传输接口测试。

注意

要使设备正式获得 FreeRTOS 的资格,如果您的架构需要移植 TCP/IP 软件堆栈,则需要在 Amazon IoT Device Tester 的纯文本 TCP 连接模式下根据传输接口测试验证设备移植的源代码。按照《FreeRTOS 用户指南》中使用适用于 FreeRTOS 的 Amazon IoT Device Tester中的说明为移植验证设置 Amazon IoT Device Tester。要测试特定库的移植,必须在 Device Tester configs 文件夹下面的 device.json 文件中启用正确的测试组。