Post Go back to editing

problem with the continous mode of AD7738

I cannot read the status and data registers in the continuous mode of AD7738. The single mode is OK. On page 23 of the data sheet in fig.12 the value of the mode register for the continuous mode is wrong. Couldn't find errata for the AD7738.Any idea?

  • Hi peterthegreat,

    Figure 12 on page 23 of the Datasheet is indeed incorrect. The value of the mode register should be 28h for continuous conversion mode.

     

    Are you using the value of 28h in your mode register?

    If so, does the problem still occur?

    Regards,

    Chris


  • Hi Chris,

    Instead of 28h I use 2Ch in the mode register, because the third bit is CONT_RD and should be “1” for the continuous mode. Still couldn’t make it respond.

    The chip enters the continuous mode but keeps pulsing the Ready line as if I don’t read the content of the data register although I write once in the communication register

    “48h” to address the data register and then read 3 bytes in a row with DIN low as prescribed by the data sheet ( the first byte should be the content of the

    Status reg. and the other 2 the real data). All I always get is ffh for all 3 bytes.

    Is there a requirement that the read of the status register should happen only AFTER the Ready bit goes low?

    Thanks for your help.

    I tried to answer in Engineering Zone but for some reason I couldn’t send the reply

    BR,

    Peter

  • Hi Chris,

    Instead of 28h I use 2Ch in the mode register, because the third bit is
    CONT_RD and should be “1” for the continuous mode. Still couldn’t make it
    respond.

    The chip enters the continuous mode but keeps pulsing the Ready line as
    if I don’t read the content of the data register although I write once in the
    communication register

    “48h” to address the data register and then read 3 bytes in a row with
    DIN low as prescribed by the data sheet ( the first byte should be the content
    of the

    Status reg. and the other 2 the real data). All I always get is ffh for all
    3 bytes.

    Is there a requirement that the read of the status register should
    happen only AFTER the Ready bit goes low?

    Thanks for your help.

    BR,

    Peter

  • Hi Peter,

    It is required that the status register should be read after /RDY pin is low. The /RDY pin goes low after the status and data registers are updated therefore a read in the status and data registers can be done.

     

    I recommend you follow this sequence:

    •          Write 2Ch to mode register (enabling continuous read mode)

    •          Wait for /RDY pin to go low

    •          Write 48h to communications register(starts continuous read mode)

    •          Read the conversion

    •          For the following conversions, there is no need to configure the communications register, just wait for /RDY to go low and start reading.

     

    Can you update me if the problem still exists? And, if possible, can you include oscilloscope screenshots of the communications registers?

    Hope this helps.

    Best Regards,

    Chris

  • Hi Chris,

    I tested also the AD7739 with the same result: good single mode and no continuous mode.

    I tried 28 in the mode register and I was able to read at least the first channel in continuous mode. With the

    Correct 2C which also sets the Continuous Read bit in the mode reg. I didn’t get any data from the chip although

    It enters the continuous mode as seen in the pictures below.

    Not sure what to do next – obviously there is something wrong with the timings in the data sheet.

    Thanks again for your attention. I highly appreciate your help!!

    Peter

    cid:image005.jpg@01CD97F1.C2690F30

    cid:image006.jpg@01CD97F1.C2690F30

    attachments.zip
  • Hi Chris,

    I think that Analog Device as a great company should release at least one Errata for the AD7738 and AD7739 to correct the

    Misleading values for the continuous mode in the pictures and in the text of the existing data sheet.

    I have one more question: do you know anyone else successfully using the continuous mode or probably

    The majority of the customers use this ADC predominantly in the single mode?

    I already sent you the scope pictures in my last e-mail and more recently I tried with 2MHZ data rate on the SPI bus.

    But nothing can make this component enter the continuous mode unfortunately.

    Best Regards,

    Peter

  • Hi Peter,

    As I was looking into the scope shots you've sent, I've found potential issues that might be the cause of the problem.

    1. When reading the status register and data register Im seeing 4 bytes written to the part on the DIN line. There should only be one byte here. This is the reason why only the first read works as the interface is now out of sync due to the 3 extra bytes written.

    2. When using the part in continuous read(continuous conversion) mode the DIN pin must be kept low. Bringing this pin high for at least 100ns will exit this mode. This is detailed in the continuous read mode section in page23 of the datasheet.

    Hope this helps.

    Best Regards,

    Chris

  • Hi Chris,

    1.       “When reading the status register and data register Im seeing 4 bytes written to the part on the DIN line”

    My answer:

    I cannot use just one byte. The first byte is for the communication register to point to the data register. Then the other 3 bytes for reading the status and data register  follow. These 4 bytes are sent after the ready bit goes low.

    2.     “When using the part in continuous read(continuous conversion) mode the DIN pin must be kept low”

    My answer:

    When I send the 3 read bytes I keep DIN low.

    Because the detail of the DIN line is not clear enough in my previous e-mail I took additional pictures which I’m sending to you as attachments to this e-mail. Basically what happens is :

    Send 3 bytes to initialize the continuous mode. These 3 bytes are: 38, 2C and 48. Then after the ready pin indicates that the first conversion is completed (the ready pin goes low) send 3 bytes zero (DIN is low) to read the

    Status register (one byte) and the data register (2 bytes). At the same time the DIN is kept low as prescribed in the data sheet while reading these 3 bytes. Unfortunately the chip doesn’t respond.

    This is exactly what the data sheet asks to be done –attached is the corresponding page of the data sheet. The only difference between the scope picture and the attached timing picture from the data sheet

    is that the ready pin never goes high after I read the status register because the chip fails for some reason.

    Take a look at the picture and if you find anything wrong with this picture let me know.

    Again many thanks for your attention and trying to help me!!

    BR,

    Peter

    attachments.zip
  • Hi Peter,

     

    What you are doing in the DIN line is practically correct, but in this configuration, we also need to consider the behavior of the /CS line.

    Can you tell us how you are configuring your /CS? If possible, can you give us the scope shot of your /CS line together with the other communications line?

    Thanks and Best Regards,

    Chris

  • Hi Chris,

    Find attached pictures with the CS line shown on the 3rd
    scope channel. I just replaced the Dout signal from my previous pictures with
    the CS, because anyway the Dout stays high all the time

    And no data is available out of the chip during the read of the
    status and data registers after the Ready line goes low.

    I’m ready to send you more pictures in order to try to help your
    investigation of the problem. Keep in mind that the single mode works fine.

    All problems are with the continuous mode.

    Thanks again . Expecting your expert help.

    BR,

    Peter

    attachments.zip