Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 260 → Rev 261

/branches/v0.60_MicroMag3_Nick666/compass.c
60,9 → 60,13
case MM3_WAIT_DRDY:
if (CheckDelay(MM3.DRDY)) {SPDR = 0x00;MM3.STATE = MM3_DRDY;} // Irgendwas ins SPDR, damit Übertragung ausgelöst wird, wenn Wartezeit vorbei
break;
break; // Jetzt gehts weiter in SIGNAL (SIG_SPI)
case MM3_IDLE:
case MM3_TILT: // Zeitnahe Speicherung der aktuellen Neigung in °
MM3.NickGrad = IntegralNick/(EE_Parameter.UserParam1*8);
MM3.RollGrad = IntegralRoll/(EE_Parameter.UserParam2*8);
MM3.AXIS = MM3_X;
MM3.STATE = MM3_RESET;
break;
}
}
84,7 → 88,6
case MM3_X_BYTE2: // 2. Byte der entsprechenden Achse ist da.
MM3.x_axis |= SPDR;
MM3.x_axis -= OFF_X; // Sofort Offset aus der Kalibrierung berücksichtigen
MM3.NickGrad = IntegralNick/(EE_Parameter.UserParam1*8); // Zeitnahe Speicherung der aktuellen Neigung in °
MM3.AXIS = MM3_Y;
MM3.STATE = MM3_RESET;
break;
92,7 → 95,6
case MM3_Y_BYTE2:
MM3.y_axis |= SPDR;
MM3.y_axis -= OFF_Y;
MM3.RollGrad = IntegralRoll/(EE_Parameter.UserParam2*8); // Zeitnahe Speicherung der aktuellen Neigung in °
MM3.AXIS = MM3_Z;
MM3.STATE = MM3_RESET;
break;
100,8 → 102,7
case MM3_Z_BYTE2:
MM3.z_axis |= SPDR;
MM3.z_axis -= OFF_Z;
MM3.AXIS = MM3_X;
MM3.STATE = MM3_RESET;
MM3.STATE = MM3_TILT;
break;
}
}
/branches/v0.60_MicroMag3_Nick666/compass.h
31,6 → 31,7
#define MM3_X 7
#define MM3_Y 8
#define MM3_Z 9
#define MM3_TILT 10
#define MM3_IDLE 255