當前位置:首頁 » 編程語言 » python串口讀寫

python串口讀寫

發布時間: 2023-08-31 16:38:08

python是什麼意思

python本意是:巨蛇,大蟒;Python是一種跨平台的計算機程序設計語言。


python是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。最初被設計用於編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越多被用於獨立的、大型項目的開發。

Python的創始人為荷蘭人吉多·范羅蘇姆(Guido van Rossum)。1989年聖誕節期間,在阿姆斯特丹,Guido為了打發聖誕節的無趣,決心開發一個新的腳本解釋程序,作為ABC 語言的一種繼承。

之所以選中Python(大蟒蛇的意思)作為該編程語言的名字,是取自英國20世紀70年代首播的電視喜劇《蒙提.派森的飛行馬戲團》(Monty Python's Flying Circus)。

㈡ python3.5 讀取串口中的數據怎麼解碼

1、安裝串口庫
2、採用默認通信參數
import serial
t = serial.Serial('com1',9600)
n = t.write('you are my world')print t.portstrprint n
str = t.read(n)print str
3、可以自己設置參數

import timeimport serialser = serial.Serial( #下面這些參數根據情況修改 port='COM1', baudrate=9600, parity=serial.PARITY_ODD, stopbits=serial.STOPBITS_TWO, bytesize=serial.SEVENBITS)data = ''while ser.inWaiting() > 0: data += ser.read(1)if data != '': print data
注意:Python與多個串口通信的時候,要確定埠號。如果有時間的話,可以自己寫一個查詢所有埠的信息,不想這么麻煩的話,下載個串口助手,自己看埠信息,在py文件中修改serial.Serial()裡面的埠號。

㈢ plc與python之間實現通信

python語言與plc建立串口通信時,無法直接讀寫。
用到python的serial 模塊

在創建串口對象時需要定義其屬性與plc一致:

self.main_engine.baudrate = self.bps
self.main_engine.bytesize = 7
self.main_engine.parity = 'E'
self.main_engine.stopbits = 2

重點:在寫入數據後,需要寫16進制數"0D",結束標志位

self.main_engine.write("@00WD1010000152*".encode())
self.main_engine.write(binascii.a2b_hex("0D"))

㈣ 如何用python寫個串口通信的程序

打開串口後啟動一個線程來監聽串口數據的進入,有數據時,就做數據的處理。

㈤ 如何用python實現串口通信

Python非常適合寫一些測試的腳本,如快速的串口通信測試等。如果使用VC++ QT開發,可能用時較多,使用python,如果掌握使用方法,可以直接讀寫測試,配合設備或是串口助手,很快驗證與實現。
Python有沒有現成的串口API直接調用呢?經過實踐驗證,需要安裝一個叫 Pyserial的組件即可。這個可以在github上下載。

在windows 7 64bit 上可以使用嗎?當然可以使用,我安裝的python3.5為64位的。把下載後的文件,其中有一個serial的文件夾,拷貝到python35安裝路徑, C:\Python35\Lib\site-packages\serial
網上可以搜一下windows的安裝包,安裝完也是:C:\Python35\Lib\site-packages\serial ,可以用最新的版本,替換即可。
測試的方法:在python IDE里測試:
>>> import serial
這里如果報錯,是python版本與pyserial版本沒有配合好。如果正常,不返回,即可以導入serial模塊。
>>> ser=serial.Serial("COM5",115200)
這里為COM5,115200的波特率。如果打不開,請檢查安裝環境。
>>> ser.write('hello,serial test'.encode())
17
發送測試(如果返回位元組數,說明返回成功),這里需要轉換一個編碼為位元組。
以上測試,可以使用現在的設備或是串口助手,如安裝Virtual Serial Port Driver 7.2 虛擬串口軟體,設置一對串口,進行自發自收的測試。
>>> print(ser.readline())
b'abcdefg\r\n'
這里是串口接收,有接收的超時。設備或是串口助手發送一個字元串,以回車換行結束,這里就可以收到列印出來。
也可以用ser.read(),這里只接收一個字元來實現。
上面已經實現了基本的串口操作。
關閉串口為:
>>> ser.close()
如果使用python,一般寫個py文件,就像windows bat 批處理一樣,這是python強大的地方。如果寫一個py腳本呢?其實只要把上面的命令,一條條寫下來,就是一個腳本,測試如下:
import serialser=serial.Serial("COM5",115200,timeout=0.5)for i in range(0,100-1):ser.write('hello\r\n'.encode())print(ser.readline());ser.close()

熱點內容
linux嵌入式書籍 發布:2025-02-04 03:44:07 瀏覽:333
sql分組最後一條 發布:2025-02-04 03:38:24 瀏覽:271
單宮數字奇門演算法 發布:2025-02-04 03:33:57 瀏覽:863
文件夾盒子 發布:2025-02-04 03:33:05 瀏覽:110
python教案 發布:2025-02-04 03:10:38 瀏覽:798
怎麼編程套料 發布:2025-02-04 02:50:31 瀏覽:208
副編譯 發布:2025-02-04 02:05:25 瀏覽:613
解壓按摩師 發布:2025-02-04 01:21:31 瀏覽:424
linuxssh限制 發布:2025-02-04 01:20:40 瀏覽:697
腳本式是什麼 發布:2025-02-04 01:06:24 瀏覽:250