I designed and built a board using the ADAU1446. I have done several other projects with I2S, but this is my first time with a DSP. The ADAU1446 is connected via I2C to a Raspberry Pi. The DSP responds to commands on the I2C bus. I have software on the Pi to read the export file from SigmaStudio and download to the DSP. I have also verified the download by reading back various registers and RAM locations.
I have configured GPIO_8 as an Output driven from the Control Port, and I can turn it on or off by writing to location 0x1248. So far so good.
I have a very simple schematic in SigmaStudio as follows (see attached snapshot):
GPIO_0 is configured as in Input; GPIO_3 is configured as Output driven by core with pullup. I can read the value of GPIO_0 and see that it is 0x00800000 (logic 1), and if I jumper to ground I see that the value goes to zero (logic 0). The output on GPIO_3 should just follow the input, and it sorta does, but looking on the oscilloscope, there are numerous extraneous spikes on the output. When the input is high, the output is high (3.3V); but when the input is low, the output is a steady stream of spikes (it almost looks like a data stream, but I can't get a good lock on the scope).
The second part of the schematic is supposed to put a 500 Hz square wave on GPIO_9. This is taken directly from AN-951. GPIO_9 is also configured as Output driven by core with pullup. On GPIO_9 i see a steady high signal (3.3v) with no changes at all.
So, I'd really like to get the simple stuff working before I dive into the I2S inputs and outputs. If you have any advice on what registers to check or configure, I'd appreciate it.