使用pyserial ser.read结果会附加一个\ r \ n

时间:2012-05-23 05:05:19

标签: python pyserial

以下是连接到HA7E 1线适配器的DS18B20的1线序列号。 ASCII“S”是获取序列号的代码。

import serial
ser = serial.Serial("/dev/cu.USA19H1d2P1.1",9600, bytesize=8, parity='N', stopbits=1,timeout=0)
ser.write("S")
ser.read(64)

运行上面的结果给出'69000001CFD7E328 \ r'

有没有办法停止\ r \ n附加?

1 个答案:

答案 0 :(得分:2)

你可能应该认为'\ r'是该设备协议的一部分。那么问题就变成了:“如何丢弃我对字符串末尾不感兴趣的协议垃圾?”

答案很简单:

raw_serial = ser.read(64)
serial_number = string.rstrip(raw_serial, '\r')