我仍然不明白如何每个数据文件只捕获一个脉冲
我的教授和我正在尝试修改下面的代码,以便在我们从 Arduino 收到的每个脉冲后发送一个唯一命名的 .txt 文件。到目前为止,我们的努力没有结果。现在它会将一段时间后收到的所有数据发送给我们,并将所有脉冲数据编译到一个文件中。由于文件名没有改变,存储在文件中的数据只是临时的。
Arduino Sketch 被称为 Girino,可以在这里找到。我们希望修改的代码是附带的名为 readgirino.py 的 Python 代码,可在步骤 #23 下找到。我认为我们必须修改这个循环;
for i in range(5):
stream.write('s')
eventString = stream.read(1280)
eventData.append(np.array(unpack( '1280B', eventString )))
print eventData
stream.write('S')
stream.flushInput()
np.savetxt( "data.txt", eventData[4] )
有什么建议么?
谢谢!
更新 - 创建一个唯一的文件名解决了:
stream.write('S') stream.flushInput() n = n + 1
np.savetxt( "data" +str( n) + ".txt", eventData[4] )
虽然我仍然不明白如何只捕获每个数据文件的一个脉冲。
Girino 代码没有提到 eventData,但我认为这意味着在我运行 readgirino.py 代码后出现在终端窗口中的数组: Girino 告诉我它已准备好缓冲区大小:1280
波特率:115200
等待时间:1248
预分频器:128
触发事件:3
门槛:127
将预分频器设置为:128
将阈值设置为:50
缓冲区大小:1280
波特率:115200
等待时间:1248
预分频器:128
触发事件:3
门槛:50
[数组([0, 0, 0, ..., 0, 0, 0])] [数组([0, 0, 0, ..., 0, 0, 0]), 数组([0, 0 , 0, ..., 0, 0, 0])] [array([0, 0, 0, ..., 0, 0, 0]), array([0, 0, 0, ..., 0, 0, 0]), 数组([0, 0, 0, ..., 0, 0, 0])] [数组([0, 0, 0, ..., 0, 0, 0]) , 数组([0, 0, 0, ..., 0, 0, 0]), 数组([0, 0, 0, ..., 0, 0, 0]), 数组([0, 0, 0, ..., 0, 0, 0])] [array([0, 0, 0, ..., 0, 0, 0]), array([0, 0, 0, ..., 0 , 0, 0]), 数组([0, 0, 0, ..., 0, 0, 0]), 数组([0, 0, 0, ..., 0, 0, 0]), 数组([0, 0, 0, ..., 0, 0, 0])]