Hallo,
ich lese die Register eines Beschleunigungssensor aus.
Laut Datenblatt:
These registers contain the X-axis, Y-axis, and Z-axis 14-bit 
left-justified sample data expressed as 2's complement numbers.
folgende Variablen werden eingelesen:
| 1 | typedef struct
 | 
| 2 | {
 | 
| 3 |   int16_t x;
 | 
| 4 |   int16_t y;
 | 
| 5 |   int16_t z;
 | 
| 6 | } SRAWDATA;
 | 
| 7 | 
 | 
| 8 | SRAWDATA Accel;
 | 
| 9 | 
 | 
| 10 | ReadAccelMagnData(&Accel);
 | 
| 11 | 
 | 
| 12 | float x = Accel.x / 16383.0;
 | 
| 13 | float y = Accel.y / 16383.0;
 | 
| 14 | float z = Accel.z / 16383.0;
 | 
| 15 | 
 | 
| 16 | g = sqrt(x * x + y * y + z * z);
 | 
ist das richtig dass man den Wert durch 16383 teilt?
Die Anzeige stimmt soweit.
X 0
Y 0
Z 1
Sensor liegt wagerecht!
aber bei höheren g Kräften wird zu wenig angezeigt(laut g kraft 
simulator)
Ich weiß nicht wie man das überprüfen kann.