Continuous read - start and read sequence

Document created by analog-archivist Employee on Feb 23, 2016
Version 1Show Document
  • View in full screen mode

I am trying to communicate with it in 3 wire spi mode from a micorcontroller
running at 16MHz. I am using the hardware SPI to communicate with the AD7788.
My SPI clokc is running at 500KHz

I am specifically trying to use the continuous read mode ( and continuous
converision mode) on  page 16 of datasheet.

The step I go through are :-
1.       Pull CS low to enable the ADC
2.       Write 0x10 to the communications register to select the mode register
on  the next write.
3.       Write 0x06 to mode register to select unipolar mode
4.       Write 0x3c to the communications register to select continuous read
5.       Wait for falling edge of DOUT/DRDY
6.       Clock out 16 bytes split into two 8 bit transactions, DIN held low
during clock activity
7.       Go to 5.

I understand the expected behavoir of DOUT/DRDY is that it goes low to indicate
a conversion is ready and return to high while the ADC is busy.
I can confirm this if I simply pull CS low and observe the on the scope. It
shows pulses at 16.6Hz as expected.

However if I go through the above steps after sending the continuous read
command the DOUT/DRDY output is just pulled low and never returns high.
If I wait for the next falling edge of DOUT/DRDY this never occurs.


Perform a reset operation of the AD7788 after startup by applying 32 clocks of
DIN high then all access to all the registers
and continuous read mode should work as expected.