# device 硬件设备库 ## 功能 device 提供设备扫描、打开、列表、存在性检查和串口读写能力。当前源码实现的设备类型是 serial。 ## API 列表 | API | 说明 | | ------ | ------ | | [device.open](/zh-hans/docs/device/open) | 打开设备连接。当前实现支持 serial 串口设备。 | | [device.scan](/zh-hans/docs/device/scan) | 扫描系统设备。当前实现支持 serial 串口扫描。 | | [device.list](/zh-hans/docs/device/list) | 返回当前程序仍可见的已打开设备列表。 | | [device.exists](/zh-hans/docs/device/exists) | 判断系统中是否存在指定串口。 | | [serial.read](/zh-hans/docs/device/read) | 从已打开串口读取数据,兼容返回 String 或字节数组。 | | [serial.read_bytes](/zh-hans/docs/device/read_bytes) | 从已打开串口读取原始 Bytes。 | | [serial.read_text](/zh-hans/docs/device/read_text) | 从已打开串口读取 UTF-8 文本,非法 UTF-8 返回 null。 | | [serial.write](/zh-hans/docs/device/write) | 向已打开串口写入字符串、字节数组或 Bytes。 | | [serial.flush](/zh-hans/docs/device/flush) | 刷新已打开串口的输出缓冲。 | | [serial.close](/zh-hans/docs/device/close) | 关闭已打开串口。 | ## 示例 ```bt ports = device.scan() result = type(ports) // 输出:Array print result ``` ## 注意事项 - device 是标准库构造入口,也支持 device.scan() 这种短写调用。 - 串口通信依赖系统设备和权限,示例中的 COM3 需要替换为实际端口。 - 二进制协议优先使用 `read_bytes()` 和 `bytes()`,避免把设备报文隐式当成字符串。