In my project I use 3 ADA4350 amplifiers, and I want to control them via SPI bus. I plan to connect them together (i.e. the SCLK, MISO and MOSI lines are connected in parallel to all 3 ADA4350's) with a separate CS line for each slave device. I.e. as follows:
Now, according to this other forum post https://ez.analog.com/amplifiers/f/q-a/14726/conflicting-spi-devices
the ADA4350 keeps it's SDO-line always driven unless disabled by software by writing 1 in the 23rd bit in the register. But on startup, the default is 0, so the SDO line is driven. Could this cause a short-circuit between the three ADA4350's? Or does the SDO-line go Hi-Z when the slave is not selected (CS line high) ??
So how can I use all 3 ADA4350's on the same SPI bus together?
I know that similar questions have already been asked in this forum, but there were no complete answers.
Thank you in advance!
Apologies for the late response.The case of SPI line conflict on https://ez.analog.com/amplifiers/f/q-a/14726/conflicting-spi-devices shows that the SDO pin is driven unless it's disabled…
Apologies for the late response.The case of SPI line conflict on https://ez.analog.com/amplifiers/f/q-a/14726/conflicting-spi-devices shows that the SDO pin is driven unless it's disabled through the 24-bit register of ADA4350.
The configuration with three independent slaves (the schematic you showed) may be used with ADA4350 and I don't see any issue with it unless you perform a read operation on one of the ADA4350s without disabling the SDO pin onthe other ADA4350s.
On start-up, you can perform a write operation on all the ADA4350s disabling the SDO pins, and only enabling the SDO pin to the ADA4350 where you'll perform the read operation. Also take note that you should write 1 in the 14th bit of the register instead of the 23rd bit stated in table 14 of the datasheet.
Let me know how it turns out Marcel457.
I built my amplifier and tested it and the SPI communication with one single device works reliably now. I think for multiple devices on the bus the steps for configuration should be as follows:
1.) disable the SDO/MISO line for all ADA4350 devices2.) write configuration to device1 and enable SDO line of device13.) read back configuration of device1 and verify it4.) disable SDO line of device1 again5.) repeat steps 2.) to 4.) for each additional ADA4350 device on the SPI bus
though I didn't test it yet. As for now I think I will go without using the SDO line at all, since anyway the only purpose is to read back and verify the written configuration. But honestly I think It would have been better to design the ADA4350 so that in SPI mode, the SDO line goes Hi-Z when the SPI slave is deselected (i.e. when the CS line is high). This would avoid this complicated procedure when using multiple devices on one bus.
Anyway, thanks again for your help!