使用Python解析从USB读取的串行数据



我对python完全陌生。

我正在使用以下代码从USB设备中绘制数据,该设备正在使用printf()将数据打印到我的树莓派。我正在使用以下python代码读取这些数据并将其打印到屏幕上:

 #!/usr/bin/python
    import serial
    ser = serial.Serial(
    port='/dev/ttyUSB0',
    baudrate=115200,
    parity=serial.PARITY_NONE,
    stopbits=serial.STOPBITS_ONE,
    bytesize=serial.EIGHTBITS,
    timeout=0)
    print("connected to: " + ser.portstr)
    ser.write("helpn");
    while True:
    line = ser.readline();
    if line:
        print(line),
    ser.close()

代码按预期打印以下结果(这就是我使用printf()的目的):

Received Ticks are: 380 and nodeID is: 1

如何解析行变量,以便将Ticks(380)和nodeID(1)的数量保存为两个变量,以便在python中使用这些变量进行HTTP POST请求?

拆分字符串,然后取所需部分:

>>> s = "Received Ticks are: 380 and nodeID is: 1"
>>> s.split()
['Received', 'Ticks', 'are:', '380', 'and', 'nodeID', 'is:', '1']
>>> words = s.split()
>>> words[3]
'380'
>>> words[7]
'1'
>>> 

最新更新