我有一個運行 Linux - Raspbian 的 Raspberry Pi。
問題是當我嘗試讀取 USB 連接埠時,我看到了奇怪的行為。它給出間歇性結果。
昨晚它有效,今天早上它不起作用 - 完全相同的代碼。
dmesg | grep tty
返回-
[ 0.000301] console [tty1] enabled
[ 0.812585] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 81, base_baud = 0) is a PL011 rev2
[ 0.814150] 3f215040.serial: ttyS0 at MMIO 0x0 (irq = 53, base_baud = 31250000) is a 16550
[ 4.867127] cdc_acm 1-1.5:1.0: ttyACM0: USB ACM device
我的設備位於 port ttyACM0
。
當我檢查時,我可以確認連接埠已開啟ser.isOpen()
。
當我打開 Python3 終端機時,我會執行以下命令:
import serial
port = "ttyACM0"
ser = serial.Serial("/dev/%s" % port, 9600, timeout=0.5)
while True:
line = ser.readline()
print(line)
print(line.decode())
今天早上它返回了所有內容:
b''
b''
b''
我已經更換了 USB 電纜,並檢查正在寫入連接埠的裝置正在寫入資料。
我唯一的猜測是它是 Linux/Raspbian 中的東西,但我不確定。
關於如何進一步調試這個的任何想法?