我正在尝试使用 Python 和 Arduino 构建 CPU 监视器。Arduino 工作正常,但我在使用 Python 时遇到问题。我的问题是我无法让 PySerial 发送一个 int 或一个字符串。
如果我尝试发送一个 Int 我得到:
TypeError: 'int' object is not iterable
如果我将 Int 转换为字符串,则错误是:
TypeError: an integer is required
这似乎很奇怪......
这是我的代码:
import psutil
import serial
ser = serial.Serial(2)
while True:
line = ser.readline()
line = str(line[:-2],'utf-8')
if line=="cpu":
cpus = psutil.cpu_times_percent(percpu=True)
for x in range(4):
v=int(cpus[x][0]+cpus[x][1])
print(v)
ser.write(v)
注释掉最后一行确认来自 CPU 的值是 0 到 100 之间的整数,如预期的那样。
这是 PySerial 中的一个错误,还是我只是瞎了眼也看到了错误?