| Index

| Reference for Wiring 1.0 (ALPHA) 0022+. If you have a previous version, use the reference included with your software. If you see any errors or have any comments, let us know.

Name |  | ### begin()
Examples |  |
    #include <TwoWire.h>

    void setup()
    {
      Wire.begin();        // join i2c bus (address optional for master)
      Serial.begin(9600);  // start serial for output
    }

    void loop()
    {
      Wire.requestFrom(2, 6);    // request 6 bytes from slave device #2

      while(Wire.available())    // slave may send less than requested
      {
        char c = Wire.receive(); // receive a byte as character
        Serial.print(c);         // print the character
      }

      delay(500);
    }
    #include <TwoWire.h>

    void setup()
    {
      Wire.begin(4);                // join i2c bus with address #4
      Wire.onReceive(receiveEvent); // register event
      Serial.begin(9600);           // start serial for output
    }

    void loop()
    {
      delay(100);
    }

    // function that executes whenever data is received from master
    // this function is registered as an event, see setup()
    void receiveEvent(int howMany)
    {
      while(1 < Wire.available()) // loop through all but the last
      {
        char c = Wire.receive(); // receive byte as a character
        Serial.print(c);         // print the character
      }
      int x = Wire.receive();    // receive byte as an integer
      Serial.println(x);         // print the integer
    }
Description |  | The Wiring TwoWire library allows for easily reading and writing data to external devices using the Two Wire Interface (TWI or I2C) protocol. The TWI protocol and interface were developed by Phillips. The TWI pins are available on the Wiring I/O board on pins 0 (SCL) and 1 (SDA). It is possible to connect multiple TWI devices to the TWI pins creating a network or bus of devices and communicate with them by means of an address. The TWI can be configured to act as a Master or a Slave in a network of devices. The begin() method is used to initiate the TWI as a Master and the begin(address) method is used to join the TWI bus a slave using the address specified. In both cases the begin method must be must be placed in the setup() method.
Syntax |  |
    Wire.begin()
    Wire.begin(address)
Parameters |  |
address |  | An integer value between 0 and 127 specifying the address to be used when joining the TWI bus.
Wire |  | The hardware TWI port
Returns |  | None
Usage |  | Application