Reference for Wiring version 0024+. 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.

Class

Wire

Name

onReceive()

Examples
#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 onReceive() method set the function that executes whenever data is received as a slave device. Every time a master writes to this device the specified function is executed.
Syntax
Wire.onReceive(function)
Parameters
function The name of the function to be called whenever data is received in slave mode
Wire The hardware TWI port
Returns None
Usage Application
Updated on November 01, 2009 09:17:01am PST

Creative Commons License