60,13 → 60,9 |
|
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; // Jetzt gehts weiter in SIGNAL (SIG_SPI) |
break; |
|
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; |
case MM3_IDLE: |
break; |
} |
} |
88,6 → 84,7 |
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; |
95,6 → 92,7 |
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; |
102,7 → 100,8 |
case MM3_Z_BYTE2: |
MM3.z_axis |= SPDR; |
MM3.z_axis -= OFF_Z; |
MM3.STATE = MM3_TILT; |
MM3.AXIS = MM3_X; |
MM3.STATE = MM3_RESET; |
break; |
} |
} |