首頁 >後端開發 >Python教學 >python中serial串列埠通訊怎麼實現

python中serial串列埠通訊怎麼實現

王林
王林原創
2024-02-20 22:21:031430瀏覽

python中serial串列埠通訊怎麼實現

標題:Python中Serial串列埠通訊的實作與程式碼範例

引言:
串列通訊是用於資料傳輸的一種常見方式,廣泛應用於各種領域,如物聯網、嵌入式系統、機器人等。而Python作為一種簡單易用的腳本語言,也提供了Serial函式庫來實現串口通訊的功能。本文將介紹如何使用Python的Serial函式庫進行串口通信,並附上具體的程式碼範例。

一、Serial函式庫的安裝
在Python中進行串列通訊之前,我們需要安裝PySerial函式庫。可以透過命令列輸入以下命令來安裝:

pip install pyserial

安裝完成後,我們就可以在Python中使用Serial函式庫了。

二、Serial函式庫的基本用法
Serial函式庫提供了一系列的介面和方法,用於設定和控制串列埠的參數,並進行資料的傳送和接收。以下是Serial函式庫的用法範例:

  1. 導入Serial函式庫

    import serial
  2. 建立Serial物件

    ser = serial.Serial()
  3. #開啟串列埠

    ser.port = 'COM1'  # 设置串口号
    ser.baudrate = 9600  # 设置波特率
    ser.open()  # 打开串口
  4. 傳送資料

    ser.write(b'Hello, world!')  # 发送数据
  5. #接收資料

    data = ser.readline()  # 读取数据
    print(data.decode())  # 打印数据
  6. ##關閉串列埠

    ser.close()  # 关闭串口

三、實際應用範例

為了更清晰地示範Serial庫的使用,下面我們將展示一個簡單的串口通訊實際應用範例:透過串列埠發送溫度數據,並從串口接收並列印溫度資訊。

  1. 傳送端程式碼:

    import serial
    import time
    
    ser = serial.Serial()
    ser.port = 'COM1'
    ser.baudrate = 9600
    ser.open()
    
    while True:
     temperature = input("请输入当前温度:")  # 输入温度
     ser.write(temperature.encode())  # 发送温度数据
    
     time.sleep(1)  # 延时1秒

  2. 接收端程式碼:

    import serial
    
    ser = serial.Serial()
    ser.port = 'COM2'
    ser.baudrate = 9600
    ser.open()
    
    while True:
     data = ser.readline()  # 读取串口数据
     temperature = float(data.decode())  # 将字符串转换为浮点数
     print("当前温度:{}℃".format(temperature))  # 打印温度信息

在以上範例中,發送端透過input函數取得溫度數據,並將資料經過編碼後傳送到串列埠中。接收端從串列埠讀取數據,並透過decode函數將資料解碼為字串,然後再轉換為浮點數,並進行列印。

結論:

透過Python中Serial庫的使用,我們可以方便地實現串口通信,並進行資料的發送和接收。希望本文的程式碼範例能幫助讀者更好地理解和應用Serial庫,從而實現各種串口通訊的需求。

以上是python中serial串列埠通訊怎麼實現的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn