Possibilities for mixing SPI and I2C devices on the same Master Control Port?
I am currently designing the schematic for a DSP Board including the ADAU1452, CAT25512XE EEPROM, LM63DIMAX temp sensor, AK5574 ADC and AK4458 DAC. I am wondering if it is possible to mix SPI and I2C devices on the same bus. I have read the data sheet, which points out that the master control port can only be used in one mode - SPI or I2C - at a time.
SELFBOOT can use SPI and SS_M to select the CAT25512XE EEPROM, and after boot is complete that chip should not respond to master control port traffic because SS_M should not assert again (unless the DSP is coded to access the boot memory).
The challenge will be the Asahi Kasei converters, which might get confused when SCL_M/SCLK_M/MP2 and SDA_M/MISO_M/MP3 are driven. My thought is that the design could include one of many I2C multiplexer chips that would isolate all I2C devices from the bus until the DSP has finished its boot phase. After boot, the I2C mux could connect the I2C devices. With such an approach, it should be possible to switch between I2C and SPI modes, so long as the ADAU1452 control registers are coordinated with the I2C bus isolation.
The SMBus protocol of the LM63 might be a challenge, but I have successfully coded SMBus transactions using basic I2C read/write atoms. If this proves too difficult, then perhaps the LM63 can be left out of the design (or left to be controlled by another uC besides the SigmaDSP).
Does anyone have any thoughts about whether this would be possible? I may follow up to this discussion with specific I2C bus isolation chips so that we can discuss the details.
Currently, the DSP Board will only have the ADAU1452, and no other uC. I am designing connectors to allow more advanced control from a separate ARM chip or equivalent, but we would like to have the option of using the basic DSP for pre-programmed tasks that only involve ADC and DAC.
Audio Signal Processors
adau1452
hardware
AK5574
AK4458
LM63DIMAX
SigmaDSP Audio Processors
CAT25512XE
Show More
Hello SoundConsulting,
I have found the below thread reg this topic where Dave gave an option on how to do this. He wasn't certain about the working since he hasn't tried it, but you can have a look at his response which will give you some idea.
(1) ADAU1466 and I2C Operation - Q&A - Audio - EngineerZone
The ADAU1466 and ADAU1452 are just the same hardware wise, the 1466 has more memory, higher SPDIF rate etc. But other operations and functions are just the same between 1466 and 1452, they are pin and code compatible. So, the response in the above post is applicable to 1452.
Regards,
Harish
Thank you, Harish.
Since my design seems to be stretching the limits of the ADAU1452 serial interface pins, it seems to make more sense to upgrade to the ADAU1463 so that more SPI and I2C devices can be attached without jumping through hoops.
Please log in to reply.