@inka:
Einen "Korrekturfaktor" könnte man zur Richtungsanzeige hinzufügen, das ist aber nur die zweitbeste Lösung.
Die beste ist:
HDMM01 so anbringen:
- Sensorchip nach OBEN (U1 von oben lesbar)
- SDA/SCL Pins in Fahrtrichtung VORN
Wenn du den Sensor anders angebracht hast, ist das auch kein Drama:
- Nimm dir die Funktion readHDMM01() vor. Darin gibt's die Zeilen:
Code:
// xb = y:
x_axis2dm = ((readBuf[MSB_X_AXIS] & 0x0f) << 8) + readBuf[LSB_X_AXIS];
// yb = -x:
y_axis2dm = ((readBuf[MSB_Y_AXIS] & 0x0f) << 8) + readBuf[LSB_Y_AXIS];
y_axis2dm *= -1;
Durch y_axis2dm *= -1; wird hier z.B. die Y-Achse umgekehrt. Du kannst das probeweise auskommentieren.
Genauso kannst du für die X-Achse eine neue Zeile x_axis2dm *= -1; einfügen, um die X-Achse umzukehren.
Damit probierst du alle 4 Kombinationen durch bis die Richtungsangaben passen.
Lesezeichen