我正在运行一个必须以 1000Hz 读取的加速度计,因此收集加速度计数据的循环需要在不到 1 毫秒的时间内运行,目前它的运行时间约为 3.4 毫秒,是否可以优化此循环以减少其花费的时间跑?
void readVibrations(int m){
t = micros(); // setting our start time
start = t;
unsigned long t1 = start;
while(t - start < 120000000){ //Read for 2Min
// Get a new sensor event,normalized
sensors_event_t event;
msa.getEvent(&event);
// acceleration as measured in m/s^2)
myFile.print(event.acceleration.x);
myFile.write(delim); myFile.print(event.acceleration.y);
myFile.write(delim); myFile.print(event.acceleration.z);
myFile.write(nl);
t= micros();
myFile.print(t-t1);
myFile.write(nl);
t1 = t;
// }
}