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.

[参考译文] RTOS/EK-TM4C129EXL:具有静态 IP 的 RTOS/HTTP 示例

Guru**** 2611325 points
Other Parts Discussed in Thread: EK-TM4C129EXL

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/769043/rtos-ek-tm4c129exl-rtos-http-example-with-static-ip

器件型号:EK-TM4C129EXL

工具/软件:TI-RTOS

您好!

我在 EK-tm4c129exl 板上有 TI-RTOS v2.16.1.14。

当我将 http 示例添加到我的项目并启动它时、所有操作都可以正常运行、我从 www.example.com 获得响应

在这种情况下、我从 DHCP 协议获取 IP。但是、当我将 DHCP 设置更改为静态 IP 设置时、我收到错误:

错误! 代码=-106、desc = httpTask:地址解析失败

为什么 http 示例仅适用于 DHCP 设置?

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

    您能否从笔记本电脑 ping TM4C? 静态 IP 地址是否对其所处的网络有效? 使用 DHCP 时 IP 地址、子网和网关是什么? 您对静态情况使用什么设置?

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

    您好!
    我已经实现了一个本地 http 服务器、如文档"建立 http 服务器"中所述。 我使用 DHCP 启动程序、然后分配 IP 192.168.1.154。 如果我现在将连接设置更改为静态 IP (IP:192.168.1.154、子网:255.255.255.0、网关:192.168.1.1)、本地服务器也将工作并向浏览器发送 html 页面。

    但是、如果我导入 HttpGET_EK_TM4C129EXL_TI_TivaTM4C129ENCPDT 以将数据发送到外部服务器、则此示例仅适用于 DHCP 设置。 如果我将这些设置更改为静态 IP、则会出现错误:
    错误! 代码=-106、desc = httpTask:地址解析失败
    在 DHCP 情况下、IP 为192.168.1.154、在静态情况下、IP 为192.168.1.154、子网掩码为255.255.255.0、网关为192.168.1.1
    我还可以在静态情况下 ping 设置的 IP。

    只有使用 DHCP 设置、HttpGET_EK_TM4C129EXL_TI_TivaTM4C129ENCPDT 项目才有效。

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

    Mark、您好!

    要执行外部名称主机名解析(如 HttpGet 示例所做的那样),当您的设备设置了静态 IP 地址时,您还需要提供外部 DNS 地址。 DHCP 会自动为您提供外部 DNS 服务器地址、因此该示例适用于 DHCP。

    要设置外部 DNS 地址、应使用以下代码:

    uint32_t IP = inet_addr ("8.8.8.8");
    
    if (IP){
    CfgAddEntry (0、CFGTAG _SYSINFO、CFGITEM_DHCP_DOMAINNAMESERVER、
    0、sizeof (ipaddr)、(unsigned char *)&IP、0);
    } 

    在调用 connect()之前放置此命令,以便在调用之前添加 DNS 服务器。 还可以将"IP"变量中的地址替换为要使用的任何 DNS 服务器。

    此致、

    达尔顿

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    非常感谢。
    现在、两种通信都在正常工作