FLIR ADK
Getting Sta rt e d
The information contained herein does not contain technology as
defined by EAR,15 CFR772, is publicly available, and therefore
not subject to EAR.
19
i2cwrite(transAdd, 0x00, commandBytes[i]); // write byte to fifo buffer
register on transceiver
}
if (debug_messages) {
DEBUG.print("Message queued: 0x");
DEBUG.print(checkTXbuffer(), HEX);
DEBUG.print("\n");
DEBUG.print("\nCommand Sent\n\n");
}
i2cwrite(transAdd, 0x09, 0x00); // enable the transmitter on transceiver.
This flushed the fifo buffer to the boson.
}
Itās also necessary to write I2C commands to the Serializer and Deserializer that are 16-bit
addressed. These are also shown here.
void i2cwrite16(byte addy, byte regH, byte regL, byte val)
{
byte err;
Wire.beginTransmission(addy);
Wire.write(regH);
Wire.write(regL);
Wire.write(val);
err = Wire.endTransmission();
if (err != 0) {
I2Cerror = 1;
}
}
byte i2cread16(byte addy, byte regH, byte regL)
{
byte err;
byte res = 0;
Wire.beginTransmission(addy);
Wire.write(regH);
Wire.write(regL);
err = Wire.endTransmission();
if (err != 0) {
I2Cerror = 1;
}
Wire.requestFrom((int) addy, (int) 1, false);
while (Wire.available()) { // slave may send less than requested
res = Wire.read(); // receive a byte
}
return res; // send the byte