# `AVModbus.UART`
[🔗](https://github.com/piyopiyoex/avmodbus/blob/v0.1.0/lib/avmodbus/uart.ex#L1)

RS485 transceiver 経由の Modbus serial 通信に使う AtomVM UART adapter です。

AtomVM の `uart:read/2` 呼び出し間で受信 byte を失わないよう、専用 reader が UART を
継続して読み取ります。隣接 chunk は UART 固有の RX idle timeout まで drain してから、
bounded broker が Client / Server からの read request に応答します。
UART failure は terminal state とし、受信済み buffer より error を優先します。
`open/1` では compile-time default を instance ごとに上書きできます。

# `option`

```elixir
@type option() ::
  {:peripheral, binary() | charlist()}
  | {:speed, pos_integer()}
  | {:tx, non_neg_integer()}
  | {:rx, non_neg_integer()}
  | {:data_bits, 5..8}
  | {:stop_bits, 1 | 2}
  | {:parity, :none | :even | :odd}
  | {:rx_idle_timeout, pos_integer()}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
