USB_VCP 类 – USB 虚拟通信端口

USB_VCP 类允许创建stream代表 USB 虚拟通信端口的类对象。它可用于通过 USB 向连接的主机读取和写入数据。

构造函数

class pyb.USB_VCP(id=0)

创建一个新的 USB_VCP 对象。该ID参数指定要使用的USB端口VCP。

方法

USB_VCP.init(*, flow=- 1)

配置USB VCP端口。如果流参数不是-1,则该值设置流控制,它可以是按位或USB_VCP.RTSUSB_VCP.CTS. R。RTS 用于控制读取行为,CTS 用于控制写入行为。

USB_VCP.setinterrupt(chr)

设置中断运行 Python 代码的字符。默认设置为 3 (CTRL-C),当通过 USB VCP 端口接收到 CTRL-C 字符时,会引发 KeyboardInterrupt 异常。

设置为 -1 以禁用此中断功能。当您想通过 USB VCP 端口发送原始字节时,这很有用。

USB_VCP.isconnected()

True 如果 USB 作为串行设备连接,则返回,否则返回False

USB_VCP.any()

True如果有任何字符等待,则返回,否则返回 False.

USB_VCP.close()

这个方法什么都不做。它存在以便 USB_VCP 对象可以充当文件。

USB_VCP.read([nbytes])

最多 nbytes f从串行设备读取并将它们作为字节对象返回。如果nbytes未指定,则该方法从串行设备读取所有可用字节。USB_VCPstream隐式工作在非阻塞模式,因此如果没有可用的挂起数据,此方法将立即返回None 值。

USB_VCP.readinto(buf[, maxlen])

从串行设备读取字节并将它们存储到 中buf,它应该是一个类似缓冲区的对象。最多len(buf)读取字节。如果maxlen给出,则最多读取字节。 min(maxlen, len(buf))

返回读取和存储的字节数,buf 或者 None 如果没有可用的挂起数据。

USB_VCP.readline()

从串行设备读取整行。

返回包含数据的字节对象,包括尾随换行符或 None 如果没有可用的挂起数据。

USB_VCP.readlines()

从串行设备读取尽可能多的数据,将其分成几行。

返回字节对象列表,每个对象都是其中一行。每行都将包含换行符。

USB_VCP.write(buf)

将字节写入buf 串行设备。

返回写入的字节数。

USB_VCP.recv(data, *, timeout=5000)

在总线上接收数据:

  • data 可以是一个整数,它是要接收的字节数,也可以是一个可变缓冲区,它将用接收到的字节填充。

  • timeout是等待接收的超时时间(以毫秒为单位)。

返回值:如果data是整数,则返回接收到的字节的新缓冲区,否则data 返回读入的字节数。

USB_VCP.send(data, *, timeout=5000)

通过 USB VCP 发送数据:

  • data 是要发送的数据(要发送的整数或缓冲区对象)。

  • timeout 是等待发送的超时时间(以毫秒为单位)。

返回值:发送的字节数。

USB_VCP.irq(handler=None, trigger=IRQ_RX, hard=False)

每当触发器指定的事件 发生时注册要调用的处理程序。该处理器函数必须只能接受一个参数,这将是USB VCP对象。传入以禁用回调。None

触发器的有效值为:

  • USB_VCP.IRQ_RX: 新数据可用于从 USB VCP 对象读取。

常数

USB_VCP.RTS
USB_VCP.CTS

选择流量控制类型。

USB_VCP.IRQ_RX

的 IRQ 触发值 USB_VCP.irq()