AD9257 waveform jump

Hello,

I‘ve had a problem using AD9257. I used it to acquire a sine wave, but the waveform will jump if the input exceed a value, as shown below.

The problem does not occur in all of the 8 channels. 

I made a few test boards, and each board has different error channels.

I use AD8138 as the differential Driver. I watched the differential input of AD9257 with an oscilloscope, and it is a standard sine wave.

I used the test pattern function of AD9257 to test my driver program, and I can receive the test pattern correctly.

What is the possible reason for this problem?

Appreciate all your efforts and help.

 

Thanks

Zhao

  • 0
    •  Analog Employees 
    on Oct 11, 2018 11:39 PM over 2 years ago

    Hi Zhao,

    Thank you for using the AD9257. You mentioned that the problem does not occur on all channels, and different boards show the problem on different channels. On a given board, are the problem channels the same from power-up to power-up? For example, if only Channel A is not working on one board, will it always be only Channel A that does not work?

    If you are able to post your schematic, I would be glad to look at them.

    Also, as a sanity check, please try a Digital Reset as described in the CLOCK STABILITY CONSIDERATIONS section of the AD9257 datasheet.

    SPI_Write (0x08, 0x03); # Start Digital Reset

    SPI_Write (0x08, 0x00); # Finalize Digital Reset and Return to Normal Operation

    Thank you.

    Doug

  • Hi Doug,

    I really appreciate your reply. It is indeed a problem of CLOCK STABILITY. The power of my clock is little later than AD9257's power. After a digital reset, AD9257 works properly.

    Thank you!

    Zhao

  • 0
    •  Analog Employees 
    on Oct 15, 2018 6:10 PM over 2 years ago in reply to ZhaoC

    Hi Zhao,

    You are very welcome!

    I hope your project goes well.

    Doug