AnsweredAssumed Answered

AD9106 Minimum Hardware Set

Question asked by husza on Jun 26, 2014
Latest reply on Jun 30, 2014 by husza

Hello,

    I am trying to build a circuit which uses the AD9106 to generate simple sine waves at frequencies less than 30kHz. I have breadboarded what I believe is a circuit with the minimum required hardware and programmed the AD9106 registers to generate output. Unfortunately, I have not observed any output. In my debugging process, I have found the following:

-DLDO1, DLDO2, and CLKDO are all 1.8V

-REFIO is approximately 1V at the terminal using the internal reference (The data sheet does not specify that AVDD2 supplies the internal band-gap reference)

-Clock source (CLKP) is 3.3V pk-pk, going from 0V to 3.3V

-CLKN drifts up to 820mV

-I have set the RUN bit in the PAT_STATUS register and observed the change of the PATTERN bit in PAT_STATUS.

-I have made sure that I have sent a RAMUPDATE message to update the registers

-I have followed the suggestions in the thread https://ez.analog.com/message/120890#120890

-The following code segment is what I have used in an attempt to generate any possible signal, even if it rails

   output_high (TRIGGER_BAR);
   set_9106_register(SPICONFIG,0x0);
   set_9106_register(POWERCONFIG,0x0);
   set_9106_register(CLOCKCONFIG,0x0);
   set_9106_register(DDS_TW32,0xFFFF);
   set_9106_register(DDS_TW1,0xFF00);
   set_9106_register(DAC1_DGAIN,0x0400);
   set_9106_register(DAC1DOF,0x8000);
   set_9106_register(DAC1_CST,0xFF00);   
   set_9106_register(DAC1RSET,0x001A);   
   set_9106_register(WAV2_1CONFIG,0x0001);
   set_9106_register(PAT_TYPE,0x00);
   set_9106_register(RAMUPDATE,0x0001);
   set_9106_register(PAT_STATUS,0x0001);
   set_9106_register(RAMUPDATE,0x0001);
   output_low(TRIGGER_BAR);

 

I have included a schematic of the circuit I have so far. My goal is to simply generate a sine wave of any frequency with an amplitude of greater than 1V. Any suggestions would be very much appreciated.

AD9106Schematic.png

Outcomes