Rockwell Automation Allen-Bradley ControlLogix 1756-MVI Programming Reference Manual page 72

Multi-vendor interface module
Hide thumbs Also See for Allen-Bradley ControlLogix 1756-MVI:
Table of Contents

Advertisement

4-20
CIP Messaging API
Publication 1756-RM004B-EN-P - October 2000
rxdata_proc
Syntax:
int
rxdata_proc( MVIHANDLE objHandle, MVICIPRECVSTRUC
*sRecv);
Parameters:
objHandle
handle of registered object
sRecv
pointer to structure of type MVICIPRECVSTRUC
Description:
rxdata_proc is an optional callback function which may be passed to
the CIP API in the MVIcip_RegisterAssemblyObj call. If the rxdata_proc
callback has been registered, the CIP API calls it when Class 1
scheduled data is received for the registered object specified by
objHandle.
sRecv is a pointer to a structure of type MVICIPRECVSTRUC. This
structure is shown below:
typedef struct tagMVICIPRECVSTRUC
{
DWORD
reg_param;
MVIHANDLE
connHandle; // unique value which identifies this connection
BYTE*'
rxData;
WORD
dataSize;
} MVICIPRECVSTRUC;
reg_param is the value that was passed to
MVIcip_RegisterAssemblyObj. The application may use this to store an
index or pointer. It is not used by the CIP API.
connHandle is the connection identifier passed to the connect_proc
callback when this connection was opened.
rxData is a pointer to a buffer containing the received data. dataSize is
the size of the received data in bytes.
Note:
Use of the rxdata_proc callback is not recommended. Registering this
callback increases CPU overhead and reduces overall performance,
especially for relatively small RPI values. It is recommended that this
callback only be used when the RPI is set to 10ms or greater.
This routine is called directly from an interrupt service routine in the
backplane device driver. It should not perform any operating system
calls and should execute as quickly as possible (200us maximum). Its
only function should be to copy the data to a local buffer. The data
must not be processed in the callback routine, or backplane
communications may be disrupted.
// value passed via MVIcip_Register AssemblyObj
// pointer to buffer of received data
// size of received data in bytes

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents