python控制串口

  1. 获取电脑中所有的串口号的函数
serial_com = serialPortFile.GetCom()
# 获取并存储串口号到数组
def GetCom():
    port_list = list(serial.tools.list_ports.comports())
    #通过serial.tools.list_ports.comports()获取所有的串口号之后进行了一步转换,存在一个数组中
    #这样,传入serial中才能被识别
    print(len(port_list))
    portcnt = len(port_list)
    serial_com = []
    for m in range(portcnt):
        port_list_1 = list(port_list[m])
        serial_com.append(port_list_1[0])
        #serialPortFile.GetCom()是获取所有串口号的函数
    return serial_com
  1. 串口打开关闭函数,串口打开之后创建了一个线程threading,线程中一直监视串口的状态,一旦接受到数据,就把数据显示到接受数据显示框中。
def usart_ctrl(com, bps,parity_,stopbits_,bytesize_):
    #print(__file__, sys._getframe().f_lineno, port_, bitrate_, var.get())
    global ser, button_var
    if button_var.get() == "打开串口":
        button_var.set("关闭串口")
        ser = serial.Serial(
            port=com,
            baudrate=int(bps),
            parity=parity_,
            timeout=0.2,
            stopbits=float(stopbits_),
            bytesize=int(bytesize_))
        if ser.is_open:
            pass
        else:
            ser.open()
        recv_data = threading.Thread(target=thread_recv)
        recv_data.start()
    else:
        button_var.set("打开串口")
        if ser.is_open:
            ser.close()
        else:
            pass
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值