class USB_VCP -- USB 虛擬通訊埠¶
USB_VCP 類別允許建立一個類似 stream 的物件,代表 USB 虛擬通訊埠。它可用於透過 USB 向所連接的主機讀取與寫入資料。
建構子¶
- class pyb.USB_VCP(id: int = 0)¶
建立一個新的
USB_VCP物件。當暴露的 USB VCP 埠不只一個時,id 引數會選擇要使用哪一個埠。方法¶
- init(*, flow: int = -1) None¶
設定 USB VCP 埠。若 flow 引數不是
-1,則設定流量控制,即USB_VCP.RTS與USB_VCP.CTS的位元 OR 運算。RTS管控讀取行為;CTS管控寫入行為。
- setinterrupt(chr: int) None¶
設定用於中斷執行中 Python 程式碼的字元。預設設為 3(CTRL-C),當透過 USB VCP 埠收到 CTRL-C 字元時,會引發 KeyboardInterrupt 例外。
設為 -1 可停用此中斷功能。當你想透過 USB VCP 埠送出原始位元組時,這會很有用。
- read(nbytes: int | None = None) bytes | None¶
從序列裝置最多讀取
nbytes個位元組,並以 bytes 物件傳回。若未指定nbytes,則此方法會讀取序列裝置中所有可用的位元組。USB_VCP stream 隱含地以非阻塞模式運作,因此若無待處理的資料可用,此方法會立即以None值傳回。
- readinto(buf: bytearray, maxlen: int | None = None) int | None¶
從序列裝置讀取位元組並儲存到
buf中,它應為類緩衝區物件。最多讀取len(buf)個位元組。若提供了maxlen,則最多讀取min(maxlen, len(buf))個位元組。傳回讀取並儲存到
buf的位元組數,若無待處理的資料可用則傳回None。
- recv(data: int | bytearray, *, timeout: int = 5000) bytes | int¶
在匯流排上接收資料:
data可為一個整數,即要接收的位元組數,或一個可變緩衝區,將以所接收的位元組填入。timeout是等待接收的逾時時間(以毫秒為單位)。
傳回值:若
data是整數,則傳回一個包含所接收位元組的新緩衝區,否則傳回讀入data的位元組數。
常數¶