Evaluation of the acceleration sensor BMA020

Hello all. This is my first post. I’ve already read a lot but could not find my exact problem.

I have a 3-axis accelerometer and a BMA020 Arduino. I’m here in the forum have also read a lot about this product
http://arduino.cc/forum/index.php/topic, 67541.15.html
I have wired the BMA020 like there: Loading...
And I use the following code:

/*
 *  Arduino analog input 5 - I2C SCL
 *  Arduino analog input 4 - I2C SDA
*/

#include <Wire.h>

#define ACCELEROMETER 0x38

#define X_OUT1	   0x02
#define X_OUT2	   0x03
#define Y_OUT1	   0x04 
#define Y_OUT2	   0x05
#define Z_OUT1	   0x06 
#define Z_OUT2	   0x07


void setup() {

    Wire.begin();
    Serial.begin(9600);
}


void loop() {


    Serial.print("X: ");
    Serial.print((unsigned int)accRead(X_OUT1), BIN);    
    Serial.print ("      ");
    Serial.print((unsigned int)accRead(X_OUT2), BIN);
    Serial.println();  
    Serial.print("Y: ");
    Serial.print((unsigned int)accRead(Y_OUT1), BIN);
    Serial.print ("      ");
    Serial.print((unsigned int)accRead(Y_OUT2), BIN);
    Serial.println();  
    Serial.print("Z: ");
    Serial.print((unsigned int)accRead(Z_OUT1), BIN);
    Serial.print ("      ");
    Serial.print((unsigned int)accRead(Z_OUT2), BIN); 
    Serial.println();
    Serial.println();
   
    delay(500);
}

byte accRead(byte address){
    byte val = 0x00;
    Wire.beginTransmission(ACCELEROMETER);
         
    Wire.send(address);

    Wire.endTransmission();
    
    Wire.requestFrom(ACCELEROMETER, 1);
 
    val = Wire.receive();
 
    return val;
}

The Values:

X: 1000001      101
Y: 10000001      11111110
Z: 11000001      11000001

X: 10000001      101
Y: 10000001      11111110
Z: 11000001      11000001

X: 10000001      101
Y: 10000001      11111110
Z: 1000001      11000001

X: 1000001      101
Y: 1      11111111
Z: 11000001      11000001

X: 10000001      101
Y: 11000001      11111110
Z: 11000001      11000001

X: 1000001      101
Y: 10000001      11111110
Z: 11000001      11000001

X: 10000001      101
Y: 10000001      11111110
Z: 11000001      11000001

X: 1000001      101
Y: 10000001      11111110
Z: 11000001      11000001

X: 1      101
Y: 10000001      11111110
Z: 11000001      11000001

X: 1      101
Y: 10000001      11111110
Z: 1      11000010

X: 1000001      101
Y: 11000001      11111110
Z: 1      11000010

X: 1      101
Y: 10000001      11111110
Z: 1000001      11000010

X: 1000001      101
Y: 10000001      11111110
Z: 1      11000010

And so one

My problem is that I get the output values ??are not constant, even though I did not move the sensor. As far as I understand data sheet shall be equal to the values ??but when I move the sensor are not the values ??but not constant.

First Have I misunderstood something in the data sheet?
Second Is something wrong with my setup or in my code?
Third Or does one have the X, Y, Z coordinates of aggregation?

Can someone help me with it, or post your own opinions as to the worth of BMA020 meaningful values ??converted.

THe BMA020 is discussed more often here, have you done a search in the upper right yet?

You have the IO pins pulled up to 5v when the BMA020 is not a 5v tolerant IC.

Sorry, I forgot to mention that I am using not the chip itself, but a breakout-board by ELV ( http://www.elv.de/3-Achsen-Beschleunigungssensor-3D-BS,-Komplettbausatz/x.aspx/cid_74/detail_10/detail2_28515). @robtillaart: I did and the search did bring me the results how to wire that little thing up, but it outputs some useless binary numbers without any relation and I would like to know how these numbers have to be decrypted.

The binary numbers are in 2's complement and each axis is 10 bits so you'll need to do some bit shifting. You can look in the data sheet and it will show you how the data is formatted.

The datasheet does'nt really explain how to reformat the data. If the numbers had any meaning i could convert them into decimal and use them in my sketch, but in the little manual by ELV they say that some of the 0s between some 1s which are there only sometimes count and I just can't think of how to get those out of the data.