Technical data

Table Of Contents
S7 Communication
System Software for S7-300/400 System and Standard Functions - Volume 2/2
A5E00739858-01
21-15
21.6 Sending Segmented Data with SFB/FB 12 "BSEND"
Description
SFB/FB 12 "BSEND" sends data to a remote partner SFB/FB of the type "BRCV".
With this type of data transfer, more data can be transported between the
communications partners than is possible with all other communication SFBs/FBs
for configured S7 connections:
32768 bytes for S7-300 via SIMATIC-Net CPs
65534 bytes for S7-400 and S7-300 via an integrated interface
The data area to be transmitted is segmented. Each segment is sent individually to
the partner. The last segment is acknowledged by the partner as it is received,
independently of the calling up of the corresponding SFB/FB "BRCV".
S7-300: The send job is activated on a rising edge at REQ. The parameters R_ID,
ID, SD_1 and LEN are transferred on each positive edge at REQ. After a job has
been completed, you can assign new values to the R_ID, ID, SD_1 and LEN
parameters. For the transmission of segmented data the block must be called
periodically in the user program.
The start address and the maximum length of the data to be sent are specified by
SD_1. You can determine the job-specific length of the data field with LEN.
S7-400 and S7-300 via an integrated interface: The send job is activated after
calling the block and when there is a rising edge at the control input REQ. Sending
the data from the user memory is carried out asynchronously to the processing of
the user program.
The start address and the maximum length of the data to be sent are specified by
SD_1. You can determine the job-specific length of the data field with LEN. In this
case, LEN replaces the length section of SD_1.
The parameter R_ID must be identical at the two corresponding SFBs/FBs.
If there is a rising edge at control input R, the current data transfer is canceled.
Successful completion of the transfer is indicated by the status parameter DONE
having the value 1.
A new send job cannot be processed until the previous send process has been
completed if the status parameter DONE or ERROR have the value 1.