1. TCP send TCP_SEND

1. TCP send TCP_SEND

1.1. Instruction description

Free port data sending instruction, which can be used for the data sending function of the free port after successful connection using TCPVNet.

1.2. Instruction parameters

1. Socket: Set the number of the connection established between the local IP and the remote IP, ranging from K0 (seckcot0) to K5 (seckcot5)

2. Data: The parameter address is an area starting from Dn, and this operand can only select the D data register;

3. Length: Set the length of the data to be sent. This operand can be selected as K/H/D and can send up to 1460Byte of data

4. Completion bit: After completing a data transmission, set this register to 1. Reset this register at the beginning of the second transmission, and pass NULL to not retrieve the status

5. Error bit: When an error occurs using this instruction, set this register to 1 and pass NULL to retrieve the status

6. Error Code: Returns error code values for different errors, as shown in the table below, which can be passed in as NULL but not retrieved

Error code Error description
0x00 No errors
0x01 Sending failed

1.3. The valid operands of the instruction

Input/Output Data Type operand Description
SOCKET 16 bit unsigned integer K/H Socket
DATA 16 bit unsigned integer D Data
LEN 16 bit unsigned integer D/CV/TV/AI/AO/K/H/V/Z/FD, bit composite word (X/Y/M/C/T/S), local variable (LW) length
DONE ON/OFF M/NULL Finish bit
E ON/OFF M/NULL Error bit
C 16 bit unsigned integer D/NULL Error code

1.4. Example

As shown in the ladder diagram below, before using TCP_SND, it is necessary to first use the TCP-INNECT command to establish a connection. The TCP-INNECT command follows the parameters described earlier to establish a client (active connection). The socket is K0, and this function sends 100 bytes of data to the remote server every 100ms (M8159 is a 100ms cycle register) after the connection is successfully established (M1000 register is the connection completion bit).

Command table:

NETWORK 000

LD M0

MPS

MEP

MOV K192 D5000

MOV K168 D5001

MOV K1 D5002

MOV K11 D5003

MPP

TCP_CONNECT K0 D5000 K2000 K0 K65535 M1000 M1001 D5006

POP

LD M1000

ANDP M8159

TCP_SEND K0 D1000 K100 M1002 M1003 D5007

POP

TCPSEND1

图1 TCPSEND1

TCPSEND2

图2 TCPSEND2