我对python很新,目前只使用它来尝试从我的微控制器绘制数据。
import serial
import numpy
import matplotlib.pyplot as plt
from drawnow import *
port = serial.Serial('com4',9600)
while True:
while (port.inWaiting()==0):
pass
sstring = port.readline()
dataArray = sstring.split(',')
Pterm = float(dataArray[0])
Iterm = float(dataArray[1])
Dterm = float(dataArray[2])
Error = float(dataArray[3])
print Pterm
print Iterm
print Dterm
print Error
print
现在,有时我收到数据没有问题;
但有时候我会收到像
这样的消息我从微控制器串行传输的字符串总是看起来像上图,但幅度不同。
我可以调整我的代码来解决甚至可能以脚本stil一直运行的方式忽略这些错误吗?
答案 0 :(得分:0)
似乎当我在我的代码中添加了一个解码方法时,它开始变得更好了。
我更改了sstring = port.readline()
到sstring = port.readline().decode('ascii').strip()
感谢您的帮助,我将确保包含异常处理。