ZHCAB54 March   2021 TM4C1292NCPDT , TM4C1292NCZAD , TM4C1294KCPDT , TM4C1294NCPDT , TM4C1294NCZAD , TM4C1299KCZAD , TM4C1299NCZAD , TM4C129DNCPDT , TM4C129DNCZAD , TM4C129EKCPDT , TM4C129ENCPDT , TM4C129ENCZAD , TM4C129LNCZAD , TM4C129XKCZAD , TM4C129XNCZAD

 

  1.   商标
  2. 引言
    1. 1.1 许可
    2. 1.2 IwIP 版本
    3. 1.3 lwIP 定制
    4. 1.4 IwIP API
      1. 1.4.1 TCP RAW API
      2. 1.4.2 UDP RAW API
    5. 1.5 lwIP 开发主页和支持
  3. 应用示例
  4. 应用设置
    1. 3.1 硬件设置
    2. 3.2 软件工具
  5. 下载并导入以太网示例
  6. Enet_tcpecho_server_lwip 示例概述
    1. 5.1 构建和刷写程序
    2. 5.2 对 MAC 地址进行检查和编程
      1. 5.2.1 使用 LM Flash Programmer
      2. 5.2.2 使用 CCS
      3. 5.2.3 使用 UniFlash
    3. 5.3 配置终端窗口
    4. 5.4 运行 enet_tcpecho_server_lwip 示例
  7. Enet_tcpecho_server_static_ip_lwip 示例概述
    1. 6.1 如何将 lwIP 配置为静态地址
    2. 6.2 运行 enet_tcpecho_server_static_ip_lwip 示例
  8. Enet_udpecho_server_lwip 示例概述
    1. 7.1 运行 enet_udpecho_server_lwip 示例
  9. Enet_dns_lwip 示例概述
    1. 8.1 如何将 lwIP 配置为 DNS
    2. 8.2 如何在 Wireshark 上查看 DNS 流量
    3. 8.3 运行 enet_dns_lwip 示例
  10. Enet_sntp_lwip 示例概述
    1. 9.1 运行 enet_sntp_lwip 示例
  11. 10Enet_tcpecho_client_lwip 示例概述
    1. 10.1 配置服务器 IP 地址
    2. 10.2 配置 SocketTest 服务器并运行 enet_tcpecho_client_lwip 示例
    3. 10.3 enet_tcpecho_client_lwip 示例的 Wireshark 捕获
  12. 11Enet_adcsensor_client_lwip 示例概述
    1. 11.1 运行 adcsensor_client_lwip 示例
  13. 12Enet_udpecho_client_lwip 示例概述
    1. 12.1 运行 enet_udpecho_client_lwip 示例
  14. 13参考文献

TCP RAW API

表 1-1 列出了要在应用中使用的典型 lwIP Raw TCP API。图 1-1 显示使用 Raw API 的 TCP 客户端-服务器通信的简化流程图。

表 1-1 Raw TCP API
功能类别 API 说明
TCP 连接 tcp_new 创建一个新的 TCP PCB(协议控制块)。
tcp_bind 将 PCB 绑定到本地 IP 地址和端口。可以将 IP 地址指定为 IP_ADDR_ANY,以便将连接绑定到所有本地 IP 地址。
tcp_listen 使 PCB 侦听传入连接。
tcp_accept 设置用于新传入连接的回调。接受一个传入连接时,将调用使用 tcp_accept() 指定的回调函数。
tcp_connect 打开与远程主机的连接。此函数将立即返回并调用在第四个参数中指定的回调函数。
接收 TCP 数据 tcp_recv 设置在新数据到达时将调用的回调函数。
tcp_recved 当应用收到数据时,必须调用此函数。
发送 TCP 数据 tcp_write 将数据排入队列以进行传输
tcp_sent 指定在远程主机成功接收(即已确认)数据时应调用的回调函数。
tcp_output 强制立即发送所有排队数据。
应用轮询 tcp_poll 设置应用轮询回调。当连接空闲时,lwIP 将通过调用指定的回调函数来反复轮询应用。
关闭连接和错误处理 tcp_close 关闭 TCP 连接。
tcp_err 将回调函数设置为发生连接错误时调用。
tcp_abort 中止连接。
图 1-1 使用 Raw API 的 TCP 客户端服务器通信