// Reference the I2C Library #include #define ADDRESS 0x1E // Out setup routine, here we will configure the microcontroller and compass. void setup () { Serial.begin(9600); Wire.begin(); Wire.beginTransmission(ADDRESS); Wire.write(0x02); //select mode register Wire.write(0x00); Wire.write(0x00); //continuous measurement mode Wire.endTransmission(); } // Our main program loop. void loop() { int x,y,z; Wire.beginTransmission(ADDRESS); Wire.write(0x03); Wire.endTransmission(); Wire.requestFrom(ADDRESS,6); if (Wire.available()) { // Bmax = 1.3*100 microT float Bx = (Wire.read()*256 + Wire.read())*1.3*100*2/65535.; float By = (Wire.read()*256 + Wire.read())*1.3*100*2/65535.; float Bz = (Wire.read()*256 + Wire.read())*1.3*100*2/65535.; Serial.print(" Bx="); Serial.print(Bx, 5); Serial.print(" Bz="); Serial.print(Bz, 5); Serial.print(" By="); Serial.println(By, 5); } delay(500); }