Arduino Wire.h Library Better -
Serial.println(); delay(1000);
if(Wire.available() >= 5) unsigned long pressure_raw = ((long)Wire.read() << 16) delay(1000);
Try the built-in I2C scanner (File → Examples → Wire → Scanner), then hook up a cheap OLED or RTC module. You’ll be amazed at what two wires can do. arduino wire.h library
void loop() Wire.beginTransmission(8); // Slave address 8 Wire.write("Hello Slave!"); Wire.endTransmission();
void requestEvent() Wire.write("Hello Master"); Serial
// Configure sensor (simplified) Wire.beginTransmission(SENSOR_ADDR); Wire.write(0x26); // Control register Wire.write(0xB9); // Active, 128 samples, 2^8mbar max Wire.endTransmission(); delay(100);
You can also make one Arduino act as a slave. This is useful for multi-processor projects. Master Code (Sends a command): #include <Wire.h> void setup() Wire.begin(); Serial.begin(9600); // Slave address 8 Wire.write("Hello Slave!")
void loop() delay(100);
