我有一个用C语言编写并在Linux上运行的程序,它每隔大约16毫秒从串口设备获取一次流数据。这是一段对时间要求很高的代码,运行良好。另一段代码也实时地绘制这些数据,但它的及时执行对我来说没有数据采集部分那么重要。也就是说,我不想等到所有的绘图和绘图功能都完成后才再次轮询串口。因此,我在考虑让一个单独的线程来完成应用程序的绘图部分,或者让数据采集部分成为单独的线程。当涉及到低级编程时,我真的几乎没有经验,所以有人能给我指出正确的方向吗?我正在使用的伪代码看起来像这样:
int xyz; // global variable
int main() {
do_some_preliminary_s
我正在使用Pyserial (+Python2.7)读取从眼球跟踪器(CRS Live-Track设置为串口)获取的眼球跟踪坐标。使用下面的代码,我能够成功地启动跟踪器,读取/保存一行坐标,停止跟踪器,然后关闭。我的问题是,我需要连续读取坐标,同时执行其他任务,如刺激显示。现在,当我读入数据('trial1 = ser.readline')时,我不能做任何事情。我必须等到读取完数据后才能继续。有没有一种方法可以在我显示激励/采集响应等时从串行端口连续读取数据?
我需要打开跟踪器,收集试验期间的数据,然后关闭跟踪器。
import serial, time
ser = seri
我有一个大型的Pandas DataFrame,列a和b (浮动中的坐标)和列c (值),必须在列a和b中的某一步上进行绑定和总结。结果的顺序是相关的,因为a和b模拟了采样时用c值采集的坐标。在接下来的步骤中,结果将被重新塑造成图像并进一步处理。
这可以使用嵌套循环来解决(参见下面),但是,对于较大的数据集或较小的步骤大小,它显然不能很好地扩展。
示例:
import pandas as pd
import time
import numpy as np
a = np.random.random(int(10E7))
b = np.random.random(int(10E7))
c = n