SPMA080 April   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 TI-RTOS Download
    2. 1.2 License
    3. 1.3 XDCtools
    4. 1.4 Versions
    5. 1.5 Configuring NDK Modules
    6. 1.6 Socket-Based API
      1. 1.6.1 BSD Style Socket APIs
  3. Application Examples
  4. Application Setup
    1. 3.1 Hardware Setup
    2. 3.2 Software Tools
  5. Download and Import the Ethernet Examples
  6. How to Create an Ethernet Application for TI-RTOS NDK
  7. Enet_tcpecho_server_tirtos Example Overview
    1. 6.1 Build and Flash the Program
    2. 6.2 Check and Program the MAC Address
      1. 6.2.1 Using The LM Flash Programmer
      2. 6.2.2 Using CCS
      3. 6.2.3 Using UniFlash
    3. 6.3 Run the enet_tcpecho_server_tirtos Example
  8. Enet_udpecho_server_tirtos Example Overview
    1. 7.1 Run the enet_udpecho_server_tirtos Example
  9. Enet_httpServer_tirtos Example Overview
    1. 8.1 Configure NDK for HTTP Application
    2. 8.2 Embedded File System (EFS) Operation
    3. 8.3 Adding HTTP Server Content
    4. 8.4 Declaring HTML Files to EFS
    5. 8.5 Writing CGI Functions
    6. 8.6 Run the enet_httpServer_tirtos Example
  10. Enet_dns_tirtos Example Overview
    1. 9.1 How to Configure NDK for DNS
    2. 9.2 How to View the DNS Traffic on Wireshark
    3. 9.3 Run the enet_dns_tirtos Example
  11. 10Enet_sntp_tirtos Example Overview
    1. 10.1 Run the enet_dns_tirtos Example
  12. 11Enet_tcpecho_client_tirtos Example Overview
    1. 11.1 Configure the Server IP Address
    2. 11.2 Configure the SocketTest Server
    3. 11.3 Run the enet_tcpecho_client_tirtos Example
  13. 12Enet_udpecho_client_tirtos Example Overview
    1. 12.1 Run the enet_udpecho_client_tirtos Example
  14. 13Enet_httpget_tirtos Example Overview
    1. 13.1 How to Configure NDK for HTTP GET Example
    2. 13.2 Run the enet_httpget_tirtos Example
  15. 14References

BSD Style Socket APIs

Table 1-1 lists a typical BSD socket APIs. Figure 1-3 shows a simplified flowchart of a TCP client-server communication using the BSD socket APIs. Figure 1-4 shows the APIs usage of a UDP communication.

Table 1-1 BSD Socket APIs
Function Category API Description
Socket connection socket Creates a new socket of a certain type, identified by an integer number, and allocates system resources to it.
bind Is typically used on the server side, and associates a socket with a socket address structure, i.e. a specified local IP address and a port number.
listen Is used on the server side, and causes a bound TCP socket to enter listening state.
accept Is used on the server side. It accepts a received incoming attempt to create a new TCP connection from the remote client, and creates a new socket associated with the socket address pair of this connection.
connect Is used on the client side, and assigns a free local port number to a socket. In case of a TCP socket, it causes an attempt to establish a new TCP connection.
Receiving data recv Used for receiving data. Normally used only on a connected socket.
recvfrom Used for receiving data. May be used to receive data on a socket whether or not it is connection-oriented.
Sending data send Used for sending data. Normally used for TCP SOCK_STREAM connected sockets.
sendto Used for sending data. Normally used for UDP SOCK_DGRAM unconnected datagram sockets.
I/O multiplexing poll Is used to check on the state of a socket in a set of sockets. The set can be tested to see if any socket can be written to, read from or if an error occurred.
select Is used to suspend, waiting for one or more of a provided list of sockets to be ready to read, ready to write, or that have errors.
Closing connection close Close the TCP connection.
Socket options setsocketopt Is used to set a particular socket option for the specified socket.
getsockopt Is used to retrieve the current value of a particular socket option for the specified socket.
GUID-20210329-CA0I-1S5X-LTJR-XRBRGSB5M2FW-low.jpg Figure 1-3 TCP Client Server Communication using BSD Socket APIs
GUID-20210329-CA0I-RHK7-B9QH-HKWFNKKNKWHH-low.jpg Figure 1-4 UDP Client Server Communication using BSD Socket APIs