【问题标题】:How to Read the serial port name from text box (editable)如何从文本框中读取串口名称(可编辑)
【发布时间】:2018-03-07 10:06:46
【问题描述】:

我正在尝试使用以下代码在 Linux 中使用 Python 2.7 PyQt4 打开串行端口,它工作正常:

serialport.port = "/dev/ttyACM1"
serialport.baudrate = 115200       
serialport.open() 

我不想像上面那样硬编码串口名称。我想将串行端口名称作为用户从可编辑文本框中的输入:

textbox.setText("/dev/ttyACM1")
serialport.port = textbox.text()
serialport.baudrate = 115200       
serialport.open() 

但我无法将textbox.text() 格式转换为serialport.port。 出现以下错误:

ValueError: "port" 必须是 None 或字符串,而不是

【问题讨论】:

    标签: python python-2.7 pyqt pyqt4 pyserial


    【解决方案1】:

    你正在使用 PyQt 并且有这样的东西:

    w = QWidget()
    textbox =  QLineEdit(w)
    

    对吗?!

    错误消息告诉您textbox.text() 的结果是QString 类型。但是你需要一个string。 您可以使用 str(textbox.text()) 简单地转换结果

    serialport.port = str(textbox.text())
    

    应该能解决问题。

    【讨论】:

      猜你喜欢
      • 2010-10-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多