USB_VCP类 – USB 虚拟通讯端口¶
USB_VCP类允许创建一个 stream
表示USB虚拟通信端口的对象。可用来通过USB 向主机读写数据。
构造函数¶
- class pyb.USB_VCP(id=0)¶
创建一个新USB_VCP对象。
方法¶
- USB_VCP.init(*, flow=-1)¶
配置 USB VCP 端口。如果 flow 参数不是 -1,则该值设置流量控制,它可以是
USB_VCP.RTS
和USB_VCP.CTS
的按位或。 RTS 用于控制读取行为,CTS 用于控制写入行为。
- USB_VCP.setinterrupt(chr)¶
设置中断运行的Python代码的字符。其默认值为3 (CTRL-C)。当在USB VCP端口上接收CTRL-C字符时,会出现键盘中断异常。
设置为-1以禁用此中断功能。这对您在USB VCP端口上发送原始字节大有帮助。
- USB_VCP.isconnected()¶
若USB 连接成串行设备,则返回
True
;否则返回False
。
- USB_VCP.any()¶
若有字符在等待中,返回
True
;否则返回False
。
- USB_VCP.close()¶
该方法不执行任何动作。其意义在于使USB_VCP对象可作为文件运行。
- USB_VCP.read([nbytes])¶
从串行设备中读取尽量多的
nbytes
,并将其作为一个字节对象返回。若未指定nbytes
,则该方法按照 readall() 运行。 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)¶
Receive data on the bus:
data
可以是一个正数,其代表了接收的数据大小,或者一个元组缓冲,用来接收数据。timeout
is the timeout in milliseconds to wait for the receive.
返回值: 如果
data
是一个正数,那么缓冲中已经接收了数据,否则是读取的数据被返回。
- USB_VCP.send(data, *, timeout=5000)¶
在总线上接收数据:
data
可为一个整数,即要接收的字节的数量,或一个将用接收到的字节填充的可变缓冲区。timeout
是以毫秒计的等待接收的超时时长。
返回发送的字节数量。