I'm using code right out of the library example:
#include <Wire.h>
byte val = 0;
void setup()
{
Wire.begin(); // join i2c bus
}
void loop()
{
Wire.beginTransmission(44); // transmit to device #44 (0x2c)
// device address is specified in datasheet
Wire.write(val); // sends value byte
Wire.endTransmission(); // stop transmitting
val++; // increment value
if(val == 64) // if reached 64th position (max)
{
val = 0; // start over from lowest value
}
delay(500);
}
However, I'm only seeing the first block of data on the scope:
- Start bit
- 7 bit address is correct
- write bit (0)
- NACK (nothing attached to the bus right now)
- Stop bit.
See attached.
This seems like a simple library to use, so what am I doing wrong? Thanks.