溫馨提示×

python串口通信的方法是什么

小億
110
2023-12-04 20:46:26
欄目: 編程語言

Python串口通信的方法通常使用PySerial庫來實現(xiàn)。

首先,需要安裝PySerial庫??梢允褂靡韵旅钸M行安裝:

pip install pyserial

然后,在Python代碼中引入PySerial庫:

import serial

接下來,可以使用serial.Serial()函數(shù)來創(chuàng)建一個串口對象,設(shè)置串口的端口號、波特率等參數(shù)。例如:

ser = serial.Serial(
    port='/dev/ttyUSB0',  # 串口端口號
    baudrate=9600,        # 波特率
    parity=serial.PARITY_NONE,  # 校驗位
    stopbits=serial.STOPBITS_ONE,  # 停止位
    bytesize=serial.EIGHTBITS  # 數(shù)據(jù)位
)

可以使用ser.write()方法向串口發(fā)送數(shù)據(jù),例如:

ser.write(b'Hello!')  # 發(fā)送字節(jié)數(shù)據(jù)

可以使用ser.read()方法從串口讀取數(shù)據(jù),例如:

data = ser.read(10)  # 讀取10個字節(jié)的數(shù)據(jù)
print(data)

需要注意的是,串口通信中發(fā)送和接收的數(shù)據(jù)類型為字節(jié)類型(bytes)。在發(fā)送數(shù)據(jù)時,需要使用b前綴表示字節(jié)數(shù)據(jù),如b'Hello!'。而在接收數(shù)據(jù)時,返回的數(shù)據(jù)也是字節(jié)類型,可以使用decode()方法將其轉(zhuǎn)換為字符串類型。

在使用完串口后,需要關(guān)閉串口連接,可以使用ser.close()方法來關(guān)閉串口:

ser.close()

以上就是基本的Python串口通信的方法。根據(jù)具體的需求,還可以使用其他方法來處理串口數(shù)據(jù),如設(shè)置超時時間、使用串口事件回調(diào)等。具體的使用方法可以參考PySerial庫的官方文檔。

0