python从串口接收到数据后解析
python从串口接收数据,数据长度固定
数据示例如下02 24 30 20 30 30 31 31 32 39 30 30 30 30 31 30 0D
接收到的是16进制ascii码
请问如何将粗体部分的数据解析成一个数。(接收到数据的第11位到第16位)
30 30 30 30 31 30
分别对应0-0-0-0-1-0,分别对应十万,万,千,百,十,个
解析到的就是10
目前代码如下
用chr转换data[10],直接转换失败。求解
import serial
from time import sleep
def recv(serial):
while True:
data = serial.read_all().decode() # str
if data == '':
continue
else:
break
sleep(2.1)
return data
if __name__ == '__main__':
serial = serial.Serial('COM19', 9600, timeout=10)
if serial.isOpen():
print("serial open success")
else:
print("serial open failed")
while True:
data = recv(serial)
print(data) # str