usb_cdc – USB CDC 串行流¶
该usb_cdc模块允许访问 USB CDC(串行)通信。
在 Windows 上,每个 Serial端口都作为单独的 COM 端口可见。首先,端口通常会被连续分配console,但这并不总是正确的。
在 Linux 上,端口通常是/dev/ttyACM0 和/dev/ttyACM1。该 console 端口通常是第一个。
在 MacOS 上,端口通常是/dev/cu.usbmodem<something>. 内容因使用的 USB 总线和端口而异。该console 端口通常是第一个。
在这些板上可用
-
usb_cdc.console:Optional[Serial]¶ - 该对象用于 REPL,以及用于和。
consoleSerialsys.stdinsys.stdout. -
如果禁用
console是None。
但是,请注意
sys.stdin和sys.stdout是基于文本的流,而console对象是二进制流。console除非您想写入二进制数据,否则通常不需要写入。- 该对象用于 REPL,以及用于和。
-
usb_cdc.data:Optional[Serial]¶ Serial可用于向主机发送二进制数据和从主机接收二进制数据的对象。请注意,默认情况下data是禁用的。data是None如果禁用。
-
usb_cdc.disable() → None¶ 不要向主机提供任何 USB CDC 设备。可以在
boot.py连接USB之前调用。相当于。usb_cdc.enable(console=False, data=False).
-
usb_cdc.enable(console: bool = True, data: bool = False) → None¶ 启用或禁用每个 CDC 设备。可以在
boot.py连接USB之前调用。- 参数
如果您一次启用太多设备,您将耗尽 USB 端点。可用端点的数量因微控制器而异。CircuitPython 将在运行 boot.py 后进入安全模式,以通知您是否没有足够的端点可用。
-
class
usb_cdc.Serial¶ 通过 USB 接收 cdc 命令
您不能创建 的实例
usb_cdc.Serial。可用实例在usb_cdc.serials元组中。-
connected:bool¶ 如果此串行连接到主机,则为真。(只读)
笔记
如果主机断言 DTR(数据终端就绪),则认为主机已连接。大多数终端程序并
pyserial在打开串行连接时断言 DTR。但是,C#SerialPortAPI 没有。您必须设置SerialPort.DtrEnable.
-
in_waiting:int¶ 返回等待在 USB 串行输入上读取的字节数。(只读)
-
out_waiting:int¶ 返回等待写入 USB 串行输出的字节数。(只读)
-
timeout:Optional[float]¶ 的初始值
timeout是None。如果None,则无限期等待以满足读取操作的条件。如果为 0,则不等待。如果 > 0,则仅等待timeout几秒钟。
-
write_timeout:Optional[float]¶ 的初始值
write_timeout是None。如果None,无限期地等待写完传递给 的所有字节write()。如果 0,不等待。如果 > 0,则仅等待write_timeout几秒钟。
-
read(self, size: int = 1) → bytes¶ 最多读取
size字节。如果size超过内部缓冲区大小,则只会读取缓冲区中的字节。如果timeout是 > 0 或None, ,并且size可用字节数少于字节,则继续等待直到超时到期或size字节可用。- 返回
数据读取
- 返回类型
-
readinto(self, buf: _typing.WriteableBuffer) → int¶ 将字节读入
buf. 如果nbytesi指定,则最多读取那么多字节,受timeout否则,最多读取len(buf)字节。- 返回
读取和存储的字节数
buf- 返回类型
-
readline(self, size: int = - 1) → Optional[bytes]¶ 读取以换行符(“\n”)结尾的行,包括换行符。如果未找到换行符且
timeout为 0 ,则返回所有可读内容。如果None出现错误,则返回。这是一个二进制流:换行符“\n”不能改变。如果主机传输“\r”,它也将作为行的一部分包含在内。
-
readlines(self) → List[Optional[bytes]]¶ 将多行作为列表读取,使用
readline().警告
如果
timeout是None,readlines()则永远不会返回,因为无法指示流结束。- 返回
读取的行列表
- 返回类型
-
write(self, buf: _typing.ReadableBuffer) → int¶ 从字节缓冲区中写入尽可能多的字节。
- 返回
写入的字节数
- 返回类型
-