FreddyS

Problem with AD9912 programming via SPI

Discussion created by FreddyS on Jun 11, 2013
Latest reply on Jun 25, 2013 by FreddyS

1- The DDS works OK in another design with the same SPI interface.

2- No succeed to program the AD9912 in the new design.

3 Operations and settings done :

 

  1. Check every pin on voltage or GND according with the Data Sheet;
  2. Check every signal pin if is correctly connected and if receives the  right signal;
  3. Serial data was checked bit by bit vs.serial clock including timing which is very relaxing;
  4. DDS setting was written as follows:
    • CSB =1;
    • CSB =0;
    • SEND DATA 24 BITS : 0x[0000]3C----- 0 WRITE FIRST;---RESET DDS----
    • CSB =1;
    • CSB =0;
    • SEND DATA 24 BITS : 0x[0000]18;----RESET OFF---
    • CSB =1;
    • CSB =0;
    • SEND DATA 24 BITS: 0x[0010]10 ---- 100MHz  REF---;
    • CSB =1;
    • CSB =0;
    • SEND DATA 24 BITS : 0x[0005]01;----UPDATE---
    • CSB =1;
  5. Frequency was sent as follows:
    • CSB =1;
    • CSB =0;
    • SEND DATA 64 BITS : 0x[61AB]N1N2N3N4N5N6----- N1 IS MSBYTE –(6 WRITE FIRST);
    • CSB =1;
    • CSB =0;
    • SEND DATA 24 BITS : 0x[0005]01;----UPDATE---
    • CSB =1;

       The DDS was supplied by a 500MHz clock. All S inputs were on logic '1' so the DDS started with about
78MHz. All data were written with MSB first. We did not received any change in the DDS output frequency.

Sometime we've got some change that is not repeatable.

Thanks for your support.

Freddy

Outcomes