Post Go back to editing

AD9689 Vcm Export

Product Number: AD9689-2600EBZ

I'm trying to export the Vcm through the Vref pin for a DC coupled application of AD9689-2600EBZ. I was successful in doing so by changing the following registers:

Register Value
0x1908 0x4
0x18A6 0x0
0x18E6 0x0
0x18E3 0x40
0x18E3 0x4F
0x18E0 0x02
0x18E1 0x92
0x18E2 0x1E

which gave me 1.4V on Vref. However, upon capturing data using the ACE software, or running the MATLAB remote ACE command client.Run('@AsyncDataCapture("DataSet_0")') the Vref pin drops to 0V. Is this normal behavior? Do I need to write these SPI commands after every capture?

Top Replies

  •   , i believe what is happening here is that ACE overwrites some registers everytime it captures data. This is a known, albeit annoying issue. I have seen that using a acemacro seems to make things…

Parents
  •   , i believe what is happening here is that ACE overwrites some registers everytime it captures data. This is a known, albeit annoying issue. I have seen that using a acemacro seems to make things work. I have attached the macro here. You can copy paste these lines of text into a *.acemacro file, and run the macro.

    -- Analog Devices, Inc. evaluation macro file
    UI.SelectTab(tool.registerdebugger);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x0008, 0x03);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x1908, 0x04);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E0, 0x02);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E1, 0x92);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E2, 0x1E);

    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E3, 0x4F);
    @Subsystem_1.AD9689-2600EBZ.AD9689: @ReadSettings();
    UI.SelectTab(tool.macrorecorder);

Reply
  •   , i believe what is happening here is that ACE overwrites some registers everytime it captures data. This is a known, albeit annoying issue. I have seen that using a acemacro seems to make things work. I have attached the macro here. You can copy paste these lines of text into a *.acemacro file, and run the macro.

    -- Analog Devices, Inc. evaluation macro file
    UI.SelectTab(tool.registerdebugger);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x0008, 0x03);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x1908, 0x04);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E0, 0x02);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E1, 0x92);
    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E2, 0x1E);

    @Subsystem_1.AD9689-2600EBZ.AD9689: Evaluation.Control.RawWriteRegister(0x18E3, 0x4F);
    @Subsystem_1.AD9689-2600EBZ.AD9689: @ReadSettings();
    UI.SelectTab(tool.macrorecorder);

Children
No Data