Python串口通信

2019-11-14  本文已影响0人  JM68

前言

从需求说起

pyserial

python 串口通信第三方包

安装

串口的端口

最开始在mac上使用的USB转串口的转接线 发现热插拔后串口端口会改变 但是如果服务器或者本地PC是有串口的就不会存在端口改变 导致断电/松线会改变端口 服务挂掉 因为是多串口(有的设备只支持输出并不支持输入查询)也没有办法遍历所有串口来确认设备端口 所以尽量购买带串口PC

如何查询串口端口

import serial.tools.list_ports
serial_ports = [i[0] for i in serial.tools.list_ports.comports()]
print(serial_ports)

串口通信

class Ser(object):
    """
    serial client
    """

    def __init__(self, baud_rate, port):
        self.port = serial.Serial(port=port, baudrate=baud_rate, bytesize=8, parity=serial.PARITY_NONE,
                                  stopbits=serial.STOPBITS_ONE, timeout=1)

    def send_cmd(self, cmd):
        self.port.write(cmd.encode('utf-8'))

    def read_cmd(self):
        response = self.port.readline()
        return response.decode('utf-8')

    def read_num(self, num):
        response = self.port.read(num)
        return response
上一篇 下一篇

猜你喜欢

热点阅读