The „ecmasterlib“ provides a callback function (void callbackFct(…)) which is called by the Acontis stack once per EtherCAT cycle. This method:

  • Copies the received data from the stack into the receive buffer of „ecmasterlib“
  • Copies the data to be sent from the send buffer of „ecmasterlib“ to the stack.

The receive and send buffers of „ecmasterlib“ are byte arrays (uint8_t* inBuffer; uint8_t* outBuffer;) which are the same size as the PDOs.

The „ecmasterlib“ also provides a condition variable (std::condition_variable cv;) to synchronize the user application (i.e. EEROS).

When an „ecmasterlib“ object is created, an instance (monotonic) is created. The stack is started exactly as in the „EcMasterDemoDC“ of Acontis.