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

 

  1.   Trademarks
  2. Introduction
    1. 1.1 License
    2. 1.2 IwIP Version
    3. 1.3 lwIP Customization
    4. 1.4 IwIP API
      1. 1.4.1 TCP RAW APIs
      2. 1.4.2 UDP RAW APIs
    5. 1.5 lwIP Development Home Page and Support
  3. Application Examples
  4. Application Setup
    1. 3.1 Hardware Setup
    2. 3.2 Software Tools
  5. Download and Import the Ethernet examples
  6. Enet_tcpecho_server_lwip Example Overview
    1. 5.1 Build and Flash the Program
    2. 5.2 Check and Program the MAC Address
      1. 5.2.1 Using The LM Flash Programmer
      2. 5.2.2 Using the CCS
      3. 5.2.3 Using Uniflash
    3. 5.3 Configure the Terminal Window
    4. 5.4 Run the enet_tcpecho_server_lwip Example
  7. Enet_tcpecho_server_static_ip_lwip Example Overview
    1. 6.1 How to Configure lwIP for Static Address
    2. 6.2 Run the enet_tcpecho_server_static_ip_lwip Example
  8. Enet_udpecho_server_lwip Example Overview
    1. 7.1 Run the enet_udpecho_server_lwip Example
  9. Enet_dns_lwip Example Overview
    1. 8.1 How to Configure lwIP for DNS
    2. 8.2 How to View the DNS Traffic on Wireshark
    3. 8.3 Run the enet_dns_lwip Example
  10. Enet_sntp_lwip Example Overview
    1. 9.1 Run the enet_sntp_lwip Example
  11. 10Enet_tcpecho_client_lwip Example Overview
    1. 10.1 Configure the Server IP Address
    2. 10.2 Configure the SocketTest Server and Run the enet_tcpecho_client_lwip Example
    3. 10.3 Wireshark Capture for enet_tcpecho_client_lwip Example
  12. 11Enet_adcsensor_client_lwip Example Overview
    1. 11.1 Run the adcsensor_client_lwip Example
  13. 12Enet_udpecho_client_lwip Example Overview
    1. 12.1 Run the enet_udpecho_client_lwip Example
  14. 13References

IwIP API

lwIP provides three styles of Application Programming Interface (API) for programs to use for communication with the TCP/IP code:

  • Low-level Raw APIs
  • Higher-level Netconn Sequential-style APIs
  • BSD-style Socket APIs.

All examples demonstrated in this application report are based on the Raw API interface only. The Raw API provides a callback style interface to the application. The application first registers callback functions to different core events. Typical TCP events are:

  • A new TCP connection is accepted.
  • An acknowledgment by the remote host for the data that was sent to it.
  • When new data arrives.
  • A periodic interval event.

The user-supplied callback functions are called from the lwIP core when the corresponding event occurs. When using the Raw API interface, the TCP/IP code and the application program can both run in the same thread in a non-OS environment. The raw TCP/IP interface is faster in terms of code execution time and is also less memory intensive at the expense of coding complexity. The other two API styles are currently not supported by the TivaWare library. However, the BSD socket-based APIs are supported through the TI-RTOS NDK. Various socket-based Ethernet examples can be downloaded from the Code Composer Studio™ (CCS) Resource Explorer.