I tried to set up an I2C conversation between ab ATTiny85 (8MHz) and an Arduino Uno. However I always get a 255 response from my I2C slave. I am using Arduino 1.8.5.
What am I doing wrong?
ATTiny85-Slave Code:
#include "TinyWireS.h" // wrapper class for I2C slave
routines
#define I2C_SLAVE_ADDR 0x26 // i2c slave address (38)
byte t=10;
void setup() {
TinyWireS.begin(I2C_SLAVE_ADDR); // init I2C Slave mode
TinyWireS.onRequest(requestEvent);
}
void loop() {
}
void requestEvent() {
TinyWireS.send(t);
}
Arduino Uno-Master Code:
#include <Wire.h>
#define I2C_SLAVE_ADDR 0x26 // i2c slave address (38)
void setup() {
Wire.begin();
Serial.begin(9600);
}
void loop() {
byte num;
// read 1 byte, from address 0x26
Wire.requestFrom(I2C_SLAVE_ADDR, 1);
while(Wire.available()) {
num = Wire.read();
}
Serial.print("num = ");
Serial.println(num,DEC);
}