PLX-DAQ working but not logging data in new rows.

Hello everyone, let me first start of by informing everyone that i am not a computer programmer or have much experience in code. I am a mechanical engineering student and am building a test rig to tune/record motions of a UAV. In order to see and record oscillations cause by the P gain of a control system i am mounting a gyroscope connected to a arduino and using PLX_DAQ to record the data.

I have every thing working except for the fact that PLX_DAQ records data in row 1 and then records over that data in row 1 with the next values. I have silenced the accelerometer and temperature variables of the sensor and recording jus the position values of the gyroscope

I am thinking that i need to put in a counter to start at the beginning of the loop but all the PLX-DAQ samples i have found do not seem to necessitate a counter.

i have included my code and would appreciate any suggestions anyone may have, thank you.

#include<Wire.h>
const int MPU_addr=0x68; // I2C address of the MPU-6050
int16_t AcX,AcY,AcZ,Tmp,GyX,GyY,GyZ;

void setup(){
Wire.begin();
Wire.beginTransmission(MPU_addr);
Wire.write(0x6B); // PWR_MGMT_1 register
Wire.write(0); // set to zero (wakes up the MPU-6050)
Wire.endTransmission(true);
Serial.begin(9600);

}
void loop(){
Wire.beginTransmission(MPU_addr);
Wire.write(0x3B); // starting with register 0x3B (ACCEL_XOUT_H)
Wire.endTransmission(false);
Wire.requestFrom(MPU_addr,14,true); // request a total of 14 registers
//AcX=Wire.read()<<8|Wire.read(); // 0x3B (ACCEL_XOUT_H) & 0x3C (ACCEL_XOUT_L)
//AcY=Wire.read()<<8|Wire.read(); // 0x3D (ACCEL_YOUT_H) & 0x3E (ACCEL_YOUT_L)
//AcZ=Wire.read()<<8|Wire.read(); // 0x3F (ACCEL_ZOUT_H) & 0x40 (ACCEL_ZOUT_L)
//Tmp=Wire.read()<<8|Wire.read(); // 0x41 (TEMP_OUT_H) & 0x42 (TEMP_OUT_L)
GyX=Wire.read()<<8|Wire.read(); // 0x43 (GYRO_XOUT_H) & 0x44 (GYRO_XOUT_L)
GyY=Wire.read()<<8|Wire.read(); // 0x45 (GYRO_YOUT_H) & 0x46 (GYRO_YOUT_L)
GyZ=Wire.read()<<8|Wire.read(); // 0x47 (GYRO_ZOUT_H) & 0x48 (GYRO_ZOUT_L)
//Serial.print("AcX = "); Serial.print(AcX);
//Serial.print(" | AcY = "); Serial.print(AcY);
//Serial.print(" | AcZ = "); Serial.print(AcZ);
//Serial.print(" | Tmp = "); Serial.print(Tmp/340.00+36.53); //equation for temperature in degrees C from datasheet

//Serial.print(" | GyX = ");
//Serial.print(GyX);
//Serial.print(" | GyY = ");
//Serial.print(GyY);
//Serial.print(" | GyZ = ");
//Serial.println(GyZ);

Serial.println("LABEL,Time,GyX,GyY,GyZ");
Serial.print("DATA,TIME,");
Serial.print(GyX);
Serial.print(",");
Serial.print(GyY);
Serial.print(",");
Serial.println(GyZ);

delay(1000);
}

This does not make sense. Your code appears to be more or less kosher. The only line that matters is
  Serial.println(GyZ);Which should do what you intend. You might try sending the output to the serial monitor instead, it might tell you something.
I might point out that the first red line
  Serial.println("LABEL,Time,GyX,GyY,GyZ"); is superfluous, and will likely be more trouble than it is worth, but I don't think it it is the cause of your current problem. If you must use it, it will be better in the setup than the loop.

Likewyse Nick_Pyner stated,
This line of code must be in Setup() Serial.println("LABEL,Time,GyX,GyY,GyZ");
That is the reason why only row1 is populated.
Or you put it in setup or you remove it out of the loop.
That should do the trick.

Ding ding ding GijKieken, we have a winner! Correct moving Serial.println("LABEL,Time,GyX,GyY,GyZ") out of the loop and into the setup did the trick. Thank you nick_pyner also for your observations. I tried sending the data to the serial monitor and i did get really great data. I will reduce the time delay so that i can get a much more smoother graph. Thanks agin guys! cheers!

I think you may still get garbage data.

Wire.requestFrom(MPU_addr,14,true);

Why are you asking for 14 bytes but only reading 6?

Pete