Q: I am using an Aardvark I2C/SPI Host Adapter and the Control Center Software. I am trying to sent one byte data 0x55 from my board (Master) to the 10-bit slave address (0x3FF). Doing this, I saw ACK was missing after the first byte of the address from the host adapter slave (Aardvark adapter) with the address(0x3FF) configured to Slave Address blank. The picture below shows the results on an oscilloscope.
However, when I configured the slave address to 0x7B, the data 0xFF and 0x55 were recognized by the slave device. These results are shown by the oscilloscope image below.
The screen shot below shows more information about our results.
How can I make the master and the slave devices communicate with 10-bit addresses?
A: Thanks for your question! The I2C slave address mode of the Aardvark host adapter follows the standard 7-bit I2C convention, which can result in this known limitation:
In this case, the 10-bit addressing mode of an I2C bus device is transparent to slaves with 7-bit addresses. The master sends the 10-bit addresses as two bytes instead of one byte. However, as this limitation is known, we have a workaround so you can use the 10-bit I2C address mode with the Aardvark adapter slave mode:
For example, to send a write command to a slave with address 0x355, the Aardvark adapter's slave address is set to 0b1111011 (0x7B). To do so, the master sends the following to the Aardvark adapter slave:
Note that the first data byte the Aardvark adapter sees is not actually data; it is the second address byte sent by the master.
For additional information about this process, please refer to the Knowledge Base article 7-bit, 8-bit, and 10-bit I2C Slave Addressing, which provides information about communicating with 7-bit and 10-bit addresses, as well as 8-bit addresses.
For information about our other products, you can view our Products Page.
We hope this answers your question. If you have other questions about our host adapters, software tools or other Total Phase products, feel free to email us at sales@totalphase.com or support@totalphase.com.