簡體   English   中英

"在斷開連接期間處理pyserial中的異常"

[英]Handle exception in pyserial during disconnection

我有從串口讀取數據的代碼。

try: 
  dataIn = self.port.read(100) 
except serial.SerialException: 
  #do some work
  return None

感謝Jonathan Eunice 你的建議解決了我的問題。

現在我使用以下代碼:

try:
    dataIn = self.port.read()
except serial.SerialException as e:
    #There is no new data from serial port
    return None
except TypeError as e:
    #Disconnect of USB->UART occured
    self.port.close()
    return None
else:
    #Some data was received
    return dataIn

您沒有共享完整的代碼,但如果您嘗試索引錯誤編號,那么AFAIK就無法運行。 嘗試:

try: 
  dataIn = self.port.read(100) 
except serial.SerialException as e:
  # ...
  if e.errno != errno.EAGAIN:
  # ...

此外,如果您在異常處理程序中工作可能導致進一步的異常,那么嵌套處理程序。 例如:

try: 
  dataIn = self.port.read(100) 
except serial.SerialException as e:
  try:
    # more dangerous stuff
  except serial.SerialException as e2:
    # handle nested expression

我的老板給了我一個任務來檢查可訪問和不可訪問的端口。 我列出了所有端口,但我不知道如何檢查可訪問端口和可訪問端口? 我怎樣才能在pyserial中做到這一點。 這是我的辦公室筆記本電腦,我無法打開設備管理器

"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM