我有一个python脚本来读取我的arduino输出的串行数据。Arduino正在读取3个IMU的角度。你知道吗
在我更改IMU的方向和python中的值更改之间大约有4秒的延迟。在Arduino的串行监视器中,一切正常。你知道吗
在我重新安装Windows之前,代码一直在工作。我已经三次检查了软件包是否正确安装,并在另一台计算机上尝试了代码。你知道吗
我试着加上“ser.reset\输入\缓冲区()“在我读台词之前。它解决了这个问题,但弄乱了格式,使其难以辨认。你知道吗
import datetime
import os.path
from os import path
ser = serial.Serial('COM3', 230400, timeout=1)
ser.close()
ser.open()
#Creating text file
file = "sensor_data.txt"
if path.exists(file):
i = 1
while path.exists(file):
file = 'sensor_data_' + str(i) + '.txt'
i = i + 1
file_data = open(file,"w")
#Reading COM3 & Writing to text file
print("Saving COM3 to file...\n")
print("Hit 'Ctrl+C' to stop collecting data.\n") #Ctrl C to kill and save data
try:
while True:
timestamp = datetime.datetime.now().time()
line = ser.read(20)
line = str(line, 'utf-8')
line = str(timestamp) + line
print(line)
file_data.write(line)
except UnicodeDecodeError:
file_data.close()
os.remove(file)
print("Error! Please Run Module again.")
except KeyboardInterrupt:
print("Data saved in",file)
file_data.close()
ser.close()
在一切出错之前,它几乎是实时更新的。任何建议都将不胜感激!你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐