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

EVAL-ADAU1442EBZ SPI Communications mode configuration help reqd.

SigmaDSP & SigmaStudio 0dBFS Nov 24, 2014 00:00 6 replies Original on forum ↗
Subscribe
0dBFS Question
Nov 24, 2014 00:00

After reading a couple of earlier postings about getting this board to run at 96 or 192kHz, fs I learned it is first necessary to configure SPI communications. My plan of approach is to first establish the SPI link with the ADAU1442 on the EVAL board and then make the necessary changes to permit Sigma Studio to configure the AD1938 codecs on the same board ( for fs > 48 kHz ). So far have not been able to get the 1442 SPI connection established.

Here is what I've done so far :

1) Set switch S4 to "SPI" position. ( SPI mode NOT I2C )

2) Set switch S2 (pole #8) to "OPEN" or "OFF" ( Allows CDATA/ADDR1 line to move i.e. NOT pulled to ground by switch )

3) Leave switch S2 (pole#7) "CLOSED" or "ON" ( This should set ADAU1442 SPI chip address to : 0000000 )

4) Note : Both AD1938s are in Eval Board factory configuration ( i.e. Standalone Mode )

5) In Sigma Studio Hardware Config : USBi block ( SPI 0x1ADR0 ) is connected to ADAU144x block.

Results :

With fs set at 48kHz, no longer am able to get an analog signal through the board ( this worked with I2C comm. )

DSP Read-back block connected to a DC source only reads Zero.

With DSP Read-back block running in continuous read mode ( at say 100 ms ) I can see clean pulses on CLATCH_1442, CCLK/SCL, COUT/SDA and CDATA.

Also, yellow SPI LED on ADUSB2Z board flickers.

Any help will be appreciated - Thanks.

Audio Signal Processors

ad1938

adau1442

Integrated/Special Purpose A/D Converters

SigmaDSP Audio Processors

Audio CODECs

Show More

ADIApproved Reply
Dec 3, 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.

0dBFS Reply
Dec 3, 2014 00:00

Thanks Craig,

Hopefully will get a solution for this soon.

Rgds, David

JohnTo Reply
Dec 4, 2014 00:00

Hi David,

Just wanted to let you know I am looking into this issue. I am having HW issues as well getting the EVAL-ADAU144x-EB board working with a simple talkthru even in I2C (thought the USBi says I am connected and downloaded). I need to review the jumper settings and try some other boards. Hopefully I will have an answer by tomorrow.

-JT

JohnTo Reply
Dec 5, 2014 00:00

Hi David,

I got your messages. Glad to see you are making progress. I was experiencing the same thing trying to download via SPI. I think originally my board jumper configuration was slightly off from the default settings described in the evaluation manual.

However, it seems I can get it to work with your jumper configuration (ADDR1/CDATA high), SPI boot mode on S4 only after I download the program twice. This appears to be related to the I2C to SPI mode change described in a previous post: "I2C to SPI mode change"

Many of the newer SigmaDSPs with both I2C and SPI slave ports require 3 dummy SPI latch toggles to enable the SPI slave interface from default I2C out of reset. It looks to me the first 3 SPI writes are ignored by the ADAU144x during the initial download, i.e the core start pulse and run bits are not disabled during download, and perhaps the initial entire block write address to parameter memory gets corrupted during the 3rd SPI long CLATCH toggle. This would explain why the program somewhat ran but the audio was severely distored, probably because the parameter data was either not copied or incorrectly placed to other addresses in memory.

First SPI Write to address 0xE220

Second SPI Write to address to address 0xE228

Block Write to parameter memory 2000

Downloading the program twice in SigmaStudio will fix the problem.

Note that on the ADAU1452, SigmaStudio automatically will insert the 3 dummy SPI writes prior to download.

-JT

2867.9e182fe759fc62f93de8c1da0690b4fb.png
2867.9e182fe759fc62f93de8c1da0690b4fb.png
2867.9e182fe759fc62f93de8c1da0690b4fb.png-620x83.png
2867.9e182fe759fc62f93de8c1da0690b4fb.png-620x83.png
3603.23aecf0e88d85144ad9ef84b5fc6fd03.png
3603.23aecf0e88d85144ad9ef84b5fc6fd03.png
3603.23aecf0e88d85144ad9ef84b5fc6fd03.png-620x108.png
3603.23aecf0e88d85144ad9ef84b5fc6fd03.png-620x108.png
5415.e3732ea9fc3182770e570d1724f8c0db.png
5415.e3732ea9fc3182770e570d1724f8c0db.png
5415.e3732ea9fc3182770e570d1724f8c0db.png-620x104.png
5415.e3732ea9fc3182770e570d1724f8c0db.png-620x104.png
1460.b390ba86225d45d6733c128dc4f54058.png
1460.b390ba86225d45d6733c128dc4f54058.png
1460.b390ba86225d45d6733c128dc4f54058.png-620x60.png
1460.b390ba86225d45d6733c128dc4f54058.png-620x60.png
DaveThib Reply
Dec 5, 2014 00:00

Hello David, (DR), (as opposed to DT which are my initials )

First I am wondering if you have stuffed the resistors going to the control port on the two CODECs? R14-R17 and R24 - R27. I would say do not stuff these right now until you get the comms with the DSP worked out. I like your approach if taking it one step at a time.

I am looking at the schematics of the control port headers. S4 switches the CCLK and the COUT between pins 5 & 7 and 1 & 3. It seems to me that you will want to be using J18 for the USBi and have the switch in the position to connect these signals to it. The schematic does not show which position is which but I think this is the SPI position and you are correctly configured.

When you say you see the signals are you looking at the actual pins of the 1442? Or the links close to it?

In looking around for possible causes of this problem:

1) You will want to remove LK15 and LK16 to isolate the E2PROM from the SPI lines.

2) make sure you are doing three dummy writes to the 1442 to place it into SPI mode.

3) The 1442 cannot use SPI with SELFBOOT mode. So make sure the selfboot pin is low. There seems to be no jumpers for this and it goes directly to the PIC comms processor. So you may have to cut the trace and set it low. Perhaps it is programmed to pull that pin low in SPI mode but since this has to be done right at powerup I am not sure if this happens fast enough. So look at this with a scope and make sure it is sitting low right from power up. I have a feeling it is not.

4) There are rather stiff pull-ups on the SCL and SDA lines. 2k. R164 and R165. This may cause issues later but I do not think this is the problem now.

After you get the 1442 up and running you will need to make some changes to the board to make the CODECs work properly.

1) Yes, you have to populate the open resistors with either small value resistors, 10-33 ohm, or just use 0-ohm jumpers.

2) Resistors R18 - R21 and R28 - R31 will need to be removed. Then you will need to install a pull-up on each CLATCH line of the two CODECs. That is pin 27. This can be a weak 10K pullup. It's purpose is to prevent this line from floating down to ground when power is applied. This will prevent the part from accidentally going into Standalone mode.

This should get you moving forward. Let me know how it is going.

Thanks,

Dave T, aka, DT

EZAdministrator Reply
Aug 2, 2018 00:00

This question has been assumed as answered either offline via email or with a multi-part answer. This question has now been closed out. If you have an inquiry related to this topic please post a new question in the applicable product forum.

Thank you,
EZ Admin