I'm trying to program an ADAU1777 DSP. The programming takes place via a I2C bus. I use the XML file, exported by SigmaStudio as a template for all registers, program data and parameter data.
After programming has completed, I start verifying the data, but that fails.
I noticed in the ADAU1777 datasheet, in the section about the control port this:
Registers and bits shown as reserved in the register map read back 0s.
When writing to these registers and bits, such as during a burstwrite across a reserved register,
or when writing to reserved bits in a register with other used bits, write 0s.
So, does this mean I cannot read registers (with length 1 byte) back? I checked my software with a scope. Picture 1 is triggered just before a write:
Picture 2 is triggered just before a verify:
The first register to be written is, according to the XML file, 47 with data 255:
<!--SigmaStudio export XML file--> <Schematic> <IC> <Name>IC 1</Name> <PartNumber>ADAU1777</PartNumber> <Register> <Name>IC 1.DAC0_VOLUME</Name> <Address>47</Address> <AddrIncr>0</AddrIncr> <Size>1</Size> <Data>0xFF, </Data> </Register> <Register> <Name>IC 1.DAC1_VOLUME</Name> <Address>48</Address> <AddrIncr>0</AddrIncr> <Size>1</Size> <Data>0xFF, </Data> </Register> ......
In Picture 1 you can observe that value 0xFF is written at address 0x002F. In Picture 2 you can see that value 0x00 was read back.
To make it even more clear, I added picture 3. Here, only register 0x2F is written and directly read back... with value 0x00:
Does this really mean I cannot verify the data written to the DSP?
With kind regards,