python 之serial


一 先按照 pywin32:pywin32是一個非常強大的Python擴展庫,是Python調用Windows系統底層功能的最佳接口,不安裝這個按照pyserial也沒有用

二 按裝pyserial

三pyserial使用注意:python提供了n=serial.iswaiting   serial.read(n)來接收數據,serial.iswaiting啟動接收,並返回接收數據的長度,然后用read(n)將這指定的數據讀出來。但現實中的問題是兩者的中間需要加延時(根據波特率計算發送內容所需的時間,這樣就不會出現延時過短讀出的不全;延時時間長了就會出現前后幀發出的內容重合到一起),此外如果需要判斷什么時候串口不活動,可以再serial.iswaiting一直延時(超過幾個字符的傳送時間,軟件延時計數器累加),而在循環體外將計數器清零,在累計的幾個字符時間接受的數據長度還為0則認為通訊結束。

while uart.iswaiting ==0 : #作用1:通訊期間只起到觸發開始接受,然后延時一定時間直到全部接收完成;作用2:停止傳遞期間,判斷何時通訊結束,相當於超時設計

  time.sleep(t)

  if(++count == delay_5bit)

    count =0

    break

time.sleep(Tmessage) #一幀的傳遞時間

len=uart.iswaiting

if n:

  uart.read(len)

       #接收處理

else:

  #通訊斷開或者串口關閉識別處理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM