【发布时间】:2015-11-17 07:12:33
【问题描述】:
目前,我正在使用 Visual Studio C++ 开发实时界面。
我面临的问题是,当缓冲区为数据存储运行时,那个时候 .exe 在缓冲区中的点数据存储处没有响应。我从运动传感器收集数据为 130Hz。我尝试增加计算机的虚拟内存,但问题没有解决。
代码结构:
int main(){
int no_data = 0;
float x_abs;
float y_abs;
int sensorID = 0;
while (1){
// Define Buffer
char before_trial_output_data[][8 * 4][128] = { { { 0, }, }, };
// Collect Real Time Data
x_abs = abs(inchtocm * record[sensorID].y);
y_abs = abs(inchtocm * record[sensorID].x);
//Save in buffer
sprintf(before_trial_output_data[no_data][sensorID], "%d %8.3f %8.3f\n",no_data,x_abs,y_abs);
//Increment point
no_data++;
// Break While loop, Press ESc key
if (GetAsyncKeyState(VK_ESCAPE)){
break;
}
}
//Data Save in File
printf("\nSaving results to 'RecordData.txt'..\n");
FILE *fp3 = fopen("RecordData.dat", "w");
for (i = 0; i<no_data-1; i++)
fprintf(fp3, output_data[i][sensorID]);
fclose(fp3);
printf("Complete...\n");
}
【问题讨论】:
-
我假设代码是某种伪代码,因为它不会编译?
-
如果要编译可以使用鼠标坐标记录,但现在是运动传感器的伪代码。
-
Windows 不是实时操作系统。 “实时界面”的真正含义是什么?
-
Real rime 接口与传感器用于创建虚拟现实。
标签: c++ visual-studio visual-c++ real-time