I search on the Forum, and see this post: http://e2e.ti.com/support/microcontrollers/tiva_arm/f/908/t/315587.aspx
I face the same problems, but reading through this post cant help me solve my problems.
I also post on the forum and ask many questions, but also i dont satisfy.
I also attach my project, which is editted from mpu9150 sample project.
Hope that you guys, especially TI expert will spend some time helping me out!
while(1)
{
//
// Go to sleep mode while waiting for data ready.
//
// PROGRAM STOPS HERE
while(!g_vui8I2CDoneFlag)
{
ROM_SysCtlSleep();
}
//
// Clear the flag
//
g_vui8I2CDoneFlag = 0;
//
// Get floating point version of the Accel Data in m/s^2.
//
MPU6050DataAccelGetFloat(&g_sMPU6050Inst, pfAccel, pfAccel + 1,
pfAccel + 2);
//
// Get floating point version of angular velocities in rad/sec
//
MPU6050DataGyroGetFloat(&g_sMPU6050Inst, pfGyro, pfGyro + 1,
pfGyro + 2);
//
// Check if this is our first data ever.
//
if(ui32CompDCMStarted == 0)
{
//
// Set flag indicating that DCM is started.
// Perform the seeding of the DCM with the first data set.
//
ui32CompDCMStarted = 1;
CompDCMAccelUpdate(&g_sCompDCMInst, pfAccel[0], pfAccel[1],
pfAccel[2]);
CompDCMGyroUpdate(&g_sCompDCMInst, pfGyro[0], pfGyro[1],
pfGyro[2]);
CompDCMStart(&g_sCompDCMInst);
}
else
{
//
// DCM Is already started. Perform the incremental update.
//
CompDCMAccelUpdate(&g_sCompDCMInst, pfAccel[0], pfAccel[1],
pfAccel[2]);
CompDCMGyroUpdate(&g_sCompDCMInst, -pfGyro[0], -pfGyro[1],
-pfGyro[2]);
CompDCMUpdate(&g_sCompDCMInst);
}