Hi Dialog,
I've started with programming peripheral drivers for I2C peripherals. I'm testing the I2C communication with a logic analyzer so I can see precisely what the Dialog sends. I've noticed that the slave address that is programmed in the I2C_TAR_REG register is always shifted one to the left.
Is it correct what I've seen and is it somewhere documented?
In the EEprom example dialog uses slaveaddress 0x50 for the Microchip EEprom but the base address according the datasheet is 0xA0 so it also shifted one.
提前谢谢!
Hi Wouter,
The I2C bus is operated in 7bit addressing mode. this mean that the 7MSBs describe the address and the LSB is a Read/Write bit. In you question above you will se that address 0xa0 left shifted once will be address 0x50. So you are writing (Master) to address 0x50.
I hope that this answers your question.
Best Regards
TN
Hi TN,
Yes, thank you!