Chain BUS

Chain BUS 是一个通信总线模块,它允许 M5Chain 系列设备中的多个设备相互连接和通信。

API参考

ChainBUS

class chain.chain.ChainBus(id, tx, rx, verbose=False)

基类:object

创建一个 Chain 总线实例。

参数:
  • id (int) – UART 编号。

  • tx (int) – TX 引脚。

  • rx (int) – RX 引脚。

  • verbose (bool) – 是否启用详细输出模式,默认 False。

UiFlow2 代码块:

get_device_num.png

MicroPython 代码块:

from chain import ChainBus

chainbus_0 = ChainBus(2, 32, 33, verbose=True)
send(device_id, cmd, payload, timeout_ms)

向设备发送自定义命令。

参数:
  • device_id (int) – 设备 ID。

  • cmd (int) – 命令。

  • payload (bytes) – 数据。

  • timeout_ms (int) – 接收超时时间(毫秒)。

返回:

响应数据。

返回类型:

bytes

UiFlow2 代码块:

send.png

MicroPython 代码块:

chainbus_0.send(1, 0x20, b"ÿ", 3000)
get_device_num()

获取已连接设备数量。

返回:

已连接设备的数量。

返回类型:

int

UiFlow2 代码块:

get_device_num.png

MicroPython 代码块:

num = chainbus_0.get_device_num()
deinit()

反初始化 Chain 总线。