I am not able to produce a repeated start bit. I'm using the Arduino Due and the I2C bus on SDA1 (A17) and SCL1 (A18) pin
Here is my code and a scope capture of what the code produces. Any guidance is greatly appreciated.
#include <Wire.h>
extern TwoWire Wire1;
byte arduinoUno = 72;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Wire1.begin();
Wire1.setClock(100000);
}
void loop() {
Wire1.beginTransmission(arduinoUno);
Wire1.write(0x02);
Wire1.endTransmission(false); //This is the line I expect to produce a repeated start bit
Wire1.requestFrom(arduinoUno, 5);
while(Wire1.available())
{
char c = Wire1.read();
Serial.print(c);
}
}
I have swapped out the Due for an Uno, changed "Wire1" to "Wire" in the code and it works as expected. Looks like I will have to toss the Due...
Does anyone happen to have a list of boards where this as a known issue?
#include <Wire.h>
extern TwoWire Wire;
byte arduinoUno = 72;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Wire.begin();
Wire.setClock(100000);
}
void loop() {
Wire.beginTransmission(arduinoUno);
Wire.write(0x02);
Wire.endTransmission(false); //This is the line I expect to produce a repeated start bit
Wire.requestFrom(arduinoUno, 5);
while(Wire.available())
{
char c = Wire.read();
Serial.print(c);
}
}