This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

I2C sending slave address problem



Hi, I'm using an DM8148 SoC type. I want to communicate only with 1 slave device, and DM8148 is the only master, there are no other devices. When I send the slave address, which is 0x20 in hexa, for writing, I see on oscilloscope 0x40, the cause I don't see the acknowledge. Is with 1 bit shifted to the left. If I shifted to the right, or send 0x10, the slave receives the data and send an acknowledge, but the flag inside the DSP it is set as no acknowlegde received. Other thing is that the last bit is always 0, if I send 0x03, on the output pin I see 0x60. The main ideea of how I send the address is (after configuration)

HIS_I2C_SA=address; // put address is the slave address register

HIS_I2C_CON=0x8601;//set as master and generate start

HIS_I2C_DATA=0x20;

HIS_I2C_CON=0x8602; // generate stop

If you want more details please say. Thanks.