Hello,
I have a ADS8548 here serially connected to a FPGA. Now I have some questions related to the digital interface, as I am not sure if I understand the datasheet correctly:
My intension is to initalize the ADC and to verify everything worked well by reading out the config register.
Can I use a common serial clock for multiple devices? That means especially: Can I use an ongoing serial clock and just synchrinizing via FS? If no, the rest of the question is obsolet.
Is it allowed that the falling edge of FS and the falling edge of SCLK appear at the same time (this is my configuration, as the FPGA uses a state machine on the raising edge)?
As I have understood (and partly verified) the device outputs the MSB at SDO_x on the falling edge of FS. On every falling edge of SCLK the data changes to the next bit. That means I need the FS edge plus 31 SCLK edges. This makes approx. 31.5 clock clycles to read a ADC word. On the other hand I need 32 falling edges to latch all 32 bits. At the moment I just do not read the final bit from SDO_x, but I am not sure if this will trouble the ADC.
If I stop the SCLK while not transmitting data, the ADC behaves as expected and returns the corrct value of the config register. If I use continuous SCLK I get not the content of the config register. Rather I get something that looks like a conversion result (potentially old). I made some screen shots from my oszilloscope of the first transfer after power-up. The channels are from 1 through 3: SCLK, FS, DIN. You see first the total transfer, then the start of if (falling edge of FS) and the ending.
Can you tell me why the device does not answer correctly?
Thanks very much
Christian Wolf