python串口收發(fā)數(shù)據(jù)的方法是什么

小億
128
2023-12-04 21:36:58

Python中可以使用pyserial庫(kù)來(lái)實(shí)現(xiàn)串口的收發(fā)數(shù)據(jù)。

首先,需要安裝pyserial庫(kù)??梢允褂靡韵旅顏?lái)安裝:

pip install pyserial

接下來(lái),可以使用以下代碼來(lái)實(shí)現(xiàn)串口的收發(fā)數(shù)據(jù):

import serial

# 打開(kāi)串口
ser = serial.Serial('COM1', 9600, timeout=0.5)

# 發(fā)送數(shù)據(jù)
ser.write(b'Hello World')

# 接收數(shù)據(jù)
data = ser.read(10)

# 關(guān)閉串口
ser.close()

在代碼中,首先使用serial.Serial函數(shù)打開(kāi)串口。參數(shù)COM1表示要打開(kāi)的串口號(hào),9600表示波特率,timeout表示讀取數(shù)據(jù)的超時(shí)時(shí)間。

然后,可以使用ser.write方法發(fā)送數(shù)據(jù),b'Hello World'表示要發(fā)送的數(shù)據(jù)。

接著,可以使用ser.read方法來(lái)接收數(shù)據(jù)。10表示要接收的數(shù)據(jù)長(zhǎng)度。

最后,使用ser.close方法關(guān)閉串口。

需要注意的是,串口通信的設(shè)置,如波特率、數(shù)據(jù)位、停止位、校驗(yàn)位等需要與設(shè)備進(jìn)行匹配,否則無(wú)法正常通信。

0