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

This example uses the MPINO-16A8R8T RS-485 port Serial2, input D22, and transistor output D39.

void setup() {
  IMcMem(32, 32, 64, 64);  // Set the X·Y·M·D memory sizes used by MC Protocol.
  IMcAdr(0, 0, 0, 0);  // Set the start addresses of X·Y·M·D memory.
  IMcInit(Serial2, 1, 9600);  // Set the communication port, station number and baud rate.
}
 
void loop() {
  IMcProtocol();  // Check incoming requests and process MC Protocol responses.
  if (X != nullptr) X[0] = digitalRead(22) == HIGH;
  if (Y != nullptr) digitalWrite(39, Y[0] ? HIGH : LOW);
}

Precautions

Built-in Commands in the Same Category

← Built-in Command List