ΣSigmaStudio Ask AI Русский Log in

ADAU1761 i2c address issue

SigmaDSP & SigmaStudio hosjel Nov 30, 2014 00:00 3 replies Original on forum ↗
Subscribe
hosjel Question
Nov 30, 2014 00:00

Hi

I am using ADAU1761 and i have connected both ADDR1 and ADDR0 to GND.

According to the datasheet (Table 21), the ADAU1761 12c address for writing to a register might be 0x70. and for reading might be 0x71.

Am I right?

My DSP is responsing when I used 0x38 for writing to a register, but I get Nack for 0x70.

I try to use 0x39, 0x71 as address for reading a register, but I got Nack.

Can somebody please help me this? I have used a lot of time for solving this problem.

Thank you in advance

Audio Signal Processors

SigmaDSP Audio Processors

adau1761

dbc06ea95f3d42d388c0688eacb5c6ca.png
dbc06ea95f3d42d388c0688eacb5c6ca.png
dbc06ea95f3d42d388c0688eacb5c6ca.png-277x191.png
dbc06ea95f3d42d388c0688eacb5c6ca.png-277x191.png
04d207707174ddc842c9c26c6a01837d.png
04d207707174ddc842c9c26c6a01837d.png
04d207707174ddc842c9c26c6a01837d.png-561x95.png
04d207707174ddc842c9c26c6a01837d.png-561x95.png
ADIApproved Reply
Dec 1, 2014 00:00

Hi,

I have moved this discussion from the Processors and DSP community to the SigmaDSP Processors and SigmaStudio Development Tool community. Please continue the discussion here.

Regards,
Craig.

JohnTo Reply
Dec 1, 2014 00:00

Hello Hossein,

I took a look into your issue and responded at the following thread:

I2C address for ADAU1761

Regards,

-John

JohnTo Reply
Dec 1, 2014 00:00

Hi again,

You mentioned you had some problems implementing I2C reads on the ADAU1761. I created a simple test in SigmaStudio to read a DC value using a DSP readback cell, which generates an I2C read request.

For example, lets say we want to generate a DC value as - 8 (minus eight) in 5.23 format. After compiling/downloading and clicking on the green "READ" button, we read back the hex value 0xC000000 (as expected)

The SigmaStudio capture window also displayed the following contents for the I2C transaction after reading the value:

The ADAU1761 datasheet I2C read shows a sequence with chip address byte, followed by two sub-address bytes, then a repeat start comman by the master to generate another chip address, followed by reading the data.

Examining the I2C bus activity when executing the DSP readback command, I see the chip address, followed by the subaddress (address 0x0009 for the DSP readback, generated by the SigmaStudio compiler). After this sub-address, I observe a 3.6 millisecond delay before reading the memory content data.

Chip Address/Sub Address Setup (zoomed in version of the first I2C burst)

Here is a zoom of the second burst, which is after a 3.6 msec delay. Here you can see the R/_W bit is set is generate a read request in the chip address byte (0x71).

If your host microcontroller can replicate this activity with a similar delay time, you should (hopefully) be able to read back the ADAU1761 register and memory contents.

-JT

f8190fc3bb30f14730f9cc4100ea91a8.png
f8190fc3bb30f14730f9cc4100ea91a8.png
f8190fc3bb30f14730f9cc4100ea91a8.png-333x140.png
f8190fc3bb30f14730f9cc4100ea91a8.png-333x140.png
ea9db170d97e0c69b04b9737452c54d2.png
ea9db170d97e0c69b04b9737452c54d2.png
ea9db170d97e0c69b04b9737452c54d2.png-620x112.png
ea9db170d97e0c69b04b9737452c54d2.png-620x112.png
40dbf12d433f9a9a9a7310069f993c9f.png
40dbf12d433f9a9a9a7310069f993c9f.png
40dbf12d433f9a9a9a7310069f993c9f.png-620x328.png
40dbf12d433f9a9a9a7310069f993c9f.png-620x328.png
7dd54872a9b57c51d18d5e8dcf77ae06.png
7dd54872a9b57c51d18d5e8dcf77ae06.png
7dd54872a9b57c51d18d5e8dcf77ae06.png-620x213.png
7dd54872a9b57c51d18d5e8dcf77ae06.png-620x213.png
48bf1ae9dcbf75799be7dd0881ca2a85.png
48bf1ae9dcbf75799be7dd0881ca2a85.png
48bf1ae9dcbf75799be7dd0881ca2a85.png-620x224.png
48bf1ae9dcbf75799be7dd0881ca2a85.png-620x224.png
a222c74e10ac2f4d8fd87614e72b6035.png
a222c74e10ac2f4d8fd87614e72b6035.png
a222c74e10ac2f4d8fd87614e72b6035.png-620x203.png
a222c74e10ac2f4d8fd87614e72b6035.png-620x203.png