AVModbus.Memory (avmodbus v0.1.0)

Copy Markdown View Source

Modbus data model の sparse in-memory implementation です。

coils、discrete inputs、holding registers、input registers、file records、FIFO を AVModbus.Server handler API から利用できます。未設定の bit は false、register は 0 として読み、 明示的に書き込まれた値だけを memory に保持します。

Summary

Functions

data-model table から count 個の値を返します。

data-model table に 1 個以上の値を書き込みます。

caller に link した sparse Modbus data model を起動します。

Types

server()

@type server() :: pid() | atom()

table()

@type table() :: :coil | :discrete_input | :holding_register | :input_register

Functions

get(memory, table, address, count \\ 1)

@spec get(server(), table(), non_neg_integer(), pos_integer()) ::
  [boolean() | non_neg_integer()] | {:error, term()}

data-model table から count 個の値を返します。

put(memory, table, address, values)

@spec put(server(), table(), non_neg_integer(), term() | [term()]) ::
  :ok | {:error, term()}

data-model table に 1 個以上の値を書き込みます。

start_link(options \\ [])

@spec start_link(keyword()) :: {:ok, pid()} | {:error, term()}

caller に link した sparse Modbus data model を起動します。