hub.USB_VCP
– USB_VCP¶
This class allows you to send and receive data from another device using USB.
-
class
hub.
USB_VCP
(id=0)¶ Create a stream-like object representing the USB virtual comm port. It can be used to read and write data over USB to the connected host.
Only
id=0
can be used.-
init
(flow=- 1) → None¶ Configures the USB VCP port.
- Keyword Arguments
flow – Sets the flow control setting as a bitwise-or of
USB_VCP.RTS
(read behavior) andUSB_VCP.CTS
(write behavior). If this argument is -1, nothing happens.
-
setinterrupt
(chr: int) → None¶ Sets the character which interrupts running Python code. This is set to 3 (CTRL-C) by default. When this character is received over the VCP port, a
KeyboardInterrupt
exception is raised.Choose
-1
to disable this interrupt. This is useful when you want to send raw bytes over the VCP port.
-
isconnected
() → bool¶ Checks if there is an active connection.
- Returns
True
if connected,False
if not.
-
any
() → bool¶ Checks if characters are waiting to be read.
- Returns
True
if any characters are waiting,False
if not.
-
close
() → None¶ This method does nothing. It exists so that this object can act as a file.
-
read
() → Optional[bytes]¶ -
read
(nbytes: int) → Optional[bytes] Reads data from the port in a non-blocking way.
- Parameters
nbytes – How many bytes to read at most. If no value is given, it reads all available data.
- Returns
The received bytes, or
None
if no pending data is available.
-
readinto
(buf) → Optional[int]¶ -
readinto
(buf, maxlen: int) → Optional[int] Reads data from the port into an existing buffer in a non-blocking way.
- Parameters
maxlen – How many bytes to read. At most
min(maxlen, len(buf))
bytes will be read.- Returns
The number of bytes stored into
buf
, orNone
if no pending data is available.
-
readline
() → Optional[bytes]¶ Reads a whole line from the serial device.
- Returns
The data including the trailing newline character, or
None
if no pending data is available.
-
readlines
() → list¶ Reads as much data as possible from the serial device and breaks it into lines.
- Returns
Returns a list of
bytes
objects, each object being one of the lines. Each line includes the newline character. Returns an empty list if no pending data is available.
-
write
(buf: bytes) → int¶ Writes the given bytes to the serial device.
- Returns
The number of bytes written.
-
recv
(data: Union[int, bytearray], timeout=5000) → int¶ Receives data on the bus.
- Parameters
data – Either an integer specifying the number of bytes to receive, or a mutable buffer, to be be filled with received bytes.
timeout – Timeout in milliseconds to wait for the incoming data.
- Returns
A new buffer with received bytes if
data
was an integer, or the number of bytes read into the buffer if a buffer was given.
-
send
(data: Union[int, bytes], timeout=5000) → int¶ Send data on the bus.
- Parameters
data – An integer or buffer object to write.
timeout – Timeout in milliseconds to wait for the data to be sent.
- Returns
The number of bytes sent.
-
RTS
= 1¶
-
CTS
= 2¶
-