User Tools

Site Tools


en-us_commands:reference:imcmem

This is an old revision of the document!


Table of Contents

IMcMem()

IMcMem() sets the sizes of X, Y, M and D memory used by MC Protocol.

IMcMem command operation flow

void IMcMem(uint16_t x_size, uint16_t y_size, uint16_t m_size, uint16_t d_size)

Commands

Command Arguments Return Value Operation
IMcMem(x_size, y_size, m_size, d_size) uint16_t x_size — Number of X input bits
uint16_t y_size — Number of Y output bits
uint16_t m_size — Number of M internal bits
uint16_t d_size — Number of D words
void Sets the sizes of X, Y, M and D memory used by MC Protocol.

Example

IMcMem(32, 32, 100, 100);

Precautions

  • Keep calling IMcProtocol() in loop().
  • Do not confuse hexadecimal addressing for X/Y with decimal addressing for M/D.
  • Do not use X/Y/M/D before allocating the pointers.
  • If Cnet or Modbus reallocates shared M/D memory at runtime, the addresses used by MC Protocol change. Complete all memory size settings in setup() and do not call them again at runtime.
  • Allocation functions do not return success status. For nonzero sizes, verify the corresponding global pointer is not nullptr before accessing it.

← Built-in Command List

en-us_commands/reference/imcmem.1788785567.txt.gz · Last modified: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki